Delta テーブル プロパティのリファレンス
Delta Lake delta.
で始まる Delta テーブル プロパティを予約します。 これらのプロパティには特定の意味があり、これらのプロパティが設定されたときの動作に影響します。
注:
テーブル プロパティを設定または更新するすべての操作は、他の書き込み操作と競合し、失敗します。 Databricks では、テーブルに書き込み操作がない場合にのみテーブル プロパティを変更することをお勧めします。
テーブル プロパティと SparkSession プロパティはどのように相互作用しますか?
Delta テーブルのプロパティはテーブルごとに設定されます。 プロパティがテーブルに設定されている場合、これはデフォルトで従う設定です。
一部のテーブル プロパティには、テーブル プロパティよりも常に優先される SparkSession 構成が関連付けられています。 たとえば、テーブル レベルではなく SparkSession レベルで自動圧縮と最適化された書き込みを有効にする spark.databricks.delta.autoCompact.enabled
構成と spark.databricks.delta.optimizeWrite.enabled
構成などがあります。 Databricks では、ほとんどのワークロードにテーブル スコープの構成を使用することをお勧めします。
すべての Delta テーブル プロパティに対して、SparkSession 構成を使用して新しいテーブルに既定値を設定し、組み込みの既定値をオーバーライドできます。 この設定は新しいテーブルにのみ影響し、既存のテーブルに設定されたプロパティをオーバーライドまたは置換しません。 SparkSession で使用されるプレフィックスは、次の表に示すように、テーブルのプロパティで使用される構成とは異なります。
Delta Lake 会議 |
スパークセッション会議 |
---|---|
|
|
たとえば、セッションで作成されたすべての新しい Delta Lake テーブルの delta.appendOnly = true
プロパティを設定するには、次のように設定します。
SET spark.databricks.delta.properties.defaults.appendOnly = true
既存のテーブルのテーブル プロパティを変更するには、 SET TBL プロパティを使用します。
Delta テーブルのプロパティ
使用可能な Delta テーブルのプロパティは次のとおりです。
財産 |
---|
「Delta テーブルのプロパティ リファレンス」を参照してください。 データ型: デフォルト: |
Databrick s で の Delt a Lake の自動圧縮 を参照してください。 データ型: デフォルト: (なし) |
「 Databricks での Delta Lake 用に最適化された書き込み」を参照してください。 データ型: デフォルト: (なし) |
チェックポイントでの列レベルの統計の管理を参照してください。 データ型: デフォルト: |
チェックポイントでの列レベルの統計の管理を参照してください。 データ型: デフォルト: (なし) |
「 テーブルと liquid クラスターの互換性」を参照してください。 データ型: デフォルト: |
Delta テーブルの列と、異なる名前を使用する対応する Parquet 列に対して列マッピングを有効にするかどうか。 「Delta Lake 列マッピングを使用した列の名前変更と削除」を参照してください。 注: データ型: デフォルト: |
Delta Lake がデータ スキップの統計を収集する列の数。 値 「 Delta Lake のデータ スキップ」を参照してください。 データ型: デフォルト: |
Delta Lake がデータ スキップ機能を強化するために統計を収集する列名のコンマ区切りリスト。 このプロパティは 「 Delta Lake のデータ スキップ」を参照してください。 データ型: デフォルト: (なし) |
Delta Lake が論理的に削除されたデータ ファイルを物理的に削除する前に保持する最短期間。 これは、圧縮またはパーティションの上書き後の古いリーダーでの障害を防ぐためです。 この値は、次のことを保証するのに十分な大きさである必要があります。
「 タイムトラベル クエリーのデータ保持の構成」を参照してください。 データ型: デフォルト: |
「 変更データ フィードを有効にする」を参照してください。 データ型: デフォルト: |
「削除ベクトルとは」を参照してください。 データ型: |
並列トランザクションによって行われた変更からトランザクションを分離する必要がある度合い。 有効な値は 「Databricks での分離レベルと書き込みの競合」を参照してください。 データ型: デフォルト: |
Delta テーブルの履歴が保持される期間。 チェックポイントが書き込まれるたびに、Delta Lake は保持間隔より古いログエントリを自動的にクリーンアップします。 このプロパティを十分に大きい値に設定すると、多くのログ エントリが保持されます。 ログに対する操作は一定時間であるため、これはパフォーマンスに影響を与えません。 履歴に対する操作は並列ですが、ログ サイズが大きくなるとコストが高くなります。 「 タイムトラベル クエリーのデータ保持の構成」を参照してください。 データ型: デフォルト: |
この Delta テーブルからの読み取りを許可するリーダーに最低限必要なプロトコル リーダーのバージョン。 Databricks では、このプロパティを手動で構成しないことをお勧めします。 「 Databricks で Delta Lake 機能の互換性を管理する方法」を参照してください。 データ型: デフォルト: |
この Delta テーブルへの書き込みを許可するライターに最低限必要なプロトコル ライターのバージョン。 Databricks では、このプロパティを手動で構成しないことをお勧めします。 「 Databricks で Delta Lake 機能の互換性を管理する方法」を参照してください。 データ型: デフォルト: |
データ型: デフォルト: |
データ型: デフォルト: |
新しいスナップショットがトランザクション識別子を保持する最短期間 ( データ型: デフォルト: (なし) |
ファイル チューニングのターゲット ファイル サイズ (バイト単位以上)。 たとえば、 「 データ ファイルのサイズを制御するための Delta Lake の構成」を参照してください。 データ型: デフォルト: (なし) |
「 データ ファイルのサイズを制御するための Delta Lake の構成」を参照してください。 データ型: デフォルト: (なし) |