Ringkasan AlloyDB Omni

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 Cloudmenggunakan komponen inti yang sama. AlloyDB menggunakan lapisan penyimpanan terpisah berbasis cloud, 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 sangat cocok untuk skenario berikut:

  • Anda memerlukan versi PostgreSQL yang skalabel dan berperforma tinggi yang harus dijalankan secara lokal karena persyaratan peraturan atau kedaulatan data.
  • Anda memerlukan database yang terus berjalan meskipun tidak terhubung ke internet.
  • Anda ingin bermigrasi dari database lama tanpa berkomitmen pada layanan cloud yang 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 Google Cloud , termasuk Vertex AI Model Garden dan alat AI generatif open source.
  • Dukungan untuk fitur autopilot dari AlloyDB untuk PostgreSQL di Google Cloud yang memungkinkan AlloyDB Omni mengelola dan menyesuaikan diri sendiri.

    Misalnya, AlloyDB Omni mendukung pengelolaan memori otomatis dan autovacuum adaptif untuk data yang tidak berlaku.

  • Columnar engine AlloyDB Omni, yang menyimpan data yang relevan dalam format kolom dalam memori untuk kueri analisis, pelaporan, dan workload pemrosesan transaksional dan analisis hybrid (HTAP) yang lebih cepat.

  • Antarmuka pengguna web AlloyDB Omni, yang memungkinkan pemantauan telemetri grafis dan audit konfigurasi untuk cluster yang Anda kelola sendiri.

Dalam pengujian performa, workload transaksional di AlloyDB Omni lebih dari 2X lebih cepat, dan kueri analisis hingga 100X lebih cepat, daripada PostgreSQL standar.

Pilihan deployment AlloyDB Omni

Di konsol Google Cloud , Anda dapat mempelajari opsi deployment, mengakses referensi pembelajaran, dan mengelola lisensi langsung dari halaman landing AlloyDB Omni:

Buka AlloyDB Omni

Halaman landing konsol menampilkan dua tab utama:

  • Opsi deployment: Menyediakan jalur dan panduan yang disesuaikan untuk menginstal AlloyDB Omni di berbagai lingkungan infrastruktur, beserta akses ke codelab dan demo AI.
  • Langganan: Memusatkan pengelolaan lisensi untuk deployment produksi. Anda dapat menghitung dan membeli lisensi berdasarkan jumlah total vCPU, menskalakan vCPU, melihat biaya, dan mengelola diskon abonemen.

Anda dapat menginstal AlloyDB Omni menggunakan salah satu opsi deployment berikut:

Opsi deployment untuk AlloyDB Omni

  • 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 orchestrator container: bagian dari container di lingkungan Kubernetes. Operator Kubernetes AlloyDB Omni adalah ekstensi untuk Kubernetes API yang memungkinkan Anda menjalankan AlloyDB Omni di sebagian besar lingkungan Kubernetes yang sesuai dengan CNCF.

    Operator AlloyDB Omni menyederhanakan operasi database dasar, sehingga Anda dapat mengotomatiskan deployment tunggal atau ketersediaan tinggi (HA) dan operasi hari ke-2 seperti pencadangan, pemulihan, failover, dan penyiapan disaster recovery (DR) lintas region.

  • AlloyDB Omni menggunakan RPM: paket mandiri yang berjalan langsung di VM atau bare metal. AlloyDB Omni yang menggunakan RPM berjalan sebagai serangkaian komponen software terintegrasi langsung di sistem operasi host. Solusi ini menggunakan sistem file Linux standar untuk penyimpanan, sehingga Anda dapat menggunakan infrastruktur penyimpanan dan praktik pengelolaan yang ada.

  • AlloyDB Omni menggunakan orchestrator RPM: 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. Solusi ini memperluas fleksibilitas seperti cloud ke infrastruktur pilihan Anda, tanpa memerlukan lapisan containerization seperti Docker.

Aplikasi Anda terhubung dan berkomunikasi dengan database AlloyDB Omni, seperti aplikasi terhubung 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 columnar engine. 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, container menawarkan keuntungan berikut:

  • Pengelolaan dependensi yang transparan: semua dependensi yang diperlukan dipaketkan 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 berbagai lingkungan.
  • Isolasi keamanan: Anda memilih apa yang dapat diakses oleh container AlloyDB Omni di mesin host.
  • Pengelolaan resource: Anda dapat menentukan jumlah resource komputasi yang ingin digunakan oleh container AlloyDB Omni.
  • Patching dan upgrade yang lancar: untuk melakukan patch pada container, ganti image yang ada dengan yang 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 non-containerized. 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 penyimpanan dan praktik pengelolaan yang ada.
  • Kesederhanaan: sangat cocok untuk penyiapan instance tunggal yang memerlukan integrasi mendalam dengan OS host, tanpa lapisan orkestrasi tambahan.

Orchestrator RPM

Opsi deployment orchestrator RPM menggunakan paket RPM yang sama dengan AlloyDB Omni yang 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 keahlian yang ada. Anda juga dapat menggunakan alat command line yang dibuat khusus.
  • Fitur Enterprise: dirancang khusus untuk mendukung ketersediaan tinggi (HA) dan disaster recovery (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 tertentu dalam periode retensi yang dapat disesuaikan. Hal ini memungkinkan Anda memulihkan data dari insiden kehilangan 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 disaster recovery lebih lanjut, Anda dapat mencapai replikasi lintas pusat data dengan membuat cluster database sekunder di pusat data terpisah. AlloyDB Omni melakukan streaming data secara asinkron dari cluster database utama yang ditetapkan ke setiap cluster sekundernya. Kapan pun diperlukan, Anda dapat mempromosikan cluster database sekunder menjadi cluster database AlloyDB Omni utama.

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.

Arsitektur AlloyDB Omni, yang menampilkan komponen khusus AlloyDB untuk PostgreSQL dan PostgreSQL.

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 berisi data yang diperlukan tidak ditemukan di kumpulan buffering, AlloyDB Omni akan membaca halaman yang diperlukan dari sistem file.

Mengakses data dari kumpulan buffer jauh lebih cepat daripada membaca dari sistem file. Memaksimalkan ukuran kumpulan buffer untuk data yang diakses aplikasi merupakan faktor penting. Anda dapat menambahkan lapisan cache yang sangat cepat untuk lebih meningkatkan performa kueri.

Pengelolaan resource

AlloyDB Omni menggunakan manajemen memori dinamis otomatis untuk memungkinkan kumpulan buffer bertambah dan berkurang secara dinamis dalam batas yang dikonfigurasi, bergantung pada permintaan memori sistem. Oleh karena itu, Anda tidak perlu menyesuaikan ukuran kumpulan buffer. Saat mendiagnosis masalah performa, pertimbangkan terlebih dahulu metrik seperti rasio hit buffer pool dan rasio baca untuk menentukan apakah aplikasi Anda mendapatkan manfaat dari buffer pool. Jika tidak, hal ini menunjukkan bahwa set data aplikasi tidak sesuai dengan kumpulan buffer, dan Anda dapat mempertimbangkan untuk mengubah ukuran ke mesin yang lebih besar dengan memori yang lebih besar.

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 pemakaian CPU di server database untuk memastikan pemakaian dalam status stabil sekitar 70%. Jumlah ini menyisakan ruang yang cukup di server untuk lonjakan penggunaan atau perubahan pola akses dari waktu ke waktu. Berjalan pada pemakaian yang mendekati 100% akan menimbulkan overhead karena penjadwalan proses dan pengalihan konteks, serta dapat menimbulkan bottleneck 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 oleh perangkat penyimpanan yang mendasarinya ke database. Agar tidak melebihi batas IOPS penyimpanan database, minimalkan pembacaan dan penulisan ke penyimpanan. Maksimalkan jumlah data yang sesuai di kumpulan buffer atau di lapisan cache.

Columnar engine

Columnar engine bawaan mempercepat pemrosesan kueri analisis yang biasanya melibatkan pemindaian tabel lengkap, penggabungan kompleks, dan agregat.

  • Penyimpanan kolom dalam memori: berisi data tabel dan tampilan terwujud 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 penyimpanan kolom, tetapkan parameter google_columnar_engine.memory_size_in_mb di postgresql.conf yang 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 columnar engine AlloyDB untuk PostgreSQL.

Manajemen memori otomatis

Pengelola memori otomatis terus memantau dan mengoptimalkan konsumsi 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 ke 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, bahkan saat workload berubah, tanpa gangguan dari proses vacuum.

Adaptive autovacuum menggunakan faktor berikut untuk menentukan frekuensi dan intensitas operasi vacuuming:

  • Ukuran database
  • Jumlah tuple mati dalam database
  • Usia data dalam database
  • Jumlah transaksi per detik versus perkiraan kecepatan vacuum
  • Memanfaatkan sumber daya

Pekerja AI/ML

Di AlloyDB Omni, worker latar belakang AI/ML menyediakan kemampuan yang diperlukan untuk memanggil model Vertex AI langsung dari database. Worker AI/ML berjalan sebagai proses yang disebut omni ml worker.

UI web

UI web opsional adalah konsol web yang dikelola sendiri yang memberi Anda kemampuan observasi ke dalam instance database Anda.

Antarmuka ini memetakan dasbor grafis untuk fitur kustom—seperti columnar engine dan integrasi endpoint model—yang tidak dapat dilacak oleh visualizer PostgreSQL open source biasa.

Selesaikan penyiapan opsional berikut untuk menginstal dan terhubung ke UI web:

Bidang kontrol orchestrator

Opsi deployment orchestrator RPM menggunakan pengelola cluster terpusat untuk mengotomatiskan operasi di seluruh cluster, termasuk bootstrap dan failover.

Antarmuka pengelolaan

Opsi deployment RPM orchestrator menyediakan utilitas command line (alloydbctl) dan peran Ansible untuk memungkinkan Anda mengelola satu atau beberapa cluster dalam skala besar.

Pengoptimalan performa

Opsi deployment RPM orchestrator mencakup dukungan terintegrasi untuk PgBouncer untuk penggabungan koneksi dan HAProxy untuk load balancing di seluruh endpoint baca-tulis dan hanya baca.

Langkah berikutnya