AlloyDB untuk PostgreSQL adalah layanan database yang kompatibel dengan PostgreSQL dan terkelola sepenuhnya. AlloyDB menghubungkan mesin database yang dibangun Google dengan arsitektur multi-node berbasis cloud untuk memberikan performa, keandalan, dan ketersediaan tingkat perusahaan untuk aplikasi Anda yang paling menuntut.
Untuk pembuatan prototipe, pengembangan, dan pengujian yang cepat dengan agen coding, mulailah dengan konfigurasi AlloyDB Express (Pratinjau), yang menyediakan penyediaan cepat, penskalaan hingga nol komputasi, dan upgrade sekali klik ke AlloyDB yang siap produksi. Untuk mengetahui informasi selengkapnya, lihat Ringkasan AlloyDB Express.
Kasus penggunaan AlloyDB
AlloyDB menyediakan alternatif yang skalabel untuk PostgreSQL standar yang dikelola sendiri. Gunakan AlloyDB jika Anda ingin menghabiskan lebih sedikit waktu untuk mengelola infrastruktur dan lebih banyak waktu untuk membangun aplikasi.
AlloyDB dirancang untuk workload yang menuntut, termasuk hal berikut:
- Pemrosesan Transaksional dan Analitis Hybrid (HTAP): menjalankan kueri analisis yang kompleks terhadap data transaksional live Anda tanpa memengaruhi performa atau ketersediaan.
- Aplikasi AI dengan latensi rendah: bangun aplikasi AI generatif menggunakan AlloyDB AI, yang mengintegrasikan penelusuran vektor dan pemanggilan model machine learning langsung ke dalam mesin database, sehingga menghilangkan kebutuhan akan pemindahan data eksternal dengan latensi tinggi.
- Workload penting tingkat perusahaan: deploy aplikasi yang memerlukan tingkat performa, keandalan, dan ketersediaan tertinggi, yang didukung oleh arsitektur komputasi dan penyimpanan terpisah yang mencakup beberapa zona ketersediaan.
- Pembuatan prototipe dan alur kerja yang menggunakan agen coding AI: gunakan AlloyDB Express untuk membuat database untuk pengembangan dan pengujian. Saat database Anda tidak ada aktivitas, komputasi akan diperkecil skalanya menjadi nol, dan Anda tidak akan ditagih untuk komputasi.
Yang disediakan AlloyDB
AlloyDB menawarkan banyak layanan sehingga Anda tidak perlu membuat dan mengurusnya sendiri. Anda dapat berfokus pada data dan biarkan AlloyDB menangani operasi berikut:
- Pencadangan: melindungi data Anda dengan pencadangan on-demand dan terjadwal otomatis, serta sistem pemulihan berkelanjutan yang memungkinkan pemulihan point-in-time.
- Ketersediaan tinggi: memastikan kontinuitas layanan melalui node redundan yang terletak di berbagai zona, dengan failover otomatis di antara node tersebut.
- Pengelolaan resource: optimalkan performa dan efisiensi dengan sistem yang mengalokasikan dan merilis memori serta penyimpanan secara otomatis sesuai kebutuhan.
- Pengoptimalan kueri: meningkatkan performa database menggunakan index advisor yang menyarankan peningkatan skema dan columnar engine yang mempercepat kueri analisis.
- Keamanan dan enkripsi: melindungi data dalam penyimpanan menggunakan Google-owned and Google-managed encryption keys atau kunci enkripsi yang dikelola pelanggan (CMEK), dan mengelola akses menggunakan Identity and Access Management (IAM) terintegrasi.
Administrasi database
AlloyDB mengelola infrastruktur dasar database Anda, seperti pencadangan otomatis, patch keamanan, dan alokasi resource. Namun, AlloyDB bukanlah alat administrasi database mandiri. Anda masih memerlukan alat administratif untuk mengelola skema, data, dan pengguna dalam database Anda.
Anda dapat menggunakan alat berikut untuk terhubung ke dan mengelola database:
- AlloyDB Studio: alat berbasis web yang di-build langsung ke dalam konsol Google Cloud yang memungkinkan Anda menjelajahi dan mengelola data menggunakan antarmuka SQL interaktif.
- Klien PostgreSQL: karena AlloyDB sepenuhnya kompatibel dengan PostgreSQL, Anda dapat menggunakan klien administratif standar dan alat command line, seperti
psqldan pgAdmin, untuk menggunakan database Anda.
Cara kerja AlloyDB
Aplikasi terhubung ke instance AlloyDB menggunakan protokol PostgreSQL standar.
AlloyDB menggunakan arsitektur terpisah dan hierarki resource yang dirancang untuk memaksimalkan ketersediaan dan performa.
Perbedaan arsitektur dari PostgreSQL standar
PostgreSQL standar menggabungkan mesin database yang memproses kueri dengan penyimpanan di server yang sama. AlloyDB menggunakan arsitektur terpisah, dengan lapisan komputasi dan penyimpanan yang terpisah dan diskalakan secara independen.
- Komputasi: virtual machine, atau node, yang memproses kueri Anda.
- Penyimpanan: mesin penyimpanan terdistribusi berbasis cloud yang mempertahankan data Anda di beberapa zona ketersediaan dan diskalakan secara otomatis seiring pertumbuhan data Anda.
Hierarki resource AlloyDB
AlloyDB mengatur resource-nya ke dalam tiga level: cluster, instance, dan node.
Diagram berikut mengilustrasikan hierarki resource AlloyDB, yang menampilkan cluster yang diskalakan dengan instance utama dan beberapa instance kumpulan baca yang di-load balance:
- Cluster: resource tingkat teratas yang berfungsi sebagai container logis untuk database, log, dan metadata lainnya dalam suatu region. Anda dapat membuat beberapa cluster dalam project dan region yang sama.
- Instance: titik koneksi untuk aplikasi Anda. Cluster berisi satu atau beberapa instance.
- Node: virtual machine (VM) yang dikhususkan untuk menjalankan mesin database. Satu atau beberapa node mendukung setiap instance.
Apa yang dimaksud dengan instance AlloyDB?
Instance AlloyDB adalah titik akses untuk database Anda. Setiap instance memiliki alamat IP pribadi statis di jaringan Virtual Private Cloud (VPC) Anda. Saat aplikasi Anda mengirim kueri ke alamat IP ini, instance akan merutekan permintaan ke node yang mendasarinya untuk diproses.
AlloyDB menggunakan dua jenis instance:
Instance utama: memberikan akses baca dan tulis ke data Anda. Setiap cluster memiliki tepat satu instance utama. Instance utama dapat berupa instance dengan ketersediaan tinggi (HA) atau dasar.
Instance dengan tingkat ketersediaan tinggi: berisi dua node, yaitu node aktif dan node standby, yang terletak di zona berbeda untuk failover otomatis.
Instance dasar: berisi satu node tanpa node standby, untuk lingkungan non-produksi yang tidak memerlukan ketersediaan tinggi. Untuk mengetahui informasi selengkapnya, lihat Mengurangi biaya menggunakan instance dasar.
Instance kumpulan baca: menyediakan akses hanya baca untuk menskalakan workload Anda. Anda dapat menambahkan satu atau beberapa instance kumpulan baca, yang masing-masing berisi total hingga 20 node di seluruh cluster. AlloyDB otomatis melakukan load balancing permintaan di seluruh node dalam kumpulan baca.
Fitur utama
AlloyDB membedakan dirinya dari penginstalan PostgreSQL standar dalam sejumlah cara selain keunggulan penskalaan vertikal dan horizontal yang melekat pada arsitektur multi-node yang dijelaskan sebelumnya. Bagian berikut membahas lebih dalam fitur-fitur utama AlloyDB.
Fitur database otomatis dan adaptif
Mesin database yang sepenuhnya kompatibel dengan PostgreSQL yang mendukung setiap node AlloyDB terus menganalisis struktur dan frekuensi kueri Anda. Mesin database menggunakan informasi ini untuk menyarankan peningkatan skema atau menerapkan pengoptimalan berikut secara otomatis:
Index advisor membantu Anda menemukan peluang untuk mengoptimalkan skema database menggunakan indeks baru berdasarkan pola penggunaan Anda.
Columnar engine dapat mempercepat performa kueri analisis dengan menyimpan data dalam memori menggunakan format berbasis kolom. Hal ini memungkinkan AlloyDB menggunakan teknik pemrosesan lanjutan untuk memindai data tabel dalam jumlah besar secara efisien saat diperlukan.
Variasi adaptif fitur autovacuum data usang PostgreSQL secara otomatis menyesuaikan parameter terkait vacuum agar paling sesuai dengan bentuk workload Anda.
Sistem pengelolaan memori dan penyimpanan otomatis memanfaatkan lingkungan berbasis cloud buatan Google yang menjalankan AlloyDB, yang terus mengalokasikan dan merilis memori dan penyimpanan sesuai kebutuhan agar cluster Anda tetap berjalan dengan performa dan efisiensi resource yang optimal.
Ketersediaan tinggi
Secara default, cluster AlloyDB menawarkan ketersediaan tinggi (HA) melalui node redundan instance utamanya, yang terletak di dua zona berbeda, dengan failover otomatis.
Cluster yang beroperasi di lingkungan non-produksi yang tidak memerlukan HA dapat menggunakan instance utama zona tunggal dasar sebagai gantinya.
Menambahkan instance kumpulan baca yang berisi setidaknya dua node akan membuat titik akses ketersediaan tinggi, multi-zona, dan load balanced lebih lanjut ke data Anda. Semua instance kumpulan baca berjalan secara independen dari instance utama.
Untuk mengetahui informasi selengkapnya tentang pertimbangan spesifik per region, lihat Geografi dan region.
Pencadangan data dan pemulihan dari bencana (disaster recovery)
AlloyDB memiliki sistem pencadangan dan pemulihan berkelanjutan yang memungkinkan Anda membuat cluster baru berdasarkan point-in-time dalam periode retensi yang dapat disesuaikan. Dengan begitu, Anda dapat memulihkan data dari insiden kehilangan data.
Selain itu, AlloyDB dapat membuat dan menyimpan cadangan lengkap data cluster Anda, baik sesuai permintaan maupun sesuai jadwal rutin. Kapan saja, Anda dapat memulihkan dari cadangan ke cluster AlloyDB baru yang berisi semua data dari cluster asli pada saat pembuatan cadangan.
Untuk mengetahui informasi selengkapnya, lihat Tentang pencadangan.
Sebagai metode disaster recovery lebih lanjut, Anda dapat mencapai replikasi lintas region dengan membuat cluster sekunder di region Google Cloudyang terpisah. AlloyDB mengalirkan data secara asinkron dari cluster utama yang ditetapkan ke setiap cluster sekundernya. Kapan saja, Anda dapat mempromosikan cluster sekunder menjadi cluster utama, atau melakukan failover lintas region (Pratinjau) untuk mempertahankan topologi replikasi secara otomatis selama pemadaman layanan.
Untuk mengetahui informasi selengkapnya, lihat Tentang replikasi lintas region.
Kontrol keamanan dan akses
Anda dapat mengonfigurasi cluster agar memerlukan koneksi dengan Proxy Auth AlloyDB yang aman, yang menggunakan IAM untuk kontrol akses. Untuk mengetahui informasi selengkapnya, lihat Otorisasi.
AlloyDB menggunakan sistem peran pengguna PostgreSQL standar untuk autentikasi, yang memperkenalkan beberapa peran tambahan khusus untuk AlloyDB. Untuk mengetahui informasi selengkapnya, lihat Mengelola peran pengguna AlloyDB.
Enkripsi
AlloyDB melindungi semua data dalam penyimpanan menggunakan Google-owned and Google-managed encryption keys secara default. Jika Anda perlu mengenkripsi data menggunakan kunci yang Anda berikan, Anda dapat menentukan kunci enkripsi yang dikelola pelanggan (CMEK) saat membuat cluster. AlloyDB kemudian menggunakan CMEK untuk mengenkripsi semua data yang ditulis ke cluster tersebut.
CMEK juga berlaku untuk cadangan. Anda dapat menentukan CMEK saat membuat pencadangan on-demand, mengonfigurasi jadwal pencadangan, atau memulihkan dari cadangan.
Untuk mengetahui informasi selengkapnya, lihat Tentang CMEK.
Pemeliharaan dan update
Selama masa pakai cluster AlloyDB, ada dua jenis update yang akan muncul:
- Update sistem: Google secara berkala melakukan update sistem untuk memastikan bahwa hardware dan software yang mendasarinya dapat diandalkan, aman, dan berperforma optimal. Update ini mencakup patch keamanan, upgrade sistem operasi, dan update versi server PostgreSQL minor.
- Update konfigurasi: ini adalah perubahan yang Anda lakukan secara manual pada cluster atau instance untuk memenuhi permintaan workload yang berubah. Contohnya termasuk mengubah ukuran jumlah vCPU dan memori instance atau mengubah flag database.
Operasi pemeliharaan AlloyDB tidak mengganggu. AlloyDB menyiapkan server pengganti dan menukarnya dengan server aktif jika sudah siap. Selama proses ini, instance utama biasanya mengalami periode nonaktif kurang dari satu detik, sedangkan kumpulan baca tetap tersedia secara terus-menerus. Pertukaran ini akan menghentikan koneksi database aktif untuk sementara, tetapi Anda dapat terus menggunakan database secara normal selama proses berlangsung.
Untuk menerapkan update flag lebih cepat meskipun menyebabkan periode nonaktif yang lebih lama, Anda dapat menggunakan
mode update FORCE_APPLY.
AlloyDB AI
AlloyDB AI mengintegrasikan rangkaian fitur AI dan ML langsung ke database AlloyDB Anda. Secara historis, membangun aplikasi AI memerlukan pipeline data dan proses ETL yang kompleks untuk memindahkan data dari database operasional ke platform AI/ML khusus. Metode ini menimbulkan tantangan seperti peningkatan latensi dari transfer data, overhead operasional yang lebih tinggi dari pengelolaan sistem yang berbeda, dan penyimpanan duplikat. Dengan mengintegrasikan kemampuan AI langsung ke dalam database, AlloyDB AI menghilangkan kebutuhan akan pemindahan data eksternal yang ekstensif.
Untuk memfasilitasi pengembangan aplikasi AI, AlloyDB AI menyediakan ekstensi berikut:
- Ekstensi
vector(versipgvectoryang disesuaikan untuk AlloyDB AI): menyimpan dan mengindeks embedding vektor untuk penelusuran semantik, serta mendukung kueri campuran dan penelusuran kemiripan. Untuk mulai menggunakan penelusuran vektor, lihat Melakukan penelusuran vektor. - Ekstensi
alloydb_scann: menyediakan penelusuran perkiraan tetangga terdekat berperforma tinggi dengan menerapkan indeks tetangga terdekat yang sangat efisien yang didukung oleh algoritma ScaNN. Untuk mengetahui informasi selengkapnya, lihat Membuat indeks ScaNN. - Ekstensi
google_ml_integration: memberikan akses ke fungsi AI, yang memungkinkan Anda memanggil model ML dari AlloyDB untuk tugas seperti membuat embedding, peringkat semantik, filter dan join berbasis AI, serta pembuatan dan peringkasan teks. Pengelolaan endpoint model memungkinkan Anda mendaftarkan dan memanggil model AI, termasuk model eksternal dari OpenAI atau Anthropic. Untuk mengetahui informasi selengkapnya, lihat Mendaftarkan endpoint model dan Mengevaluasi kueri semantik dengan operator AI. - Ekstensi
alloydb_ai_nl: memungkinkan Anda berinteraksi dengan database menggunakan bahasa alami. Dengan fitur ini, developer aplikasi dapat membuat kueri SQL yang akurat dan aman sebagai respons terhadap pertanyaan bahasa alami pengguna akhir, sehingga pengguna non-SQL dapat mengakses data. Untuk mengetahui informasi selengkapnya, lihat Ringkasan bahasa alami.
Untuk mengetahui daftar kasus penggunaan kemampuan AlloyDB AI, lihat Membangun aplikasi AI generatif.
Dukungan ekstensi
AlloyDB menyertakan dukungan untuk sejumlah ekstensi PostgreSQL populer. Untuk mengetahui daftar lengkapnya, lihat Ekstensi database yang didukung.
Alternatif yang dihosting sendiri: AlloyDB Omni
Sebagai alternatif untuk menjalankan AlloyDB dalam Google Cloud, Google menawarkan AlloyDB Omni. Edisi AlloyDB yang disederhanakan dan dapat didownload ini memungkinkan Anda menjalankan mesin database yang canggih di lingkungan komputasi berbasis Linux Anda sendiri, di mana pun itu.
Untuk mempelajari opsi deployment dan codelab, serta mengelola langganan di konsolGoogle Cloud , buka halaman konsol AlloyDB Omni.
Untuk mengetahui informasi selengkapnya, lihat Ringkasan AlloyDB Omni.
AlloyDB Express untuk agen pembuatan prototipe dan coding
AlloyDB Express adalah konfigurasi di AlloyDB untuk pembuatan prototipe, pengembangan, pengujian, dan alur kerja yang cepat menggunakan agen coding AI. AlloyDB Express menyediakan fitur berikut:
- Penyediaan cepat: instance siap menerima koneksi dalam waktu sekitar 2 detik untuk DNS publik dan dalam waktu 20 detik untuk endpoint Private Service Connect.
- Penskalaan hingga nol komputasi: instance yang tidak ada aktivitas akan diperkecil skalanya hingga nol komputasi, sehingga Anda tidak akan ditagih untuk komputasi selama periode tidak ada aktivitas.
- Konektivitas Private Service Connect dan DNS publik: Anda dapat terhubung ke instance dari jaringan VPC melalui endpoint Private Service Connect, atau dari klien di luar jaringan VPC menggunakan DNS publik.
- Upgrade langsung ke AlloyDB: Anda dapat mengupgrade cluster AlloyDB Express ke AlloyDB dengan sekali klik.
Untuk mengetahui informasi selengkapnya, lihat Ringkasan AlloyDB Express.