【AWS】Parquet/ORC形式への変換まとめ

AWS

1. Kinesis Data FirehoseでのParquet/ORC形式への変換

Kinesis Data Firehoseは、データをストリームとして受け取り、そのデータをストレージ(Amazon S3、Redshift、Elasticsearch、またはSplunk)に送るためのサービスです。Firehoseは、データをParquetまたはORC形式に変換してS3に保存する機能を持っています。具体的な手順は以下の通りです。

  • Firehoseの配信ストリームを設定するときに、Amazon S3を出力先に選択します。
  • 変換設定(Data Transformation)」でParquetまたはORC形式に変換するオプションを有効にします。
  • この設定は、Firehoseの AWS Lambda 関数や組み込みの 変換機能 によって実行されます。Firehoseがデータを受け取った後、自動的にParquetまたはORCに変換して、S3に保存します。

つまり、Kinesis Data Firehoseは、リアルタイムストリーミングデータをParquetまたはORC形式に変換し、S3に格納することが可能です。

2. Glue Data CatalogでのParquet/ORC形式への変換

AWS Glue自体はデータ統合サービスで、特にGlue ETL(Extract, Transform, Load)ジョブを使ってデータを変換、処理、統合するのに便利です。Glue Data Catalogは、メタデータを管理するためのサービスで、データがどこに保存されているか、どのような構造を持っているかをカタログ化します。Glue Data Catalog自体は、データの変換を行いません。

しかし、AWS Glue ETLジョブでは、データをParquetやORC形式に変換することが可能です。ETLジョブを使用すると、以下の手順でデータを変換できます。

  • Glueジョブでソースデータ(CSV、JSONなど)をS3から読み込みます。
  • PySparkまたはScalaのスクリプトを使ってデータを加工・変換します。
  • そのデータをParquetORC形式でS3に書き出します。

Glue Data Catalogは、S3に格納されているParquetやORC形式のデータをテーブル定義として管理し、クエリ可能にしますが、カタログ自体が形式変換を行うことはありません。つまり、Glue ETLジョブを使ってデータをParquetやORCに変換することは可能ですが、Glue Data Catalogはあくまでデータのメタデータを管理する役割です。


まとめ

  • Kinesis Data Firehose:リアルタイムデータストリームを直接ParquetまたはORC形式に変換し、S3に保存可能。
  • AWS Glue ETLジョブ:既存データを読み込み、加工してParquetまたはORC形式に変換可能(バッチ処理向け)。Glue Data Catalogは形式変換はできませんが、メタデータの管理に使用されます。

コメント

タイトルとURLをコピーしました