Delta Sharing での一般的な共有に関する問題のトラブルシューティング

次のセクションでは、共有内のデータにアクセスしようとしたときに発生する可能性がある一般的なエラーについて説明します。

リソース制限超過エラー

問題: 共有テーブルのクエリーでエラー 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"

考えられる原因: 共有テーブルに許可されるメタデータ内のファイル数には制限があります。

推奨される修正: これらの問題のいずれかを解決する方法については、「Databricks ナレッジ ベースの Delta Sharing テーブルを照会するときのリソース エラー 」を参照してください。

AWS S3 バケット名の問題

問題: ファイルが見つからないか、証明書の例外をスローするエラー メッセージが表示されます。

Spark エラーの例:

FileReadException: Error while reading file delta-sharing:/%252Ftmp%252Fexample.share%2523example.tpc_ds.example/XXXXXXXXXXXXX/XXXXXXXX.

Caused by: SSLPeerUnverifiedException: Certificate for - <[workspace name].cloud.databricks.com.s3.us-east-1.amazonaws.com> doesn't match any of the subject alternative names [s3.amazonaws.com, *.s3.amazonaws.com…]:

Pandas エラーの例:

FileNotFoundError(path)
FileNotFoundError: https://xxxx.xxxxxx.s3.xx-xxxx-1.amazonaws.com/xxxxxx/part-00000-xxxxx-Amz-Algorithm=Axxxxxx-Amz-Date=xxxxxxxx&X-Amz-SignedHeaders=host&X-Amz-Expires=xxx&X-Amz-Credential=xxxxxxx_request&X-Amz-Signature=xxxxx

Power BI エラーの例:

DataSource.Error: The underlying connection was closed: Could not establish trust relationship for the SSL/TLS secure channel.
Details:
    https://xxxx.xxxxxxxxx.s3.xx-xxxx-1.amazonaws.com/xxxxxxxx/part-00000-xxxxxxx.snappy.parquet

考えられる原因: 通常、このエラーが表示されるのは、バケット名にドット表記またはピリオド表記 ( incorrect.bucket.name.notationなど) を使用しているためです。 これは AWS の制限です。 AWS バケットの命名規則を参照してください。

このエラーは、バケット名が正しくフォーマットされている場合でも発生する可能性があります。 たとえば、PyCharmでコードを実行すると、SSLエラー(SSLCertVerificationError)が発生する可能性があります。

推奨される修正: バケット名に無効なAWSバケット命名表記が使用されている場合は、 Unity CatalogとDelta Sharingに別のバケットを使用します。

バケットで有効な命名規則を使用していても Python で FileNotFoundError が発生する場合は、デバッグログを有効にして問題を特定します。

import logging
logging.basicConfig(level=logging.DEBUG)

vacuumデータファイルの問題

問題: "404 指定された [path|key] は存在しません" という例外をスローするエラー メッセージが表示されます。

Spark エラーの例:

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

または

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>

考えられる原因: 通常、このエラーは、事前署名された URL に対応するデータ ファイルが共有テーブル内でvacuumあり、データ ファイルが履歴テーブル バージョンに属しているために表示されます。

回避策: 最新のスナップショットをクエリします。