このトピックでは、Data Lake Formation(DLF)を使用して、SQLステートメントを実行することにより、Hologres内部テーブルのデータをオブジェクトストレージサービス(OSS)に書き戻し、外部エンジンを使用して書き込まれたデータをクエリする方法について説明します。
前提条件
DLFがアクティブ化されており、環境設定が完了していること。 Hologres外部テーブルを使用してOSSからデータを読み取ることができることを確認してください。 詳細については、「DLFを使用してOSSからデータを読み取り、OSSにデータを書き込む」トピックの手順セクションをご参照ください。
データレイクへのデータのエクスポート
データが更新された場合は、データをOSSに書き戻してから、E-MapReduce(EMR)などの外部エンジンを使用してデータを処理する必要があります。 外部テーブルを使用して、SQLステートメントを実行してデータをOSSに直接挿入できます。
エクスポートできるデータ形式は、ORC、Parquet、CSV、SequenceFile、Hudi、および Paimon のみです。
データを OSS に書き戻します。
次の SQL ステートメントを実行して、Hologres 内部テーブルのデータを OSS に書き戻します。
INSERT INTO <foreign_table_name>(<col_name>,......) SELECT <col_name>,...... FROM <holo_table_name>;次の表に、SQL ステートメントのパラメーターを示します。
パラメーター
説明
foreign_table_name
外部テーブルの名前。
holo_table_name
Hologres 内部テーブルの名前。
col_name
列の名前。
OSS に書き戻されたデータをクエリします。
データが OSS に書き戻された後、EMR の Hive または Spark エンジンで次の SQL ステートメントを実行して、書き込まれたデータをクエリできます。
SELECT * FROM <foreign_table_name> WHERE <col_name> = value;成功メッセージが返された場合、Hologres はデータを OSS に書き戻しており、EMR はデータを読み取ることができます。