Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Différences entre l'DistCp utilitaire S3 et les versions AMI antérieures d'Amazon EMR
DistCp Versions S3 prises en charge dans Amazon EMR
Les DistCp versions S3 suivantes sont prises en charge dans les versions Amazon EMR AMI. DistCpLes versions S3 postérieures à 1.0.7 se trouvent directement sur les clusters. Utilisez le fichier JAR dans /home/hadoop/lib
pour bénéficier des dernières fonctions.
Version | Description | Date de publication |
---|---|---|
1.0.8 | Ajoute les options --appendToLastFile , --requirePreviousManifest et --storageClass . |
3 janvier 2014 |
1.0.7 | Ajoute l'option --s3ServerSideEncryption . |
2 mai 2013 |
1.0.6 | Ajoute l'option --s3Endpoint . |
6 août 2012 |
1.0.5 | Améliore la capacité à spécifier la version de S3 DistCp à exécuter. | 27 juin 2012 |
1.0.4 | Améliore l'option --deleteOnSuccess . |
19 juin 2012 |
1.0.3 | Ajoute une prise en charge pour les options --numberFiles et --startingIndex . |
12 juin 2012 |
1.0.2 | Améliore l'affectation des noms lors de l'utilisation de groupes. | 6 juin 2012 |
1.0.1 | Version initiale de S3DistCp. | 19 janvier 2012 |
Ajouter une étape de DistCp copie S3 à un cluster
Pour ajouter une étape de DistCp copie S3 à un cluster en cours d'exécution, tapez la commande suivante, j-3GYXXXXXX9IOK
remplacez-la par votre ID de cluster et remplacez amzn-s3-demo-bucket
par le nom de votre compartiment Amazon S3.
Note
Les caractères de continuation de ligne Linux (\) sont inclus pour des raisons de lisibilité. Ils peuvent être supprimés ou utilisés dans les commandes Linux. Pour Windows, supprimez-les ou remplacez-les par un caret (^).
aws emr add-steps --cluster-id
j-3GYXXXXXX9IOK
\ --steps Type=CUSTOM_JAR
,Name="S3DistCp step"
,Jar=/home/hadoop/lib/emr-s3distcp-1.0.jar
,\ Args=["--s3Endpoint
,s3-eu-west-1.amazonaws.com
",\ "--src
,s3://amzn-s3-demo-bucket/logs/j-3GYXXXXXX9IOJ/node/
",\ "--dest
,hdfs:///output
",\ "--srcPattern
,.*[a-zA-Z,]+
"]
Exemple Charger CloudFront les journaux Amazon dans HDFS
Cet exemple charge les CloudFront journaux Amazon dans HDFS en ajoutant une étape à un cluster en cours d'exécution. Au cours du processus, il modifie le format de compression de Gzip (format CloudFront par défaut) en LZO. Cela est utile, car les données compressées à l'aide de LZO peuvent être divisées en plusieurs mappages lorsqu'elles sont décompressées, si bien que vous n'avez pas à attendre la fin de la compression, comme vous le faites pour Gzip. Cela fournit de meilleures performances lorsque vous analysez les données à l'aide d'Amazon EMR. Cet exemple améliore également les performances en utilisant l'expression régulière spécifiée dans l'option --groupBy
pour combiner tous les journaux d'une heure donnée dans un seul fichier. Les clusters Amazon EMR sont plus efficaces lors du traitement de quelques fichiers volumineux compressés LZO que lors du traitement de nombreux petits fichiers compressés au format GZIP. Pour fractionner les fichiers LZO, vous devez les indexer et utiliser la bibliothèque tierce hadoop-lzo.
Pour charger CloudFront les journaux Amazon dans HDFS, tapez la commande suivante, remplacez-la j-3GYXXXXXX9IOK
par votre ID de cluster et remplacez par le nom amzn-s3-demo-bucket
de votre compartiment Amazon S3.
Note
Les caractères de continuation de ligne Linux (\) sont inclus pour des raisons de lisibilité. Ils peuvent être supprimés ou utilisés dans les commandes Linux. Pour Windows, supprimez-les ou remplacez-les par un caret (^).
aws emr add-steps --cluster-id
j-3GYXXXXXX9IOK
\ --steps Type=CUSTOM_JAR
,Name="S3DistCp step"
,Jar=/home/hadoop/lib/emr-s3distcp-1.0.jar
,\ Args=["--src
,s3://amzn-s3-demo-bucket/cf
","--dest
,hdfs:///local
",\ "--groupBy
,.*XABCD12345678.([0-9]+-[0-9]+-[0-9]+-[0-9]+).*
",\ "--targetSize
,128
", "--outputCodec
,lzo
","--deleteOnSuccess
"]
Considérons que l'exemple précédent est exécuté sur les fichiers journaux CloudFront suivants.
s3://amzn-s3-demo-bucket/cf/XABCD12345678.2012-02-23-01.HLUS3JKx.gz
s3://amzn-s3-demo-bucket/cf/XABCD12345678.2012-02-23-01.I9CNAZrg.gz
s3://amzn-s3-demo-bucket/cf/XABCD12345678.2012-02-23-02.YRRwERSA.gz
s3://amzn-s3-demo-bucket/cf/XABCD12345678.2012-02-23-02.dshVLXFE.gz
s3://amzn-s3-demo-bucket/cf/XABCD12345678.2012-02-23-02.LpLfuShd.gz
S3 DistCp copie, concatène et compresse les fichiers dans les deux fichiers suivants, le nom du fichier étant déterminé par la correspondance établie par l'expression régulière.
hdfs:///local/2012-02-23-01.lzo
hdfs:///local/2012-02-23-02.lzo