Bagikan melalui


Membuat dan mengelola instans database

Penting

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

Untuk mulai menggunakan beban kerja OLTP, buat instans database yang Disediakan Lakebase menggunakan UI Azure Databricks, panggilan API, Python SDK, atau CLI.

Membuat instans database

Buat instans database dengan default yang direkomendasikan. Anda perlu memberikan nama instans (hanya 1-63 karakter, huruf, dan tanda hubung). Sebagai pembuat, Anda adalah pemilik database dengan peran tersebut databricks_superuser .

Sebagian besar pengguna ruang kerja dapat membuat instans database secara default. Jika Anda mengalami masalah izin, lihat izin instans database.

Antarmuka Pengguna

  1. Klik Komputasi di bilah samping ruang kerja.
  2. Klik tab Lakebase Provisioned.
  3. Klik Buat instance database.
  4. Masukkan nama instans database (hanya 1-63 karakter, huruf, dan tanda hubung).
  5. Klik Buat.

Python SDK

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

# Initialize the Workspace client
w = WorkspaceClient()

# Create a database instance
instance = w.database.create_database_instance(
    DatabaseInstance(
        name="my-database-instance",
        capacity="CU_1"
    )
)

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

# Create with advanced options (using JSON for more complex parameters)
databricks database create-database-instance \
  --json '{
    "name": "my-database-instance",
    "capacity": "CU_2",
    "retention_window_in_days": 14
  }'

melengkung

Buat instans database dan tentukan jendela retensi.

export PAT=<YOUR_PAT>
export INSTANCE_NAME="instance_name"

> curl -X POST --header "Authorization: Bearer ${DATABRICKS_TOKEN}" https://[your databricks workspace]/api/2.0/database/instances \
--data-binary @- << EOF
{
  "name": "$INSTANCE_NAME",
  "capacity": "CU_1",
  "retention_window_in_days": 14
}
EOF

Pengaturan tingkat lanjut

Anda juga dapat mengonfigurasi fitur-fitur ini selama pembuatan atau setelah pembuatan dengan mengedit instans Anda:

Fitur Description
Kebijakan anggaran tanpa server Pilih kebijakan anggaran untuk instans database Anda untuk mengaitkan penggunaan dan penagihan tanpa server ke anggaran tertentu. Anda juga dapat menambahkan tag kustom.
Ukuran instans Menyesuaikan sumber daya komputasi untuk memenuhi persyaratan performa beban kerja Anda (secara default ditetapkan ke 2 CU).
Pulihkan jendela Atur periode penyimpanan (2-35 hari, default 7 hari) untuk pemulihan titik waktu.
Ketersediaan tinggi Tambahkan node failover untuk memastikan kelangsungan bisnis untuk beban kerja produksi.
Buat dari induk Buat kloning copy-on-write dari instans database yang ada.

Menghentikan atau memulai instance

Untuk menghentikan atau memulai instans database, Anda harus memiliki CAN MANAGE izin di dalamnya. Untuk menghentikan atau memulai instans, gunakan UI Azure Databricks, panggilan API, Python SDK, atau CLI.

Antarmuka Pengguna

  1. Klik Komputasi di bilah samping ruang kerja.
  2. Klik tab Lakebase Provisioned.
  3. Klik instans database yang ingin Anda hentikan atau mulai.
  4. Klik Hentikan atau Mulai di sudut kanan atas halaman.

Python SDK

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

# Initialize the Workspace client
w = WorkspaceClient()

# Stop a database instance
instance_name = "my-database-instance"
w.database.update_database_instance(
    name=instance_name,
    database_instance=DatabaseInstance(
        name=instance_name,
        stopped=True
    ),
    update_mask="*"
)
print(f"Stopped database instance: {instance_name}")

# Start a database instance
w.database.update_database_instance(
    name=instance_name,
    database_instance=DatabaseInstance(
        name=instance_name,
        stopped=False
    ),
    update_mask="*"
)
print(f"Started database instance: {instance_name}")

antarmuka baris perintah (CLI)

# Stop a database instance
databricks database update-database-instance my-database-instance \
  --json '{
    "stopped": true
  }'

# Start a database instance
databricks database update-database-instance my-database-instance \
  --json '{
    "stopped": false
  }'

melengkung

Panggilan API berikut menghentikan instans database.

-X PATCH --header "Authorization: Bearer ${DATABRICKS_TOKEN}" https://$WORKSPACE/api/2.0/database/instances/$INSTANCE_NAME \
--data-binary @- << EOF
{
  "stopped": true
}
EOF

Panggilan API berikut akan memulai instance basis data.

curl -X PATCH --header "Authorization: Bearer ${DATABRICKS_TOKEN}" https://$WORKSPACE/api/2.0/database/instances/$INSTANCE_NAME \
--data-binary @- << EOF
{
  "stopped": false
}
EOF

Perilaku ketika dihentikan

Perilaku instans database:

  • Data dipertahankan.
  • Instans tidak dapat digunakan untuk operasi baca atau tulis.
  • Tabel yang disinkronkan tidak melayani permintaan baca.
  • Lakeflow Spark Declarative Pipelines (LDP) tidak dapat mendeteksi instans yang dihentikan dan mungkin menghasilkan kesalahan.
  • Katalog terdaftar pada instans yang dihentikan tidak menampilkan detail skema di UI.

Batasan fungsi:

  • Anda tidak dapat membuat atau menghapus DatabaseTables atau DatabaseCatalogs.
  • Anda dapat menghapus atau mengubah ukuran instans yang dihentikan. Perubahan kapasitas berlaku saat instans dimulai ulang.
  • Anda dapat menghentikan alur.

Perilaku saat dimulai

  • Instans memasuki status STARTING dan menjadi AVAILABLE ketika siap.

Keterbatasan

  • LDP tidak mendeteksi instans yang dihentikan dan mungkin mengembalikan kesalahan.
  • Katalog terdaftar pada instans yang dihentikan tidak menampilkan detail skema di UI.

Menghapus instans

Berhati-hatilah saat menghapus instans database, karena itu akan menghapus semua data terkait.

Anda harus memiliki CAN MANAGE izin pada instans database. Jika Anda bukan pemilik tabel atau katalog, Anda harus menetapkan ulang kepemilikan untuk diri Anda sendiri. Admin ruang kerja dapat menghapus instans database yang tidak mereka miliki.

Databricks merekomendasikan untuk menghapus semua katalog Unity Catalog terkait, tabel yang disinkronkan, dan instans turunan sebelum menghapus instans database. Jika tidak, mencoba melihat katalog atau menjalankan kueri SQL yang mereferensikannya menghasilkan kesalahan.

Antarmuka Pengguna

  1. Klik Komputasi di bilah samping ruang kerja.
  2. Klik tab Lakebase Provisioned.
  3. Pilih instans database yang ingin Anda hapus.
  4. Klik tab Katalog untuk melihat daftar lengkap katalog database yang terkait dengan instans database.
  5. Untuk setiap katalog database, hapus semua tabel yang disinkronkan, termasuk yang terletak di katalog terkelola dan tidak terdaftar sebagai katalog database.
  6. Klik ikon menu Kebab.>Hapus katalog.

Python SDK

from databricks.sdk import WorkspaceClient

# Initialize the Workspace client
w = WorkspaceClient()

# Delete a database instance
instance_name = "my-database-instance"
w.database.delete_database_instance(
    name=instance_name,
    purge=True  # Required to delete the instance
)
print(f"Deleted database instance: {instance_name}")

# Delete with force option (to delete child instances too)
w.database.delete_database_instance(
    name=instance_name,
    force=True,  # Delete child instances too
    purge=True
)

antarmuka baris perintah (CLI)

# Delete a database instance
databricks database delete-database-instance my-database-instance \
  --purge

# Delete with force option (to delete child instances too)
databricks database delete-database-instance my-database-instance \
  --json '{
    "force": true,
    "purge": true
  }'

melengkung

purge=true harus ditentukan untuk menghapus instans database.

curl -X DELETE --header "Authorization: Bearer ${DATABRICKS_TOKEN}" https://$WORKSPACE/api/2.0/database/instances/$INSTANCE_NAME?purge=true

Memperbarui kebijakan anggaran tanpa server instans database

Kebijakan anggaran tanpa server terdiri dari tag yang diterapkan ke aktivitas komputasi tanpa server yang dikeluarkan oleh pengguna yang ditetapkan ke kebijakan. Dengan menandai instans database dengan kebijakan penggunaan, Anda dapat mengaitkan biaya penagihan dan penggunaan dengan kebijakan tertentu, sehingga lebih mudah untuk melacak, mengelola, dan mengontrol pengeluaran di seluruh sumber daya tanpa server.

Gunakan UI untuk memperbarui kebijakan anggaran instans database:

  1. Klik Komputasi di bilah samping ruang kerja.
  2. Klik tab Lakebase Provisioned.
  3. Pilih instans database yang ingin Anda perbarui kebijakan penagihannya.
  4. Klik Edit di kanan atas.
  5. Pilih kebijakan anggaran Tanpa Server.
  6. Kliklah Simpan.

Langkah selanjutnya

Batasan dan persyaratan

Bagian berikut menjelaskan batas dan persyaratan konfigurasi untuk instans database terkelola. Untuk batasan pembuatan dan penggunaan instans, lihat Batasan dan pertimbangan.

Persyaratan nama instans

  • Panjangnya harus 1 hingga 63 karakter.
  • Harus dimulai dengan surat.
  • Hanya dapat berisi karakter alfanumerik dan tanda hubung.
  • Tidak dapat menyertakan dua tanda hubung berturut-turut.