クローラーの仕組み - AWS Glue

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

クローラーの仕組み

クローラーを実行すると、クローラーは以下のアクションを使用してデータストアを調査します。

  • 生データの形式、スキーマ、および関連プロパティを確認するためにデータを分類する – カスタム分類子を作成して分類の結果を設定できます。

  • データをテーブルまたはパーティションにグループ化する – データはクローラーのヒューリスティックに基づいてグループ化されます。

  • メタデータをデータカタログに書き込む – クローラーでテーブルやパーティションを追加、更新、削除する方法を設定できます。

クローラーを定義する場合、データの形式を評価してスキーマを推測する分類子を 1 つ以上選択します。クローラーを実行すると、リストで最初にデータストアの認識に成功した分類子を使用してテーブルのスキーマが作成されます。組み込み分類子を使用するか、独自に定義することができます。カスタム分類子は、クローラーを定義する前に別のオペレーションで定義します。AWS Glue には、JSON、CSV、Apache Avro などの形式の共通ファイルからスキーマを推論するための組み込み分類子が用意されています。AWS Glue の組み込み分類子の最新のリストについては、「AWS Glue の組み込み分類子」を参照してください。

クローラーで作成するメタデータテーブルは、クローラーの定義時にデータベースに含まれます。クローラーがデータベースを指定しない場合、テーブルはデフォルトのデータベースに配置されます。さらに、各テーブルには、最初にデータストアの認識に成功した分類子により入力された分類子の列があります。

クロールするファイルが圧縮されている場合、クローラーはダウンロードして処理する必要があります。クローラーを実行すると、ファイルを調査して形式と圧縮タイプを判定し、これらのプロパティをデータカタログに書き込みます。一部のファイル形式 (Apache Parquet など) では、ファイルの書き込み時にファイルのパートを圧縮できます。これらのファイルでは、圧縮されたデータはファイルの内部コンポーネントであり、AWS Glue はテーブルをデータカタログ内に書き込むときに compressionType プロパティを事前設定しません。一方、ファイル全体を圧縮アルゴリズム (gzip など) で圧縮する場合は、テーブルをデータカタログ内に書き込むときに compressionType プロパティが事前設定されます。

クローラーは、作成するテーブルの名前を生成します。AWS Glue Data Catalog に保存されるテーブルの名前は、以下のルールに従います。

  • 英数字とアンダースコア (_) のみを使用できます。

  • カスタムプレフィックスは 64 文字より長くすることはできません。

  • 名前の最大長は 128 文字より長くすることはできません。クローラーは、生成した名前が制限内に収まるように切り詰めます。

  • 重複するテーブル名が発生した場合、クローラーは名前にハッシュ文字列のサフィックスを追加します。

クローラーが複数回実行される場合 (おそらくスケジュールに基づいて)、データストア内の新規または変更されたファイルやテーブルが検索されます。クローラーの出力には、前回の実行以降に検索された、新しいテーブルとパーティションが含まれています。