Ich verwende eine EMR-Aktivität in AWS Datenpipeline. Diese EMR-Aktivität führt ein Hive-Skript im EMR-Cluster aus. Es nimmt Dynamo DB als Eingabe und speichert Daten in S3.
Dies ist der EMR Schritt verwendet in EMR Aktivität
s3://elasticmapreduce/libs/script-runner/script-runner.jar,s3://elasticmapreduce/libs/hive/hive-script,--run-hive-script,--hive-versions,latest,--args,-f,s3://my-s3-bucket/hive/my_hive_script.q,-d,DYNAMODB_INPUT_TABLE1=MyTable,-d,S3_OUTPUT_BUCKET=#{output.directoryPath}
wo
out.direcoryPath ist:
s3://my-s3-bucket/output/#{format(@scheduledStartTime,"YYYY-MM-dd")}
So schafft dies einen Ordner und eine Datei in S3. (Technisch gesehen ist es schafft zwei Schlüssel 2017-03-18/<some_random_number>
und 2017-03-18_$folder$
)
2017-03-18
2017-03-18_$folder$
Wie Schaffung dieser zusätzlichen leeren _$folder$
Dateien zu vermeiden.
EDIT: Ich fand eine Lösung bei https://issues.apache.org/jira/browse/HADOOP-10400 aufgeführt, aber ich weiß nicht, wie man es in AWS Datenpipeline implementieren.
Ich habe eine Lösung auf https://issues.apache.org/jira/browse/HADOOP-10400 aufgeführt, aber ich weiß nicht, wie Sie es in AWS-Daten implementieren Pipeline. –
@saurabhagarwal Ich glaube, Sie können nicht, mit EMR - es ist ein Managed Service. –