このトピックでは、Delta の重要なパラメーターについて説明します。
Delta には 3 つのタイプのパラメーターがあります。
- Spark SQL パラメーター。SQL ステートメントを実行するために使用されます。
- ランタイム パラメーター。セッションで動的に構成できます。 これらのパラメーターには、
spark.databricks.delta.
というプレフィックスが付きます。 - 非ランタイム パラメーター。Spark 構成ファイルでグローバル パラメーターとして構成するか、CREATE TABLE ステートメントの
TBLPROPERTIES
句でテーブル パラメーターとして指定することのみ可能です。 テーブル パラメーターはグローバル パラメーターよりも優先されます。 グローバル パラメーターには、spark.databricks.delta.properties.defaults.
というプレフィックスが付きます。 テーブル パラメーターには、delta.
というプレフィックスが付きます。
パラメーター | 説明 |
spark.databricks.delta.snapshotPartitions | デフォルト値:10。 Delta ログ メタデータのパーティション数。 Delta ログのボリュームが大きい場合は、このパラメーターを大きな値に設定します。 Delta ログのボリュームが小さい場合は、このパラメーターを小さな値に設定します。 このパラメーターは、Delta テーブルの解析パフォーマンスに大きな影響を与えます。 |
spark.databricks.delta.retentionDurationCheck.enabled | デフォルト値:true。 削除マーカーを削除するときに保存期間を確認するかどうかを指定します。 警告 最近マージされた小さなファイルを削除する場合は、このパラメーターを false に設定して保存期間チェックを無効にすることができます。 ただし、デフォルト値を使用することをお勧めします。 そうしないと、最近生成されたデータが削除され、データの読み取り/書き込みエラーが発生する可能性があります。 |
spark.databricks.delta.schema.autoMerge.enabled | デフォルト値:false。 Delta は、書き込まれたデータが宛先テーブルのスキーマと一致するかどうかを確認して、書き込まれたデータが正しいことを確認できます。 データのスキーマが変更された場合は、データを書き込むときに |
spark.databricks.delta.properties.defaults.deletedFileRetentionDuration または delta.deletedFileRetentionDuration | デフォルト値:interval 1 week。 Delta 削除マーカーの保存期間。 spark.databricks.delta.retentionDurationCheck.enabled パラメーターが true に設定されている場合、保存期間内の削除マーカーを削除しようとすると例外がスローされます。 説明 保存期間は 1 時間以上にする必要があります。 |
spark.databricks.delta.properties.defaults.logRetentionDuration または delta.logRetentionDuration | デフォルト値:interval 30 days。 Delta ログ ファイルの有効期間。 Delta ログ ファイルは、次のいずれかの条件が満たされると期限切れになります。
|
spark.sql.sources.parallelPartitionDiscovery.parallelism | デフォルト値:1000。 Delta がファイルのスキャンに使用する並列タスクの数。 ファイルの数が少ない場合は、このパラメーターを小さな値に設定します。 vacuum コマンドでのみ使用できます。 このパラメーターの設定が不適切だと、vacuum コマンドのファイル スキャン効率に影響します。 説明 このパラメーターは Spark SQL パラメーターです。 |