Kirim langkah JAR kustom - Amazon EMR

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Kirim langkah JAR kustom

JAR khusus menjalankan program Java yang dikompilasi yang dapat Anda unggah ke Amazon S3. Anda harus mengkompilasi program terhadap versi Hadoop yang ingin Anda luncurkan, dan mengirimkan CUSTOM_JAR langkah ke cluster EMR Amazon Anda. Untuk informasi selengkapnya tentang cara mengkompilasi file JAR, lihatBangun binari menggunakan Amazon EMR.

Untuk informasi lebih lanjut tentang membangun MapReduce aplikasi Hadoop, lihat MapReduce Tutorial dalam dokumentasi Apache Hadoop.

Bagian ini mencakup dasar-dasar pengiriman langkah JAR kustom di Amazon EMR. Mengirimkan langkah JAR kustom memungkinkan Anda untuk menulis skrip untuk memproses data Anda dengan bahasa pemrograman Java.

Kirim langkah JAR khusus dengan konsol

Contoh ini menjelaskan cara menggunakan konsol Amazon EMR untuk mengirimkan langkah JAR kustom untuk klaster berjalan.

Untuk mengirimkan langkah JAR khusus dengan konsol
  1. Buka konsol Amazon EMR di https://console.aws.amazon.com /emr.

  2. Pada halaman Daftar Klaster, pilih tautan untuk klaster Anda.

  3. Gulir ke bagian Langkah dan perluas, lalu pilih Tambahkan langkah.

  4. Di dialog Tambahkan Langkah:

    • Untuk Tipe langkah, pilih JAR Kustom.

    • Untuk Nama, terima nama default (Kustom JAR) atau ketik nama baru.

    • Untuk Lokasi JAR S3, ketik atau jelajahi ke lokasi file JAR Anda. Lokasi JAR mungkin merupakan jalur ke S3 atau kelas java yang memenuhi syarat di classpath..

    • Untuk Pendapat, ketik argumen yang diperlukan sebagai string yang dipisahkan spasi atau biarkan kosong.

    • Untuk Tindakan pada kegagalan, terima opsi default (Lanjutkan).

  5. Pilih Tambahkan. Langkah muncul di konsol dengan status Tertunda.

  6. Status langkah perubahan dari Tertunda ke Sedang Berjalan hingga Selesai sebagai langkah berjalan. Untuk memperbarui status, pilih ikon Refresh di atas kolom Tindakan.

Meluncurkan cluster dan mengirimkan langkah JAR khusus dengan AWS CLI

Untuk meluncurkan cluster dan mengirimkan langkah JAR khusus dengan AWS CLI

Untuk meluncurkan cluster dan mengirimkan langkah JAR khusus dengan AWS CLI, ketik create-cluster subperintah dengan --steps parameter.

  • Untuk meluncurkan cluster dan mengirimkan langkah JAR kustom, ketik perintah berikut, ganti myKey dengan nama EC2 key pair Anda, dan ganti amzn-s3-demo-bucket dengan nama bucket Anda.

    aws emr create-cluster --name "Test cluster" --release-label emr-7.7.0 \ --applications Name=Hue Name=Hive Name=Pig --use-default-roles \ --ec2-attributes KeyName=myKey --instance-type m5.xlarge --instance-count 3 \ --steps Type=CUSTOM_JAR,Name="Custom JAR Step",ActionOnFailure=CONTINUE,Jar=pathtojarfile,Args=["pathtoinputdata","pathtooutputbucket","arg1","arg2"]
    catatan

    Karakter lanjutan baris Linux (\) disertakan agar mudah dibaca Karakter ini bisa dihapus atau digunakan dalam perintah Linux. Untuk Windows, hapus atau ganti dengan tanda sisipan (^).

    Saat Anda menentukan jumlah instance tanpa --instance-groups parameter, satu node primer diluncurkan, dan instance yang tersisa diluncurkan sebagai node inti. Semua node menggunakan jenis instance yang Anda tentukan dalam perintah.

    catatan

    Jika sebelumnya Anda belum membuat peran layanan EMR Amazon dan profil EC2 instans default, ketik aws emr create-default-roles untuk membuatnya sebelum mengetik subperintah. create-cluster

    Untuk informasi selengkapnya tentang penggunaan perintah EMR Amazon di AWS CLI, lihat. https://docs.aws.amazon.com/cli/latest/reference/emr

Ketergantungan pihak ketiga

Kadang-kadang mungkin perlu untuk memasukkan dalam MapReduce classpath JARs untuk digunakan dengan program Anda. Anda memiliki dua pilihan untuk melakukan hal ini:

  • Sertakan --libjars s3://URI_to_JAR dalam opsi langkah untuk prosedur di Meluncurkan cluster dan mengirimkan langkah JAR khusus dengan AWS CLI.

  • Luncurkan cluster dengan mapreduce.application.classpath pengaturan yang dimodifikasi dimapred-site.xml. Gunakan klasifikasi konfigurasi mapred-site. Untuk membuat cluster dengan langkah menggunakan AWS CLI, ini akan terlihat seperti berikut:

    aws emr create-cluster --release-label emr-7.7.0 \ --applications Name=Hue Name=Hive Name=Pig --use-default-roles \ --instance-type m5.xlarge --instance-count 2 --ec2-attributes KeyName=myKey \ --steps Type=CUSTOM_JAR,Name="Custom JAR Step",ActionOnFailure=CONTINUE,Jar=pathtojarfile,Args=["pathtoinputdata","pathtooutputbucket","arg1","arg2"] \ --configurations https://s3.amazonaws.com/amzn-s3-demo-bucket/myfolder/myConfig.json

    myConfig.json:

    [ { "Classification": "mapred-site", "Properties": { "mapreduce.application.classpath": "path1,path2" } } ]

    Daftar jalur yang dipisahkan koma harus ditambahkan ke classpath JVM untuk setiap tugas.