次のスクリプトを使用して、DynamoDB から S3 にデータをエクスポートしています。
CREATE EXTERNAL TABLE TableDynamoDB(col1 String, col2 String)
STORED BY 'org.apache.hadoop.hive.dynamodb.DynamoDBStorageHandler' TBLPROPERTIES (
"dynamodb.table.name" = "TableDynamoDB",
"dynamodb.column.mapping" = "col1:col1,col2:col2"
);
CREATE EXTERNAL TABLE TableS3(col1 String, col2 String)
ROW FORMAT DELIMITED FIELDS TERMINATED BY ','
LOCATION 's3://myBucket/DataFiles/MyData.txt';
INSERT OVERWRITE TABLE TableS3
SELECT * FROM TableDynamoDB;
S3 では、出力を特定のファイル名 (MyData.txt) に書き込みたいのですが、現在の動作方法は、上記のスクリプトで「MyData.txt」という名前のフォルダーを作成し、この下にランダムな名前のファイルを生成することです。フォルダ。
HIVEを使用してS3でファイル名を指定することはまったく可能ですか?
ありがとうございました!