Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Penting
Fitur ini ada di Pratinjau Umum di wilayah berikut: westus, , , westus2, eastuseastus2, centralussouthcentralus, northeurope, westeurope, , australiaeast, brazilsouth, canadacentral, , centralindia, , southeastasia, . uksouth
Halaman ini menjelaskan cara membuat dan mengelola tabel yang disinkronkan. Tabel yang disinkronisasi adalah tabel Postgres baca-saja Unity Catalog yang secara otomatis menyinkronkan data dari tabel Unity Catalog ke instans database Lakebase Anda. Menyinkronkan tabel Unity Catalog ke Postgres memungkinkan kueri baca latensi rendah dan mendukung gabungan waktu kueri dengan tabel Postgres lainnya.
Sinkronisasi ditangani oleh Alur Deklaratif Lakeflow Spark. Alur terkelola terus memperbarui tabel Postgres dengan perubahan dari tabel sumber. Setelah pembuatan, tabel yang disinkronkan dapat dikueri langsung menggunakan alat Postgres.
Karakteristik utama tabel yang disinkronkan adalah sebagai berikut:
- Baca-saja di Postgres untuk menjaga integritas data dengan sumber
- Secara otomatis disinkronkan menggunakan Alur Deklaratif Lakeflow Spark terkelola
- Dapat dikueri melalui antarmuka PostgreSQL standar
- Dikelola melalui Unity Catalog untuk tata kelola dan manajemen siklus hidup
Sebelum Anda mulai
- Anda memiliki tabel Unity Catalog di katalog apa pun.
- Anda memiliki
CAN USEizin pada instans database.
Membuat tabel yang disinkronkan
Antarmuka Pengguna
Untuk menyinkronkan tabel Unity Catalog ke Postgres, lakukan hal berikut:
Klik Katalog di bilah sisi ruang kerja.
Temukan dan pilih tabel Katalog Unity tempat Anda ingin membuat tabel yang disinkronkan.
Klik Buat>tabel Yang Disinkronkan.
Pilih katalog, skema, dan masukkan nama tabel untuk tabel baru yang disinkronkan.
- Tabel yang disinkronkan juga dapat dibuat di katalog Standar, dengan beberapa konfigurasi tambahan. Pilih katalog Standar Anda, sebuah skema, dan masukkan nama tabel untuk tabel yang baru disinkronkan dan dibuat.
Pilih instans database dan masukkan nama database Postgres untuk membuat tabel yang disinkronkan. Bidang database Postgres secara default ke katalog target yang dipilih saat ini. Jika database Postgres tidak ada di bawah nama ini, Azure Databricks akan membuat database baru.
Pilih Kunci Primer. Kunci primer diperlukan karena memungkinkan akses efisien ke baris untuk dibaca, diperbarui, dan dihapus.
Penting
Kolom di kunci primer tidak dapat bernilai null dalam tabel yang disinkronkan. Oleh karena itu, baris dengan null di kolom kunci utama dikecualikan dari sinkronisasi.
Jika dua baris memiliki kunci utama yang sama dalam tabel sumber, pilih Kunci Timeseries untuk mengonfigurasi deduplikasi. Saat Kunci Timeseries ditentukan, tabel yang disinkronkan hanya berisi baris dengan nilai kunci timeseries terbaru untuk setiap kunci utama.
Pilih mode sinkronisasi dari Rekam Jepret, Dipicu, dan Berkelanjutan. Untuk informasi selengkapnya tentang setiap mode sinkronisasi, lihat Mode sinkronisasi yang dijelaskan.
Pilih apakah Anda ingin membuat tabel yang disinkronkan ini dari alur baru atau yang sudah ada.
- Jika membuat alur baru dan menggunakan katalog terkelola, pilih lokasi penyimpanan untuk tabel penahapan. Jika menggunakan katalog standar, tabel penahapan secara otomatis disimpan dalam katalog.
- Jika menggunakan alur yang ada, periksa apakah mode sinkronisasi baru cocok dengan mode alur.
(Opsional) Pilih kebijakan anggaran Tanpa Server. Untuk membuat kebijakan anggaran tanpa server, lihat Penggunaan atribut dengan kebijakan anggaran tanpa server. Ini memungkinkan Anda untuk mengaitkan penggunaan penagihan ke kebijakan penggunaan tertentu.
- Untuk tabel yang disinkronkan, entitas yang dapat ditagih adalah alur Alur Deklaratif Lakeflow Spark yang mendasar. Untuk mengubah kebijakan anggaran, ubah objek pipeline yang mendasar. Lihat Mengonfigurasi alur tanpa server.
Setelah Status tabel yang disinkronkan adalah Online, masuk ke instans database Anda dan kueri tabel yang baru dibuat. Kueri tabel Anda menggunakan editor SQL, alat eksternal, atau buku catatan.
Python SDK
from databricks.sdk import WorkspaceClient
from databricks.sdk.service.database import SyncedDatabaseTable, SyncedTableSpec, NewPipelineSpec, SyncedTableSchedulingPolicy
# Initialize the Workspace client
w = WorkspaceClient()
# Create a synced table in a database catalog
synced_table = w.database.create_synced_database_table(
SyncedDatabaseTable(
name="database_catalog.schema.synced_table", # Full three-part name
spec=SyncedTableSpec(
source_table_full_name="source_catalog.source_schema.source_table",
primary_key_columns=["id"], # Primary key columns
scheduling_policy=SyncedTableSchedulingPolicy.TRIGGERED, # SNAPSHOT, TRIGGERED, or CONTINUOUS
# Optional: timeseries_key="timestamp" # For deduplication
new_pipeline_spec=NewPipelineSpec(
storage_catalog="storage_catalog",
storage_schema="storage_schema"
)
),
)
)
print(f"Created synced table: {synced_table.name}")
# Create a synced table in a standard UC catalog
synced_table = w.database.create_synced_database_table(
SyncedDatabaseTable(
name="standard_catalog.schema.synced_table", # Full three-part name
database_instance_name="my-database-instance", # Required for standard catalogs
logical_database_name="postgres_database", # Required for standard catalogs
spec=SyncedTableSpec(
source_table_full_name="source_catalog.source_schema.source_table",
primary_key_columns=["id"],
scheduling_policy=SyncedTableSchedulingPolicy.CONTINUOUS,
create_database_objects_if_missing=True, # Create database/schema if needed
new_pipeline_spec=NewPipelineSpec(
storage_catalog="storage_catalog",
storage_schema="storage_schema"
)
),
)
)
print(f"Created synced table: {synced_table.name}")
# Check the status of a synced table
synced_table_name = "database_catalog.schema.synced_table"
status = w.database.get_synced_database_table(name=synced_table_name)
print(f"Synced table status: {status.data_synchronization_status.detailed_state}")
print(f"Status message: {status.data_synchronization_status.message}")
antarmuka baris perintah (CLI)
# Create a synced table in a database catalog
databricks database create-synced-database-table \
--json '{
"spec": {
"name": "database_catalog.schema.synced_table",
"source_table_full_name": "source_catalog.source_schema.source_table",
"primary_key_columns": ["id"],
"scheduling_policy": "TRIGGERED"
},
"new_pipeline_spec": {
"storage_catalog": "storage_catalog",
"storage_schema": "storage_schema"
}
}'
# Create a synced table in a standard UC catalog
# new_pipeline_spec, storage_catalog, and storage_schema are optional
databricks database create-synced-database-table \
--database-instance-name "my-database-instance" \
--logical-database-name "databricks_postgres" \
--json '{
"name": "standard_catalog.schema.synced_table",
"spec": {
"source_table_full_name": "source_catalog.source_schema.source_table",
"primary_key_columns": ["id"],
"scheduling_policy": "CONTINUOUS",
"create_database_objects_if_missing": true
}
}'
# Check the status of a synced table
databricks database get-synced-database-table "database_catalog.schema.synced_table"
melengkung
Buat tabel yang disinkronkan dalam katalog database.
export CATALOG_NAME=<Database catalog>
export SRC_TBL="source_catalog.source_schema.source_table"
export DEST_TBL="$CATALOG_NAME.some_schema.synced_table"
export PKS='["id"]'
export ST_CATALOG = "storage_catalog"
export ST_SCHEMA = "storage_schema"
curl -X POST https://$WORKSPACE/api/2.0/database/synced_tables \
-H "Content-Type: text/json" \
-H "Authorization: Bearer ${DATABRICKS_TOKEN}" \
--data-binary @- << EOF
{
"name": "$DEST_TBL",
"spec": {
"source_table_full_name": "$SRC_TBL",
"primary_key_columns": $PKS,
"scheduling_policy": "TRIGGERED",
},
"new_pipeline_spec": {
"storage_catalog": "$ST_CATALOG",
"storage_schema": "$ST_SCHEMA",
}
}
EOF
Buat tabel yang disinkronkan di katalog Unity Catalog standar.
export CATALOG_NAME=<Standard catalog>
export DATABASE_INSTANCE=<database instance>
export POSTGRES_DATABASE=$CATALOG_NAME
export SRC_TBL="source_catalog.source_schema.source_table"
export DEST_TBL="$CATALOG_NAME.some_schema.sync_table"
export PKS='["id"]'
export ST_CATALOG = "storage_catalog"
export ST_SCHEMA = "storage_schema"
curl -X POST https://$WORKSPACE/api/2.0/database/synced_tables \
-H "Content-Type: text/json" \
-H "Authorization: Bearer ${DATABRICKS_TOKEN}" \
--data-binary @- << EOF
{
"name": "$DEST_TBL",
"database_instance_name": "$DATABASE_INSTANCE",
"logical_database_name": "$POSTGRES_DATABASE",
"spec": {
"source_table_full_name": "$SRC_TBL",
"primary_key_columns": $PKS,
"scheduling_policy": "TRIGGERED",
},
"new_pipeline_spec": {
"storage_catalog": "$ST_CATALOG",
"storage_schema": "$ST_SCHEMA",
}
}
EOF
Periksa status tabel yang disinkronkan.
export SYNCEDTABLE='pg_db.silver.sbtest1_online'
curl --request GET \
"https://e2-dogfood.staging.cloud.databricks.com/api/2.0/database/synced_tables/$SYNCEDTABLE" \
--header "Authorization: Bearer dapi..."
Mode sinkronisasi dijelaskan
Tabel yang disinkronkan dapat dibuat dengan salah satu mode sinkronisasi berikut, yang menentukan bagaimana data disinkronkan dari sumber ke tabel yang disinkronkan di Postgres:
| Mode sinkronisasi | Description | Performance |
|---|---|---|
| Snapshot | Alur berjalan sekali untuk mengambil rekam jepret tabel sumber dan menyalinnya ke tabel yang disinkronkan. Eksekusi alur kerja berikutnya menyalin keseluruhan data sumber ke tujuan dan menggantinya secara atomis. Alur dapat dipicu secara manual, melalui API atau sesuai jadwal. | Mode ini 10 kali lebih efisien daripada mode sinkronisasi Terpicu atau Berkelanjutan karena membuat ulang data dari awal. Jika Anda memodifikasi lebih dari 10% tabel sumber, pertimbangkan untuk menggunakan mode ini. |
| Tersulut | Alur berjalan sekali untuk mengambil rekam jepret tabel sumber dan menyalinnya ke tabel yang disinkronkan. Tidak seperti mode sinkronisasi Snapshot, saat tabel yang disinkronkan disegarkan, hanya perubahan sejak eksekusi alur terakhir diambil dan diterapkan ke tabel yang disinkronkan. Refresh inkremental dapat dipicu secara manual, melalui API atau sesuai jadwal. | Mode ini adalah kompromi yang baik antara jeda dan biaya, karena berjalan sesuai permintaan dan hanya menerapkan perubahan sejak eksekusi terakhir. Untuk meminimalkan jeda, jalankan alur ini segera setelah memperbarui tabel sumber. Jika Anda menjalankan ini lebih sering dari setiap 5 menit, mungkin lebih mahal daripada mode Berkelanjutan karena biaya memulai dan menghentikan alur setiap kali. |
| Berkelanjutan | Alur berjalan sekali untuk mengambil rekam jepret tabel sumber dan menyalinnya ke tabel yang disinkronkan kemudian alur berjalan terus menerus. Perubahan berikutnya pada tabel sumber diterapkan secara bertahap ke tabel yang disinkronkan secara real time. Tidak diperlukan refresh manual. | Mode ini memiliki jeda terendah tetapi biayanya lebih tinggi, karena terus berjalan. |
Nota
Untuk mendukung mode sinkronisasi yang Dipicu atau Berlanjut, tabel sumber harus diaktifkan perubahan aliran data. Sumber tertentu (seperti Tampilan) tidak mendukung perubahan umpan data sehingga hanya dapat disinkronkan dalam mode Rekam Jepret.
Operasi yang didukung
Databricks merekomendasikan untuk hanya melakukan operasi berikut di Postgres untuk tabel yang disinkronkan untuk mencegah penimpaan atau inkonsistensi data yang tidak disengaja:
- Kueri baca-saja
- Membuat indeks
- Menjatuhkan tabel (untuk mengosongkan ruang setelah menghapus tabel yang disinkronkan dari Katalog Unity)
Meskipun Anda dapat memodifikasi tabel ini dengan cara lain, tabel ini mengganggu alur sinkronisasi.
Menghapus tabel yang disinkronkan
Untuk menghapus tabel yang disinkronkan, Anda harus menghapusnya dari Katalog Unity lalu meletakkan tabel dalam instans database. Menghapus tabel yang disinkronkan dari Katalog Unity membatalkan pendaftaran tabel dan menghentikan refresh data apa pun. Namun, tabel tetap berada dalam database Postgres yang mendasar. Untuk mengosongkan ruang dalam instans database Anda, sambungkan ke instans dan gunakan DROP TABLE perintah .
Antarmuka Pengguna
- Klik Katalog di bilah sisi ruang kerja.
- Temukan dan pilih tabel yang disinkronkan yang ingin Anda hapus.
- Klik
>Hapus.
- Sambungkan ke instans dengan
psql, editor SQL, atau dari buku catatan. - Hapus tabel menggunakan PostgreSQL.
DROP TABLE synced_table_database.synced_table_schema.synced_table
Python SDK
from databricks.sdk import WorkspaceClient
# Initialize the Workspace client
w = WorkspaceClient()
# Delete a synced table from UC
synced_table_name = "catalog.schema.synced_table"
w.database.delete_synced_database_table(name=synced_table_name)
print(f"Deleted synced table from UC: {synced_table_name}")
# To free up space in your database instance, you need to connect to the
# instance and drop the table using PostgreSQL:
#
# DROP TABLE synced_table_database.synced_table_schema.synced_table;
antarmuka baris perintah (CLI)
# Delete a synced table from UC
databricks database delete-synced-database-table "catalog.schema.synced_table"
# To free up space in your database instance, you need to connect to the
# instance and drop the table using PostgreSQL:
#
# DROP TABLE synced_table_database.synced_table_schema.synced_table;
melengkung
# Delete a synced table from UC
curl -X DELETE --header "Authorization: Bearer ${DATABRICKS_TOKEN}" \
https://$WORKSPACE/api/2.0/database/synced_tables/$SYNCED_TABLE_NAME
# To free up space in your database instance, you need to connect to the
# instance and drop the table using PostgreSQL:
#
# DROP TABLE synced_table_database.synced_table_schema.synced_table;
Kepemilikan dan izin
Jika Anda membuat database, skema, atau tabel Postgres baru, kepemilikan Postgres diatur sebagai berikut:
- Kepemilikan ditetapkan kepada pengguna yang membuat database, skema, atau tabel, jika login Azure Databricks mereka terdaftar sebagai peran di Postgres. Untuk menambahkan peran identitas Azure Databricks di Postgres, lihat Mengelola peran Postgres.
- Jika tidak, kepemilikan ditetapkan kepada pemilik objek induk di Postgres (biasanya
databricks_superuser).
Mengelola akses tabel yang disinkronkan
Setelah tabel yang disinkronkan dibuat, databricks_superuser dapat READ tabel yang disinkronkan dari Postgres.
databricks_superuser memiliki pg_read_all_data, yang memungkinkan peran ini membaca dari semua tabel. Ini juga memiliki hak istimewa pg_write_all_data, yang memungkinkan peran ini untuk menulis ke semua tabel. Ini berarti bahwa databricks_superuser juga dapat menulis ke tabel yang disinkronkan di Postgres. Lakebase mendukung perilaku penulisan ini jika Anda perlu membuat perubahan mendesak dalam tabel target Anda. Namun, Databricks merekomendasikan untuk membuat perbaikan di tabel sumber Anda sebagai gantinya.
juga
databricks_superuserdapat memberikan hak istimewa ini kepada pengguna lain:GRANT USAGE ON SCHEMA synced_table_schema TO user;GRANT SELECT ON synced_table_name TO user;databricks_superuserdapat mencabut hak istimewa ini:REVOKE USAGE ON SCHEMA synced_table_schema FROM user;REVOKE {SELECT | INSERT | UPDATE | DELETE} ON synced_table_name FROM user;
Mengelola operasi tabel yang disinkronkan
databricks_superuser dapat mengelola siapa saja pengguna yang diizinkan melakukan operasi tertentu pada tabel yang disinkronkan. Operasi yang didukung untuk tabel yang disinkronkan adalah:
CREATE INDEXALTER INDEXDROP INDEXDROP TABLE
Semua operasi DDL lainnya ditolak untuk tabel yang disinkronkan.
Untuk memberikan hak istimewa ini kepada pengguna tambahan, databricks_superuser harus terlebih dahulu membuat ekstensi pada databricks_auth:
CREATE EXTENSION IF NOT EXISTS databricks_auth;
databricks_superuser Kemudian dapat menambahkan pengguna untuk mengelola tabel yang disinkronkan:
SELECT databricks_synced_table_add_manager('"synced_table_schema"."synced_table"'::regclass, '[user]');
databricks_superuser dapat menghapus pengguna dari mengelola tabel yang disinkronkan:
SELECT databricks_synced_table_remove_manager('[table]', '[user]');
databricks_superuser dapat melihat semua manajer:
SELECT * FROM databricks_synced_table_managers;
Pemetaan jenis data
Tabel pemetaan jenis ini menentukan bagaimana setiap jenis data dalam tabel Unity Catalog sumber dipetakan ke tabel sinkronisasi tujuan di Postgres:
| Jenis kolom sumber | Jenis kolom Postgres |
|---|---|
| BIGINT | BIGINT |
| BINER | BYTEA |
| BOOLEAN | BOOLEAN |
| TANGGAL | DATE |
| DECIMAL(p,s) | NUMERIK |
| DOBEL | PRESISI GANDA |
| FLOAT | WAKTU NYATA |
| INT | INTEGER |
| INTERVAL intervalQualifier | interval waktu |
| SMALLINT | SMALLINT |
| STRING | TEKS |
| TIMESTAMP | PENANDA WAKTU DENGAN ZONA WAKTU |
| TIMESTAMP_NTZ | TANDA WAKTU TANPA ZONA WAKTU |
| TINYINT | SMALLINT |
| GEOGRAPHY(srid) | TIDAK DIDUKUNG |
| GEOMETRI (srid) | TIDAK DIDUKUNG |
| ARRAY < elementType > | JSONB |
| MAP < keyType,valueType > | JSONB |
| STRUCT < [fieldName : fieldType [NOT NULL][COMMENT str][, ...]] > | JSONB |
| VARIAN | JSONB |
| OBJEK | TIDAK DIDUKUNG |
Nota
- Pemetaan untuk jenis ARRAY, MAP, dan STRUCT diubah pada Mei 2025. Tabel yang disinkronkan sebelum itu akan terus memetakan jenis ini ke JSON.
- Pemetaan untuk TIMESTAMP diubah pada Agustus 2025. Sinkronkan tabel yang dibuat sebelum itu terus memetakannya ke TIMESTAMP TANPA ZONA WAKTU.
Menangani karakter yang tidak valid
Karakter tertentu, seperti byte null (0x00), diizinkan dalam kolom STRING, ARRAY, MAP, atau STRUCT pada tabel Delta tetapi tidak didukung di kolom Postgres TEXT atau JSONB. Akibatnya, menyinkronkan data tersebut dari Delta ke Postgres dapat menyebabkan kegagalan penyisipan dengan kesalahan:
org.postgresql.util.PSQLException: ERROR: invalid byte sequence for encoding "UTF8": 0x00
org.postgresql.util.PSQLException: ERROR: unsupported Unicode escape sequence DETAIL: \u0000 cannot be converted to text.
- Kesalahan pertama terjadi ketika byte null muncul di kolom string tingkat atas, yang langsung dipetakan ke Postgres
TEXT. - Kesalahan kedua terjadi ketika byte null muncul dalam string yang disarangkan di dalam jenis kompleks (
STRUCT,ARRAY, atauMAP), yang oleh Azure Databricks diserialisasikan sebagaiJSONB. Selama serialisasi, semua string ditransmisikan ke PostgresTEXT, di mana\u0000tidak diizinkan.
Cara mengatasinya:
Anda dapat mengatasi masalah ini dengan salah satu cara berikut:
Membersihkan bidang string
Hapus atau ganti karakter yang tidak kompatibel dari semua bidang string, termasuk yang berada di dalam tipe data kompleks, sebelum menyinkronkan ke Postgres.
Untuk menghapus byte null dari kolom tingkat
STRINGatas, gunakanREPLACEfungsi :SELECT REPLACE(column_name, CAST(CHAR(0) AS STRING), '') AS cleaned_column FROM your_table;Konversi ke biner (hanya untuk
STRINGkolom)Jika mempertahankan konten byte mentah diperlukan, konversikan kolom yang terpengaruh
STRINGmenjadiBINARY.
Batasan dan pertimbangan
Tabel sumber yang didukung
Bergantung pada mode sinkronisasi tabel yang disinkronkan, berbagai jenis tabel sumber didukung:
Untuk mode Rekam Jepret, tabel sumber harus mendukung
SELECT *. Contohnya termasuk tabel Delta, tabel Iceberg, tampilan, tampilan materialisasi, dan jenis serupa lainnya.Untuk Mode sinkronisasi Terpicu atau Berkelanjutan, tabel sumber juga harus mengaktifkan umpan data perubahan .
Batasan penamaan dan pengenal
-
Karakter yang diizinkan: Nama database, skema, dan tabel Postgres untuk tabel yang disinkronkan mungkin hanya berisi karakter alfanumerik dan garis bawah (
[A-Za-z0-9_]+). Tanda hubung (-) dan karakter khusus lainnya tidak didukung. - Pengidentifikasi kolom dan tabel: Hindari menggunakan huruf besar atau karakter khusus dalam nama kolom atau tabel dalam tabel Unity Catalog sumber. Jika disimpan, Anda perlu mengutip pengidentifikasi ini saat mereferensikannya di Postgres.
Kinerja dan sinkronisasi
- Kecepatan sinkronisasi: Menyinkronkan data ke dalam tabel yang disinkronkan mungkin lebih lambat daripada menulis data langsung ke instans database dengan klien PostgreSQL asli karena pemrosesan tambahan. Mode sinkronisasi berkelanjutan me-refresh data dari tabel terkelola Katalog Unity ke tabel yang disinkronkan dengan interval minimum 15 detik.
- Penggunaan koneksi: Setiap sinkronisasi tabel dapat menggunakan hingga 16 koneksi ke instans database, yang dihitung terhadap batas koneksi instans.
- Idempotensi API: API tabel yang tersinkronisasi adalah idempoten dan mungkin perlu dicoba ulang jika terjadi kesalahan untuk memastikan operasi berlangsung tepat waktu.
-
Perubahan skema: Untuk tabel yang disinkronkan dalam
TriggeredatauContinuousmode, hanya perubahan skema aditif (misalnya, menambahkan kolom baru) dari tabel Katalog Unity yang diterapkan pada tabel yang disinkronkan. - Kunci duplikat: Jika dua baris memiliki kunci utama yang sama dalam tabel sumber, alur sinkronisasi gagal kecuali Anda mengonfigurasi deduplikasi menggunakan Kunci Timeseries. Namun, menggunakan Kunci Timeseries mengandung penalti kinerja.
- Laju pembaruan: Alur sinkronisasi mendukung penulisan berkelanjutan pada sekitar 1.200 baris per detik per Unit Kapasitas (CU) dan penulisan massal hingga 15.000 baris per detik per CU.
Kapasitas dan batasan
-
Batas tabel:
- Batas 20 tabel yang disinkronkan per tabel sumber.
- Setiap sinkronisasi tabel dapat menggunakan hingga 16 koneksi database.
-
Batas ukuran dan refresh penuh:
- Jika Anda me-refresh penuh tabel yang disinkronkan, versi lama di Postgres tidak dihapus hingga tabel baru disinkronkan. Kedua versi untuk sementara masuk dalam perhitungan batas ukuran database logis selama refresh.
- Tabel individual yang disinkronkan tidak memiliki batas, tetapi batas ukuran data logis total di semua tabel dalam instans adalah 2 TB. Namun, jika Anda memerlukan penyegaran alih-alih pembuatan ulang tabel secara penuh, Databricks merekomendasikan untuk tidak melebihi 1 TB.
- Jika ukuran format baris tabel Unity Catalog yang tidak dikompresi melebihi batas ukuran instans database (2 TB), sinkronisasi gagal. Anda harus menghilangkan tabel yang disinkronkan di Postgres sebelum menulis lebih lanjut ke instans.
Integrasi katalog
- Duplikasi katalog: Membuat tabel yang disinkronkan dalam katalog standar yang menargetkan database Postgres yang juga terdaftar sebagai katalog database terpisah menyebabkan tabel yang disinkronkan muncul di Katalog Unity di bawah katalog standar dan database.