Bagikan melalui


Mengonfigurasi untuk ketersediaan tinggi

Halaman ini menjelaskan cara mengonfigurasi instans database Lakebase untuk ketersediaan tinggi dengan mengaktifkan instans sekunder yang dapat dibaca.

Penting

Fitur ini ada di Pratinjau Umum di wilayah berikut: westus, , , westus2, eastuseastus2, centralussouthcentralus, northeurope, westeurope, , australiaeast, brazilsouth, canadacentral, , centralindia, , southeastasia, . uksouth

Untuk mengaktifkan ketersediaan tinggi, tentukan simpul tambahan sebagai bagian dari instans database. Jika komputasi utama menjadi tidak sehat atau tidak tersedia, simpul ketersediaan tinggi digunakan untuk melakukan failover, dan simpul sekunder dipromosikan ke primer.

Anda juga dapat mengaktifkan salinan sekunder yang dapat dibaca, di mana simpul ketersediaan tinggi dapat menangani beban kerja baca saja menggunakan titik akhir DNS terpisah (instance-ro-{uuid} dibandingkan dengan instance-{uuid}).

Aktifkan instans database untuk ketersediaan tinggi

Jika Anda mengatur jumlah node ketersediaan tinggi ke satu, ketersediaan tinggi dan sekunder yang dapat dibaca dinonaktifkan. Jika tidak, Anda memiliki satu simpul utama, dan sisanya adalah simpul ketersediaan tinggi. Jumlah maksimum simpul ketersediaan tinggi adalah tiga per instans database.

Tentukan jumlah simpul ketersediaan tinggi saat membuat instans database Anda. Lihat Buat instans database.

Lakukan langkah-langkah berikut untuk mengubah instans database menggunakan UI atau API.

Antarmuka Pengguna

  1. Klik Komputasi di bilah samping ruang kerja.
  2. Klik tab Instans database .
  3. Pilih instans database yang ingin Anda perbarui.
  4. Klik Edit di sudut kanan atas.
  5. Masukkan nilai untuk ukuran node kumpulan HA (termasuk primer).
  6. Aktifkan Mengaktifkan sekunder yang mudah dibaca.
  7. Kliklah Simpan.

melengkung

curl -s -X PATCH --header "Authorization: Bearer ${DATABRICKS_TOKEN}" $DBR_URL/database/instances/my-instance -d '{ “node_count”: 3, “enable_readable_secondaries” : true}'

Python SDK

from databricks.sdk import WorkspaceClient
from databricks.sdk.service.database import DatabaseInstance

# Initialize the Workspace client
w = WorkspaceClient()

# Create a database instance with high availability
instance = w.database.create_database_instance(
    DatabaseInstance(
        name="my-database-instance",
        capacity="CU_1",
        node_count=3,  # Set the number of high availability nodes (including primary)
    )
)

print(f"Created database instance: {instance.name}")
print(f"Connection endpoint: {instance.read_write_dns}")

antarmuka baris perintah (CLI)

# Create a database instance
databricks database create-database-instance my-database-instance \
  --capacity CU_1 \
  --node-count 3

Ketahanan komputasi

Dengan simpul ketersediaan tinggi yang dikonfigurasi, simpul utama instans database Anda dilindungi oleh ketersediaan tinggi. Jika simpul utama menjadi tidak tersedia, instans database secara otomatis melakukan failover ke simpul sekunder, mempromosikannya sebagai simpul utama baru. Karena simpul komputasi tanpa status, kegagalan tidak memengaruhi data Anda, dan string koneksi Anda tetap tidak berubah. Ketidaktersediaan diselesaikan dalam hitungan detik hingga menit, tergantung pada jenis kegagalan. Selama failover, koneksi aktif terputus, sehingga aplikasi Anda harus dikonfigurasi untuk menangani pemutusan singkat ini dan terhubung kembali secara otomatis.

Dalam instans database Anda, simpul sekunder juga dipulihkan secara otomatis dalam beberapa menit ketika masalah terjadi. Jika Anda mengaktifkan sekunder yang dapat diakses, Databricks menyarankan agar Anda memiliki setidaknya tiga node berkeandalan tinggi, untuk berjaga-jaga jika terjadi failover utama yang memengaruhi koneksi hanya-baca. Aplikasi Anda masih memerlukan mekanisme koneksi ulang untuk menangani waktu henti singkat.

Menjalankan kueri baca-saja dari Azure Databricks SQL Editor

Untuk menyambungkan ke sekunder yang dapat dibaca dan menjalankan kueri baca-saja dari editor Azure Databricks SQL, lihat Mengakses instans database dari editor SQL.

Keterbatasan

  • Performa membutuhkan waktu untuk pulih. Kueri awalnya mungkin berjalan lebih lambat hingga dibangun kembali karena simpul utama baru tidak memiliki data khusus sesi dan cache lokal untuk data yang sering diakses.
  • Replikasi lintas wilayah tidak didukung. Jika terjadi pemadaman di seluruh wilayah, ketersediaan tergantung pada layanan pemulihan penyedia cloud ke wilayah yang terpengaruh.