テーブルオプティマイザー API - AWS Glue

テーブルオプティマイザー API

テーブルオプティマイザー API は、圧縮を有効にして読み取りパフォーマンスを改善するための AWS Glue API の説明を記述します。

データ型

TableOptimizer の構造

テーブルに関連付けられたオプティマイザーに関する詳細が含まれます。

フィールド
  • type – UTF-8 文字列 (有効な値: compaction="COMPACTION" | retention="RETENTION" | orphan_file_deletion="ORPHAN_FILE_DELETION")。

    テーブルオプティマイザーのタイプ。有効な値は以下のとおりです。

    • compaction: テーブルオプティマイザーで圧縮を管理する場合。

    • retention: テーブルオプティマイザーでスナップショットの保持を管理する場合。

    • orphan_file_deletion: テーブルオプティマイザーで孤立ファイルの削除を管理する場合。

  • configurationTableOptimizerConfiguration オブジェクト。

    テーブルオプティマイザーを作成または更新する際に指定された TableOptimizerConfiguration オブジェクト。

  • lastRunTableOptimizerRun オブジェクト。

    テーブルオプティマイザーの前回の実行を表す TableOptimizerRun オブジェクト。

TableOptimizerConfiguration の構造

テーブルオプティマイザーの設定に関する詳細が含まれます。テーブルオプティマイザーを作成または更新する際に、この設定を渡します。

フィールド
  • roleArn - UTF-8 文字列。1 ~ 512 バイト長。Single-line string pattern に一致。

    呼び出し元によって渡されるロール。このロールは、呼び出し元に代わってオプティマイザーに関連付けられたリソースを更新するための許可をサービスに付与します。

  • enabled – ブール。

    テーブル最適化が有効かどうか。

  • vpcConfigurationTableOptimizerVpcConfiguration オブジェクト。

    テーブルオプティマイザーの VPC の設定を表す TableOptimizerVpcConfiguration オブジェクト。

    この設定は、カスタマー VPC 内のテーブルを最適化するために必要です。

  • retentionConfigurationRetentionConfiguration オブジェクト。

    スナップショット保持オプティマイザー用の設定。

  • orphanFileDeletionConfigurationOrphanFileDeletionConfiguration オブジェクト。

    孤立ファイル削除オプティマイザー用の設定。

TableOptimizerVpcConfiguration 構造

テーブルオプティマイザーの VPC 設定を記述するオブジェクト。

この設定は、カスタマー VPC 内のテーブルを最適化するために必要です。

フィールド
  • glueConnectionName – UTF-8 文字列

    テーブルオプティマイザーの VPC に使用される AWS Glue 接続の名前。

TableOptimizerRun の構造

テーブルオプティマイザーの実行の詳細が含まれます。

フィールド
  • eventType – UTF-8 文字列 (有効な値: starting="STARTING" | completed="COMPLETED" | failed="FAILED" | in_progress="IN_PROGRESS")。

    テーブルオプティマイザーの実行のステータスを表すイベントタイプ。

  • startTimestamp – タイムスタンプ。

    Lake Formation 内で圧縮ジョブが開始された時点のエポックタイムスタンプを表します。

  • endTimestamp – タイムスタンプ。

    圧縮ジョブが終了した時点のエポックタイムスタンプを表します。

  • metricsRunMetrics オブジェクト。

    オプティマイザーの実行のメトリクスを含む RunMetrics オブジェクト。

    このメンバーは廃止されました。圧縮、保持、孤立ファイルの削除については、個々のメトリクスメンバーを参照してください。

  • error – UTF-8 文字列。

    オプティマイザーの実行中に発生したエラー。

  • compactionMetricsCompactionMetrics オブジェクト。

    オプティマイザーの実行のメトリクスを含む CompactionMetrics オブジェクト。

  • retentionMetricsRetentionMetrics オブジェクト。

    オプティマイザーの実行のメトリクスを含む RetentionMetrics オブジェクト。

  • orphanFileDeletionMetricsOrphanFileDeletionMetrics オブジェクト。

    オプティマイザーの実行のメトリクスを含む OrphanFileDeletionMetrics オブジェクト。

BatchGetTableOptimizerEntry の構造

BatchGetTableOptimizer オペレーションで取得するテーブルオプティマイザーを表します。

フィールド
  • catalogId – カタログ ID 文字列、1~255 バイト長、Single-line string pattern に一致。

    テーブルのカタログ ID。

  • databaseName – UTF-8 文字列、少なくとも 1 バイト長。

    テーブルが存在するカタログのデータベースの名前。

  • tableName – UTF-8 文字列、少なくとも 1 バイト長。

    テーブルの名前。

  • type – UTF-8 文字列 (有効な値: compaction="COMPACTION" | retention="RETENTION" | orphan_file_deletion="ORPHAN_FILE_DELETION")。

    テーブルオプティマイザーのタイプ。

BatchTableOptimizer の構造

BatchGetTableOptimizer オペレーションによって返されたいずれかのテーブルオプティマイザーの詳細が含まれます。

フィールド
  • catalogId – カタログ ID 文字列、1~255 バイト長、Single-line string pattern に一致。

    テーブルのカタログ ID。

  • databaseName – UTF-8 文字列、少なくとも 1 バイト長。

    テーブルが存在するカタログのデータベースの名前。

  • tableName – UTF-8 文字列、少なくとも 1 バイト長。

    テーブルの名前。

  • tableOptimizerTableOptimizer オブジェクト。

    テーブルオプティマイザーの設定と前回の実行に関する詳細を含む TableOptimizer オブジェクト。

BatchGetTableOptimizerError の構造

BatchGetTableOptimizer オペレーションによって返されたエラーリスト内のいずれかのエラーに関する詳細が含まれます。

フィールド
  • errorErrorDetail オブジェクト。

    エラーに関するコードとメッセージの詳細を含む ErrorDetail オブジェクト。

  • catalogId – カタログ ID 文字列、1~255 バイト長、Single-line string pattern に一致。

    テーブルのカタログ ID。

  • databaseName – UTF-8 文字列、少なくとも 1 バイト長。

    テーブルが存在するカタログのデータベースの名前。

  • tableName – UTF-8 文字列、少なくとも 1 バイト長。

    テーブルの名前。

  • type – UTF-8 文字列 (有効な値: compaction="COMPACTION" | retention="RETENTION" | orphan_file_deletion="ORPHAN_FILE_DELETION")。

    テーブルオプティマイザーのタイプ。

RetentionConfiguration 構造

スナップショット保持オプティマイザー用の設定。

フィールド
  • icebergConfigurationIcebergRetentionConfiguration オブジェクト。

    Iceberg スナップショット保持オプティマイザー用の設定。

IcebergRetentionConfiguration 構造

Iceberg スナップショット保持オプティマイザー用の設定。

フィールド
  • snapshotRetentionPeriodInDays – 数値 (整数)。

    Iceberg スナップショットを保持する日数。入力が指定されていない場合は、対応する Iceberg テーブルの設定フィールドが使用されます。存在しない場合は、デフォルト値の 5 が使用されます。

  • numberOfSnapshotsToRetain – 数値 (整数)。

    保持期間内に保持する Iceberg スナップショットの数。入力が指定されていない場合は、対応する Iceberg テーブルの設定フィールドが使用されます。存在しない場合は、デフォルト値の 1 が使用されます。

  • cleanExpiredFiles – ブール。

    false に設定すると、スナップショットはテーブルメタデータからのみ削除され、基になるデータとメタデータファイルは削除されません。

OrphanFileDeletionConfiguration 構造

孤立ファイル削除オプティマイザー用の設定。

フィールド

IcebergOrphanFileDeletionConfiguration 構造

Iceberg 孤立ファイル削除オプティマイザー用の設定。

フィールド
  • orphanFileRetentionPeriodInDays – 数値 (整数)。

    ファイルを削除する前に孤立ファイルを保持する日数。入力が指定されていない場合は、デフォルト値の 3 が使用されます。

  • location – UTF-8 文字列。

    ファイルを検索するディレクトリを指定します (デフォルトはテーブルの場所です)。最上位のテーブルの場所ではなく、サブディレクトリを選択することができます。

CompactionMetrics 構造

オプティマイザーの実行の圧縮メトリクスを含む構造。

フィールド
  • IcebergMetricsIcebergCompactionMetrics オブジェクト。

    オプティマイザーの実行の Iceberg 圧縮メトリクスを含む構造。

RetentionMetrics 構造

オプティマイザーの実行の保持メトリクスを含む構造。

フィールド
  • IcebergMetricsIcebergRetentionMetrics オブジェクト。

    オプティマイザーの実行の Iceberg 保持メトリクスを含む構造。

OrphanFileDeletionMetrics 構造

オプティマイザーの実行の孤立ファイル削除メトリクスを含む構造。

フィールド
  • IcebergMetricsIcebergOrphanFileDeletionMetrics オブジェクト。

    オプティマイザーの実行の Iceberg 孤立ファイル削除メトリクスを含む構造。

IcebergCompactionMetrics 構造

オプティマイザーの実行の Iceberg の圧縮メトリクス。

フィールド
  • NumberOfDpus – 数値 (整数)。

    ジョブによって消費された DPU 時間数。

  • JobDurationInHour – 数値 (double)。

    ジョブの実行時間 (単位: 時間)。

IcebergRetentionMetrics 構造

オプティマイザーの実行の Iceberg のスナップショット保持メトリクス。

フィールド
  • NumberOfDpus – 数値 (整数)。

    ジョブによって消費された DPU 時間数。

  • JobDurationInHour – 数値 (double)。

    ジョブの実行時間 (単位: 時間)。

IcebergOrphanFileDeletionMetrics 構造

オプティマイザーの実行の Iceberg の孤立ファイル削除メトリクス。

フィールド
  • NumberOfDpus – 数値 (整数)。

    ジョブによって消費された DPU 時間数。

  • JobDurationInHour – 数値 (double)。

    ジョブの実行時間 (単位: 時間)。

RunMetrics の構造

オプティマイザーの実行のメトリクス。

この構造は廃止されました。圧縮、保持、孤立ファイルの削除については、個々のメトリクスメンバーを参照してください。

フィールド
  • NumberOfBytesCompacted – UTF-8 文字列。

    圧縮ジョブの実行によって削除されたバイト数。

  • NumberOfFilesCompacted – UTF-8 文字列。

    圧縮ジョブの実行によって削除されたファイル数。

  • NumberOfDpus – UTF-8 文字列。

    ジョブによって消費された DPU 時間数。

  • JobDurationInHour – UTF-8 文字列。

    ジョブの実行時間 (単位: 時間)。

操作

GetTableOptimizer アクション (Python: get_table_optimizer)

指定されたテーブルに関連付けられているすべてのオプティマイザーの設定を返します。

リクエスト
  • CatalogId – 必須: カタログ ID 文字列、1~255 バイト長、Single-line string pattern に一致。

    テーブルのカタログ ID。

  • DatabaseName – 必須: UTF-8 文字列、1~255 バイト長、Single-line string pattern に一致。

    テーブルが存在するカタログのデータベースの名前。

  • TableName必須: UTF-8 文字列、1~255 バイト長、「Single-line string pattern」に一致。

    テーブルの名前。

  • Type必須: UTF-8 文字列 (有効な値: compaction="COMPACTION" | retention="RETENTION" | orphan_file_deletion="ORPHAN_FILE_DELETION")。

    テーブルオプティマイザーのタイプ。

レスポンス
  • CatalogId – カタログ ID 文字列、1~255 バイト長、Single-line string pattern に一致。

    テーブルのカタログ ID。

  • DatabaseName – UTF-8 文字列、1~255 バイト長、Single-line string pattern に一致。

    テーブルが存在するカタログのデータベースの名前。

  • TableName – UTF-8 文字列、1~255 バイト長、「Single-line string pattern」に一致。

    テーブルの名前。

  • TableOptimizerTableOptimizer オブジェクト。

    指定されたテーブルに関連付けられたオプティマイザー。

エラー
  • EntityNotFoundException

  • InvalidInputException

  • AccessDeniedException

  • InternalServiceException

  • ThrottlingException

BatchGetTableOptimizer アクション (Python: batch_get_table_optimizer)

指定されたテーブルオプティマイザーの設定を返します。

リクエスト
  • Entries必須: BatchGetTableOptimizerEntry オブジェクトの配列。

    取得するテーブルオプティマイザーを指定する BatchGetTableOptimizerEntry オブジェクトのリスト。

応答
  • TableOptimizersBatchTableOptimizer オブジェクトの配列。

    BatchTableOptimizer オブジェクトのリスト。

  • FailuresBatchGetTableOptimizerError オブジェクトの配列。

    オペレーションで発生したエラーのリスト。

エラー
  • EntityNotFoundException

  • InvalidInputException

  • AccessDeniedException

  • InternalServiceException

  • ThrottlingException

ListTableOptimizerRuns アクション (Python: list_table_optimizer_runs)

特定のテーブルについての以前のオプティマイザーの実行の履歴をリストします。

リクエスト
  • CatalogId – 必須: カタログ ID 文字列、1~255 バイト長、Single-line string pattern に一致。

    テーブルのカタログ ID。

  • DatabaseName – 必須: UTF-8 文字列、1~255 バイト長、Single-line string pattern に一致。

    テーブルが存在するカタログのデータベースの名前。

  • TableName必須: UTF-8 文字列、1~255 バイト長、「Single-line string pattern」に一致。

    テーブルの名前。

  • Type必須: UTF-8 文字列 (有効な値: compaction="COMPACTION" | retention="RETENTION" | orphan_file_deletion="ORPHAN_FILE_DELETION")。

    テーブルオプティマイザーのタイプ。現在、有効な値は compaction のみです。

  • MaxResults – 数値 (整数)。

    各呼び出しで返すオプティマイザーの実行の最大数。

  • NextToken – UTF-8 文字列。

    継続トークン (これが継続呼び出しの場合)。

応答
  • CatalogId – カタログ ID 文字列、1~255 バイト長、Single-line string pattern に一致。

    テーブルのカタログ ID。

  • DatabaseName – UTF-8 文字列、1~255 バイト長、Single-line string pattern に一致。

    テーブルが存在するカタログのデータベースの名前。

  • TableName – UTF-8 文字列、1~255 バイト長、「Single-line string pattern」に一致。

    テーブルの名前。

  • NextToken – UTF-8 文字列。

    返されたオプティマイザーの実行のリストをページ分割するための継続トークン。リストの現在のセグメントが最後のセグメントではない場合に返されます。

  • TableOptimizerRunsTableOptimizerRun オブジェクトの配列。

    テーブルに関連付けられているオプティマイザーの実行のリスト。

エラー
  • EntityNotFoundException

  • AccessDeniedException

  • InvalidInputException

  • ValidationException

  • InternalServiceException

  • ThrottlingException

CreateTableOptimizer アクション (Python: create_table_optimizer)

特定の関数のために新しいテーブルオプティマイザーを作成します。現在サポートされているオプティマイザーの種類は compaction のみです。

リクエスト
  • CatalogId – 必須: カタログ ID 文字列、1~255 バイト長、Single-line string pattern に一致。

    テーブルのカタログ ID。

  • DatabaseName – 必須: UTF-8 文字列、1~255 バイト長、Single-line string pattern に一致。

    テーブルが存在するカタログのデータベースの名前。

  • TableName必須: UTF-8 文字列、1~255 バイト長、「Single-line string pattern」に一致。

    テーブルの名前。

  • Type必須: UTF-8 文字列 (有効な値: compaction="COMPACTION" | retention="RETENTION" | orphan_file_deletion="ORPHAN_FILE_DELETION")。

    テーブルオプティマイザーのタイプ。現在、有効な値は compaction のみです。

  • TableOptimizerConfiguration必須: TableOptimizerConfiguration オブジェクト。

    テーブルオプティマイザーの設定を表す TableOptimizerConfiguration オブジェクト。

レスポンス
  • 応答パラメータはありません。

エラー
  • EntityNotFoundException

  • ValidationException

  • InvalidInputException

  • AccessDeniedException

  • AlreadyExistsException

  • InternalServiceException

  • ThrottlingException

DeleteTableOptimizer アクション (Python: delete_table_optimizer)

オプティマイザーと、テーブルに関連付けられているすべてのメタデータを削除します。最適化はテーブルに対して実行されなくなります。

リクエスト
  • CatalogId – 必須: カタログ ID 文字列、1~255 バイト長、Single-line string pattern に一致。

    テーブルのカタログ ID。

  • DatabaseName – 必須: UTF-8 文字列、1~255 バイト長、Single-line string pattern に一致。

    テーブルが存在するカタログのデータベースの名前。

  • TableName必須: UTF-8 文字列、1~255 バイト長、「Single-line string pattern」に一致。

    テーブルの名前。

  • Type必須: UTF-8 文字列 (有効な値: compaction="COMPACTION" | retention="RETENTION" | orphan_file_deletion="ORPHAN_FILE_DELETION")。

    テーブルオプティマイザーのタイプ。

レスポンス
  • 応答パラメータはありません。

エラー
  • EntityNotFoundException

  • InvalidInputException

  • AccessDeniedException

  • InternalServiceException

  • ThrottlingException

UpdateTableOptimizer アクション (Python: update_table_optimizer)

既存のテーブルオプティマイザーの設定を更新します。

リクエスト
  • CatalogId – 必須: カタログ ID 文字列、1~255 バイト長、Single-line string pattern に一致。

    テーブルのカタログ ID。

  • DatabaseName – 必須: UTF-8 文字列、1~255 バイト長、Single-line string pattern に一致。

    テーブルが存在するカタログのデータベースの名前。

  • TableName必須: UTF-8 文字列、1~255 バイト長、「Single-line string pattern」に一致。

    テーブルの名前。

  • Type必須: UTF-8 文字列 (有効な値: compaction="COMPACTION" | retention="RETENTION" | orphan_file_deletion="ORPHAN_FILE_DELETION")。

    テーブルオプティマイザーのタイプ。現在、有効な値は compaction のみです。

  • TableOptimizerConfiguration必須: TableOptimizerConfiguration オブジェクト。

    テーブルオプティマイザーの設定を表す TableOptimizerConfiguration オブジェクト。

レスポンス
  • 応答パラメータはありません。

エラー
  • EntityNotFoundException

  • InvalidInputException

  • AccessDeniedException

  • ValidationException

  • InternalServiceException

  • ThrottlingException

  • ConcurrentModificationException