AlloyDB Omni adalah paket software database yang dapat didownload dan memungkinkan Anda men-deploy versi AlloyDB untuk PostgreSQL yang disederhanakan di lingkungan komputasi yang Anda kelola. AlloyDB Omni dan layanan AlloyDB yang terkelola sepenuhnya di Google Cloud berbagi komponen inti yang sama. AlloyDB menggunakan lapisan penyimpanan yang terpisah dan cloud-native, sedangkan AlloyDB Omni di-deploy di penyimpanan pilihan Anda.
Portabilitas AlloyDB Omni memungkinkan Anda menjalankannya di banyak lingkungan, termasuk:
- Pusat data pribadi Anda
- Cloud publik apa pun
- Laptop Anda
- Instance VM berbasis cloud
AlloyDB Omni menawarkan beberapa peningkatan—selain PostgreSQL standar—yang mendukung skalabilitas, ketersediaan, keandalan, performa, AI, dan bahasa alami. Untuk mengetahui informasi selengkapnya, lihat Penambahan AlloyDB Omni ke PostgreSQL standar.
Kasus penggunaan AlloyDB Omni
AlloyDB Omni cocok untuk skenario berikut:
- Anda memerlukan PostgreSQL versi berperforma tinggi dan skalabel yang harus Anda jalankan di tempat karena persyaratan peraturan atau kedaulatan data.
- Anda memerlukan database yang terus berjalan meskipun terputus dari internet.
- Anda ingin bermigrasi dari database lama tanpa berkomitmen pada layanan cloud terkelola sepenuhnya seperti AlloyDB untuk PostgreSQL.
Fitur utama
- Server database yang 100% kompatibel dengan PostgreSQL.
- Dukungan untuk AlloyDB AI, yang membantu Anda membangun aplikasi AI generatif tingkat perusahaan menggunakan data operasional Anda.
- Integrasi dengan ekosistem AI, termasuk Vertex AI Model Garden dan alat AI generatif open source. Google Cloud
Dukungan untuk fitur autopilot dari AlloyDB untuk PostgreSQL di Google Cloud yang memungkinkan AlloyDB Omni mengelola dan mengoptimalkan dirinya sendiri.
Misalnya, AlloyDB Omni mendukung pengelolaan memori otomatis dan autovakum adaptif data usang.
Columnar engine AlloyDB Omni, yang menyimpan data yang relevan dalam format kolom dalam memori untuk kueri analitis, pelaporan, dan workload pemrosesan transaksional serta analitis hybrid (HTAP) yang lebih cepat.
Dalam pengujian performa, workload transaksional di AlloyDB Omni lebih dari 2X lebih cepat, dan kueri analitis hingga 100X lebih cepat, daripada PostgreSQL standar.
Pilihan deployment AlloyDB Omni
Anda dapat menginstal AlloyDB Omni menggunakan salah satu opsi deployment berikut:

AlloyDB Omni menggunakan container: container database mandiri. Jalankan AlloyDB Omni di sistem Linux dengan penyimpanan SSD dan memori minimal 8 GB per CPU.
AlloyDB Omni menggunakan orkestrator container: bagian dari container di lingkungan Kubernetes. Operator Kubernetes AlloyDB Omni adalah ekstensi ke Kubernetes API yang memungkinkan Anda menjalankan AlloyDB Omni di sebagian besar lingkungan Kubernetes yang sesuai dengan CNCF.
Operator AlloyDB Omni menyederhanakan operasi database dasar, yang memungkinkan Anda mengotomatiskan deployment ketersediaan tinggi (HA) atau tunggal dan operasi hari ke-2 seperti pencadangan, pemulihan, failover, dan penyiapan pemulihan dari bencana (DR) lintas region.
AlloyDB Omni menggunakan RPM: paket mandiri yang berjalan langsung di VM atau bare metal. AlloyDB Omni menggunakan RPM berjalan sebagai serangkaian komponen software terintegrasi langsung di sistem operasi host. Layanan ini menggunakan sistem file Linux standar untuk penyimpanan, sehingga Anda dapat menggunakan infrastruktur penyimpanan dan praktik pengelolaan yang ada.
AlloyDB Omni menggunakan orkestrator RPM (Pratinjau): deployment Red Hat Package Manager (RPM) untuk VM atau server bare metal. Opsi ini mencakup platform orkestrasi yang mengotomatiskan deployment dan pengelolaan di lingkungan non-Kubernetes. Hal ini memperluas fleksibilitas seperti cloud ke infrastruktur pilihan Anda, tanpa memerlukan lapisan containerisasi seperti Docker.
Aplikasi Anda terhubung ke dan berkomunikasi dengan database AlloyDB Omni, seperti halnya aplikasi terhubung ke dan berkomunikasi dengan server database PostgreSQL standar. Kontrol akses pengguna juga mengandalkan standar PostgreSQL.
Anda dapat mengonfigurasi perilaku database AlloyDB Omni menggunakan flag database, termasuk logging, vacuuming, dan mesin columnar. Untuk mengetahui informasi selengkapnya, lihat Opsi download dan penginstalan AlloyDB Omni yang tersedia.
AlloyDB Omni sebagai container
Google mendistribusikan AlloyDB Omni sebagai container yang dapat Anda jalankan dengan runtime container seperti Docker dan Podman. Anda juga dapat men-deploy container AlloyDB Omni di lingkungan Kubernetes dengan banyak operasi dasar yang diotomatiskan.
Secara operasional, penampung menawarkan keuntungan berikut:
- Pengelolaan dependensi yang transparan: semua dependensi yang diperlukan dibundel dalam container dan diuji oleh Google untuk memastikan bahwa dependensi tersebut sepenuhnya kompatibel dengan AlloyDB Omni.
- Portabilitas: Anda dapat mengharapkan AlloyDB Omni beroperasi secara konsisten di seluruh lingkungan.
- Isolasi keamanan: Anda memilih akses yang dimiliki penampung AlloyDB Omni di mesin host.
- Pengelolaan resource: Anda dapat menentukan jumlah resource komputasi yang Anda inginkan untuk digunakan oleh container AlloyDB Omni.
- Patch dan upgrade yang lancar: untuk melakukan patch pada container, ganti image yang ada dengan image baru.
AlloyDB Omni di lingkungan RHEL
AlloyDB Omni menyediakan dua opsi deployment untuk lingkungan RHEL, yang bergantung pada persyaratan otomatisasi dan penskalaan Anda.
AlloyDB Omni menggunakan RPM
Opsi deployment RPM adalah penginstalan Red Hat Package Manager (RPM) mandiri yang dirancang untuk lingkungan saat Anda menginginkan database AlloyDB Omni yang tidak di-container. Opsi ini mendukung RHEL 9 dan Rocky Linux 9.
- Integrasi OS langsung: berjalan sebagai serangkaian komponen software terintegrasi langsung di sistem operasi (OS) host.
- Penyimpanan yang ada: menggunakan sistem file Linux standar (ext4 dan xfs), yang mendukung infrastruktur dan praktik pengelolaan penyimpanan yang ada.
- Kesederhanaan: cocok untuk penyiapan instance tunggal yang memerlukan integrasi mendalam dengan OS host, tanpa lapisan orkestrasi tambahan.
Orkestrator RPM
Opsi deployment pengelola RPM (Pratinjau) menggunakan paket RPM yang sama dengan AlloyDB Omni menggunakan RPM, tetapi menambahkan platform orkestrasi untuk mengotomatiskan pengelolaan di lingkungan non-Kubernetes.
- Fleksibilitas seperti cloud: memperluas otomatisasi ke infrastruktur lokal, menangani bootstrapping, failover, dan pengelolaan siklus proses.
- Framework otomatisasi: terintegrasi dengan alat populer seperti Ansible, sehingga tim dapat menggunakan set keterampilan yang ada. Anda juga dapat menggunakan alat command line khusus.
- Fitur Enterprise: dirancang khusus untuk mendukung ketersediaan tinggi (HA) dan pemulihan dari bencana (DR) melalui pengelola cluster terpusat.
Pencadangan data dan pemulihan dari bencana (disaster recovery)
AlloyDB Omni memiliki sistem pencadangan dan pemulihan berkelanjutan yang memungkinkan Anda membuat cluster database baru berdasarkan titik waktu mana pun dalam periode retensi yang dapat disesuaikan. Dengan begitu, Anda dapat memulihkan data dari kecelakaan yang menyebabkan hilangnya data.
Selain itu, AlloyDB Omni dapat membuat dan menyimpan cadangan lengkap data cluster database Anda, baik sesuai permintaan maupun sesuai jadwal rutin. Kapan saja, Anda dapat memulihkan dari cadangan ke cluster database AlloyDB Omni yang berisi semua data dari cluster database asli pada saat cadangan dibuat.
Sebagai metode pemulihan dari bencana lebih lanjut, Anda dapat mencapai replikasi lintas pusat data dengan membuat cluster database sekunder di pusat data terpisah. AlloyDB Omni secara asinkron melakukan streaming data dari cluster database primer yang ditentukan ke setiap cluster sekundernya. Jika diperlukan, Anda dapat mempromosikan cluster database sekunder menjadi cluster database AlloyDB Omni primer.
Komponen AlloyDB Omni
AlloyDB Omni terdiri dari dua set komponen arsitektur: komponen PostgreSQL dengan peningkatan AlloyDB Omni dan komponen khusus AlloyDB Omni.
Diagram berikut menunjukkan kedua set komponen, termasuk lapisan infrastruktur tempat komponen berada, dan fitur untuk setiap komponen.

Penyimpanan data
AlloyDB Omni menyimpan data dalam halaman berukuran tetap yang disimpan dalam sistem file yang mendasarinya. Saat kueri perlu mengakses data, AlloyDB Omni akan memeriksa buffer pool terlebih dahulu. Jika halaman yang menyimpan data yang diperlukan tidak ditemukan di buffer pool, AlloyDB Omni akan membaca halaman yang diperlukan dari sistem file.
Mengakses data dari pool buffer jauh lebih cepat daripada membaca dari sistem file. Memaksimalkan ukuran kumpulan buffer untuk data yang diakses aplikasi adalah faktor penting. Secara opsional, Anda dapat menambahkan lapisan cache yang sangat cepat untuk lebih meningkatkan performa kueri.
Pengelolaan resource
AlloyDB Omni menggunakan pengelolaan memori dinamis otomatis untuk memungkinkan kumpulan buffer bertambah dan berkurang secara dinamis dalam batas yang dikonfigurasi, bergantung pada permintaan memori sistem. Oleh karena itu, tidak perlu menyesuaikan ukuran pool buffer. Saat mendiagnosis masalah performa, pertama-tama pertimbangkan metrik seperti rasio hit buffer pool dan kecepatan baca untuk menentukan apakah aplikasi Anda mendapatkan manfaat dari buffer pool. Jika tidak, hal ini menunjukkan bahwa set data aplikasi tidak sesuai dengan buffer pool, dan Anda dapat mempertimbangkan untuk mengubah ukuran ke mesin yang lebih besar dengan lebih banyak memori.
Proses pengambilan, pemfilteran, penggabungan, pengurutan, dan proyeksi data semuanya memerlukan resource CPU di server database. Untuk mengurangi jumlah resource CPU yang diperlukan untuk proses ini, minimalkan jumlah data yang akan dimanipulasi. Pantau penggunaan CPU di server database untuk memastikan penggunaan steady-state sekitar 70%. Jumlah ini memberikan ruang yang cukup di server untuk lonjakan penggunaan atau perubahan pola akses dari waktu ke waktu. Menjalankan dengan pemakaian mendekati 100% akan menimbulkan overhead karena penjadwalan proses dan pengalihan konteks serta dapat menimbulkan hambatan di bagian lain sistem. Penggunaan CPU yang tinggi adalah metrik penting lainnya yang dapat digunakan saat membuat keputusan tentang spesifikasi mesin.
Operasi Input/Output Per Detik (IOPS) adalah faktor penting dalam performa aplikasi database, yang mengukur jumlah operasi input atau output per detik yang dapat diberikan perangkat penyimpanan yang mendasarinya ke database. Untuk menghindari terlampauinya batas IOPS penyimpanan database, minimalkan operasi baca dan tulis ke penyimpanan. Memaksimalkan jumlah data yang sesuai di pool buffer atau di lapisan cache.
Columnar engine
Columnar engine bawaan mempercepat pemrosesan kueri analisis yang biasanya melibatkan pemindaian tabel penuh, penggabungan yang kompleks, dan agregasi.
Penyimpanan kolom dalam memori: berisi data tabel dan tampilan materialisir untuk kolom yang dipilih dalam format berorientasi kolom. Secara default, penyimpanan kolom menggunakan 30% memori yang tersedia. Untuk mengubah jumlah memori yang dapat digunakan oleh column store, tetapkan parameter
google_columnar_engine.memory_size_in_mbdipostgresql.confyang digunakan oleh instance AlloyDB Omni Anda.Mesin eksekusi dan perencana kueri berbasis kolom: mendukung penggunaan penyimpanan kolom dalam kueri.
Untuk mengetahui informasi selengkapnya, lihat Tentang mesin columnar AlloyDB untuk PostgreSQL.
Pengelolaan memori otomatis
Pengelola memori otomatis terus memantau dan mengoptimalkan penggunaan memori di seluruh instance AlloyDB Omni. Saat Anda menjalankan workload, modul ini menyesuaikan ukuran cache buffer bersama berdasarkan tekanan memori.
Secara default, pengelola memori otomatis menetapkan batas atas hingga 80%
memori sistem dan mengalokasikan 10% memori sistem untuk cache buffer bersama.
Untuk mengubah batas atas ukuran cache buffer bersama, tetapkan parameter
shared_buffers di postgresql.conf yang digunakan oleh instance
AlloyDB Omni Anda.
Autovacuum adaptif
Autovacuum adaptif menganalisis operasi berdasarkan workload database dan secara otomatis menyesuaikan frekuensi proses vacuum. Penyesuaian otomatis ini membantu database mempertahankan performa yang optimal, meskipun beban kerja berubah, tanpa gangguan dari proses vacuum.
Adaptive autovacuum menggunakan faktor berikut untuk menentukan frekuensi dan intensitas operasi pembersihan:
- Ukuran database
- Jumlah tuple tidak aktif dalam database
- Usia data dalam database
- Jumlah transaksi per detik versus perkiraan kecepatan vacuum
- Memanfaatkan sumber daya
Pekerja AI/ML
Di AlloyDB Omni, pekerja latar belakang AI/ML menyediakan kemampuan yang diperlukan untuk memanggil model Vertex AI langsung dari database. Pekerja AI/ML berjalan sebagai proses yang disebut omni ml worker.
Bidang kontrol orkestrator
Opsi deployment pengelola RPM menggunakan pengelola cluster terpusat untuk mengotomatiskan operasi di seluruh cluster, termasuk bootstrapping dan failover.
Antarmuka pengelolaan
Opsi deployment orchestrator RPM menyediakan utilitas command line (alloydbctl) dan peran Ansible untuk mengelola satu atau beberapa cluster dalam skala besar.
Pengoptimalan performa
Opsi deployment pengelola RPM mencakup dukungan terintegrasi untuk PgBouncer untuk penggabungan koneksi dan HAProxy untuk load balancing di seluruh endpoint baca-tulis dan hanya baca.
Langkah berikutnya
Mulai menggunakan pilihan deployment AlloyDB Omni berikut: