Mengatasi masalah umum dalam Delta Sharing

Bagian berikut ini menjelaskan kesalahan umum yang mungkin terjadi saat Anda mencoba mengakses data dalam berbagi.

Kesalahan batas sumber daya yang terlampaui

Masalah: Kueri Anda pada tabel bersama mengembalikan kesalahan RESOURCE_LIMIT_EXCEEDED.

  • "RESOURCE_LIMIT_EXCEEDED","message":"The table metadata size exceeded limits"
  • "RESOURCE_LIMIT_EXCEEDED","message":"The number of files in the table to return exceeded limits, consider contact your provider to optimize the table"

Kemungkinan penyebab: Ada batasan jumlah file dalam metadata yang diizinkan untuk tabel bersama:

  • File aktif: Tabel bersama mendukung maksimum 400.000 file aktif (tindakan AddFile). Jika jumlah file aktif melebihi batas ini, kueri mengembalikan kesalahan "jumlah file yang terlampaui".
  • Menghapus tindakan file: Tabel bersama mendukung maksimal 100.000 tindakan RemoveFile di log Delta. Jika jumlah tindakan RemoveFile melebihi batas ini, kueri mengembalikan kesalahan "ukuran metadata terlampaui".

Anda dapat meminta peningkatan batas untuk batas file aktif. Lihat Batas sumber daya.

Perbaikan yang direkomendasikan: Hubungi penyedia data Anda dan minta mereka untuk mengoptimalkan tabel bersama dengan menjalankan OPTIMIZE dan VACUUM memadamkan file kecil dan menghapus entri RemoveFile kedaluarsa dari log Delta. Untuk panduan tambahan, lihat kesalahan RESOURCE_LIMIT_EXCEEDED saat mengquery tabel Delta Sharing di Basis Pengetahuan Databricks.

Masalah file data yang dikosongkan

Masalah: Anda melihat pesan kesalahan yang melempar pengecualian "404 [jalur|kunci] yang ditentukan tidak ada".

Contoh kesalahan Spark:

java.lang.Throwable: HTTP request failed with status: HTTP/1.1 404 The specified path does not exist.

atau

HTTP request failed with status: HTTP/1.1 404 Not Found <?xml version="1.0" encoding="UTF-8"?>
<Error><Code>NoSuchKey</Code><Message>The specified key does not exist.</Message>

Kemungkinan penyebab: Biasanya Anda melihat kesalahan ini karena file data yang sesuai dengan URL bertanda tangan sebelumnya dibersihkan dalam tabel bersama dan file data tersebut milik versi tabel historis.

Solusi sementara: Mengkueri rekam jepret terbaru.

Kesalahan ketidakcocokan skema dengan Open Source Spark

Masalah: Saat menggunakan Open Source Spark (OSS), Anda melihat kesalahan ketidakcocokan skema saat membaca tabel Berbagi Delta.

Contoh kesalahan:

py4j.protocol.Py4JJavaError: An error occurred while calling o85.count.: org.apache.spark.SparkException: The schema or partition columns of your Delta table has changed since your DataFrame was created. Please redefine your DataFrame

Kemungkinan penyebab: Kolom skema atau partisi tabel Delta berubah setelah DataFrame dibuat.

Perbaikan yang disarankan: Atur bendera spark.delta.sharing.client.useStructuralSchemaMatch konfigurasi Spark ke true:

spark.conf.set("spark.delta.sharing.client.useStructuralSchemaMatch", "true")

Masalah konfigurasi jaringan penyimpanan

Masalah: Anda melihat pesan kesalahan yang menampilkan SSLCertVerificationError.

Contoh kesalahan Spark:

ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:1006)

Kemungkinan penyebab: Biasanya Anda melihat kesalahan ini karena ada pembatasan jaringan pada lokasi penyimpanan tabel atau volume bersama.

Perbaikan yang disarankan: Di antarmuka penyedia penyimpanan, izinkan akses ke lokasi penyimpanan dengan mengizinkan IP klien di pengaturan firewall akun penyimpanan.

Masalah akses aset materialisasi yang dapat diakses bersama

Masalah: Kueri Anda pada tampilan bersama, tampilan materialisasi, atau tabel streaming mengembalikan kesalahan DS_MATERIALIZATION_QUERY_FAILED.

"DS_MATERIALIZATION_QUERY_FAILED": "The shared asset could not be materialized due to the asset not being accessible in the materialization workspace. Please ask data provider to contact :re[DB] support to override the materialization workspace."

Kemungkinan penyebab: Penyedia tidak memiliki akses baca-tulis ke aset yang mereka coba bagikan.

Perbaikan yang disarankan: Hubungi penyedia data Anda untuk memastikan mereka memiliki akses baca-tulis ke aset data bersama.

Kesalahan akses jaringan selama materialisasi data

Masalah: Kueri Anda pada aset data yang dibagikan mengembalikan kesalahan terkait akses ke penyimpanan cloud dari penyedia data.

There was an issue accessing the data provider's cloud storage. Shared view materialization uses the Serverless compute of data provider's region to perform the materialization. Please contact the data provider to allowlist Serverless compute IPs of their corresponding region to access the view's dependent tables storage location.

Possible causes: Lokasi penyimpanan untuk data materialisasi memiliki pembatasan jaringan (seperti firewall atau tautan privat) yang mencegah komputasi serverless Azure Databricks mengaksesnya. Saat berbagi tampilan, tampilan materialisasi, atau tabel streaming, data dimaterialisasi sementara di sisi penyedia. Lokasi penyimpanan materialisasi adalah skema induk aset atau lokasi penyimpanan katalog.

Perbaikan yang direkomendasikan: Penyedia data perlu mengizinkan DAFTAR IP komputasi tanpa server dari wilayah yang sesuai untuk mengakses lokasi penyimpanan tabel dependen tampilan. Untuk mengonfigurasi firewall Anda, lihat Mengonfigurasi firewall untuk akses komputasi tanpa server (warisan).

Kesalahan aset data "tidak ada"

Jika Anda mengklik aset bersama dan mengalami kesalahan objek "tidak ada", pemilik pembagian pada sisi penyedia mungkin tidak memiliki izin yang memadai terhadap aset tersebut. Hubungi penyedia data Anda dan minta mereka untuk memverifikasi bahwa pemilik berbagi memiliki izin yang diperlukan pada semua aset bersama. Untuk informasi selengkapnya tentang izin yang diperlukan bagi pemilik berbagi untuk berbagi aset data, lihat Persyaratan dan Memberikan akses penerima untuk berbagi.