AlloyDB untuk PostgreSQL adalah layanan database yang kompatibel dengan PostgreSQL dan terkelola sepenuhnya. AlloyDB memadukan mesin database buatan Google dengan arsitektur multi-node berbasis cloud untuk memberikan performa, keandalan, dan ketersediaan tingkat perusahaan untuk aplikasi Anda yang paling menuntut.
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 rumit, termasuk:
- Pemrosesan Transaksional dan Analitis Hybrid (HTAP): menjalankan kueri analisis yang kompleks terhadap data transaksional aktif 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 tidak memerlukan pemindahan data eksternal dengan latensi tinggi.
- Workload penting untuk perusahaan: deploy aplikasi yang memerlukan tingkat performa, keandalan, dan ketersediaan tertinggi, yang didukung oleh arsitektur komputasi dan penyimpanan terpisah yang mencakup beberapa zona ketersediaan.
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: lindungi data Anda dengan pencadangan on-demand dan terjadwal otomatis, serta sistem pemulihan berkelanjutan yang memungkinkan pemulihan point-in-time.
- Ketersediaan tinggi: memastikan kelangsungan layanan melalui node redundan yang terletak di zona berbeda, dengan failover otomatis di antara keduanya.
- Pengelolaan resource: mengoptimalkan performa dan efisiensi dengan sistem yang otomatis mengalokasikan dan merilis memori serta penyimpanan sesuai kebutuhan.
- Pengoptimalan kueri: tingkatkan performa database menggunakan index advisor yang menyarankan peningkatan skema dan columnar engine yang mempercepat kueri analisis.
- Keamanan dan enkripsi: lindungi data dalam penyimpanan menggunakan Google-owned and Google-managed encryption keys atau kunci enkripsi yang dikelola pelanggan (CMEK), dan kelola 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 tetap 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 psql dan pgAdmin, untuk menggunakan database Anda.
Harga AlloyDB
AlloyDB menggunakan model harga berbasis konsumsi, yang berarti Anda akan ditagih untuk resource yang Anda gunakan. Harga AlloyDB bervariasi berdasarkan setelan konfigurasi Anda dan bergantung pada faktor-faktor berikut:
- Resource instance: jenis mesin (jumlah vCPU dan jumlah RAM) yang dipilih untuk instance utama dan instance kumpulan baca Anda.
- Penyimpanan: jumlah data yang disimpan di lapisan penyimpanan fleksibel cluster Anda.
- Jaringan: jumlah traffic egress jaringan dari instance Anda.
Untuk mengetahui informasi yang lebih mendetail, lihat Harga AlloyDB untuk PostgreSQL.
Cara kerja AlloyDB
Aplikasi terhubung ke instance AlloyDB menggunakan protokol PostgreSQL standar.
Di balik layar, AlloyDB menggunakan arsitektur terdisagregasi dan hierarki resource yang dirancang untuk memaksimalkan ketersediaan dan performa.
Perbedaan arsitektur dari PostgreSQL standar
PostgreSQL tradisional menggabungkan mesin database yang memproses kueri dengan penyimpanan di server yang sama. AlloyDB menggunakan arsitektur terdisagregasi, 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: cluster berisi satu atau beberapa instance. Instance menyediakan titik koneksi untuk aplikasi Anda.
- Node: instance didukung oleh satu atau beberapa node. Node adalah virtual machine (VM) yang dikhususkan untuk menjalankan mesin database.
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 mengarahkan 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 ketersediaan tinggi (HA) atau dasar.
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 untuk lingkungan non-produksi yang tidak memerlukan ketersediaan tinggi. Instance dasar hanya memiliki satu node, tanpa node standby. 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 hingga total 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 utama AlloyDB.
Fitur database otomatis dan adaptif
Mesin database yang sepenuhnya kompatibel dengan PostgreSQL yang mendukung setiap node AlloyDB memiliki beberapa fitur yang terus menganalisis struktur dan frekuensi kueri yang ditangani instance Anda, menggunakan informasi ini untuk menyarankan peningkatan skema atau menerapkan pengoptimalan 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 dari 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 secara opsional menggunakan instance utama zona tunggal dasar.
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 titik waktu tertentu dalam periode retensi yang dapat disesuaikan. Hal ini memungkinkan Anda pulih dengan cepat 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 melakukan streaming 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 kunci CMEK untuk mengenkripsi semua data yang ditulis ke cluster tersebut.
CMEK juga berlaku untuk pencadangan. Anda dapat menentukan kunci CMEK saat membuat cadangan 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 dirancang agar tidak mengganggu. Hal ini dilakukan dengan menyiapkan server pengganti dan menukarnya dengan cepat dengan server aktif saat siap. Selama proses ini, instance utama biasanya mengalami periode nonaktif kurang dari satu detik, sementara kumpulan baca tetap tersedia secara terus-menerus. Semua koneksi aktif ke database akan terputus sesaat, 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 serangkaian fitur AI dan ML langsung ke dalam 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 berbagai sistem, 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:
vector(versipgvectoryang disesuaikan untuk AlloyDB AI): menyimpan dan mengindeks embedding vektor untuk penelusuran semantik. Mendukung pengoperasian kueri hybrid dan penelusuran kemiripan. Untuk mulai menggunakan penelusuran vektor, lihat Melakukan penelusuran vektor.alloydb_scann: menyediakan penelusuran perkiraan tetangga terdekat berperforma tinggi dengan menerapkan indeks tetangga terdekat yang sangat efisien dan didukung oleh algoritma ScaNN. Untuk mengetahui informasi selengkapnya, lihat Membuat indeks ScaNN.google_ml_integration: memberikan akses ke fungsi AI, yang memungkinkan pemanggilan model ML dari AlloyDB untuk tugas-tugas seperti pembuatan embedding, peringkat semantik, filter dan gabungan berbasis AI, serta pembuatan dan perangkuman teks. Pengelolaan endpoint model memungkinkan pendaftaran dan pemanggilan model AI, termasuk model eksternal oleh OpenAI atau Anthropic. Untuk mengetahui informasi selengkapnya, lihat Mendaftarkan endpoint model dan Mengevaluasi kueri semantik dengan operator AI.alloydb_ai_nl: Memungkinkan interaksi dengan database Anda menggunakan bahasa alami. Fitur ini memungkinkan developer aplikasi membuat kueri SQL yang akurat dan aman sebagai respons terhadap pertanyaan natural language 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, codelab, dan mengelola langganan di konsolGoogle Cloud , buka halaman konsol AlloyDB Omni.
Untuk mengetahui informasi selengkapnya, lihat Ringkasan AlloyDB Omni.