Hubungkan Amazon EMR dan RStudio di Amazon SageMaker

Hubungkan Amazon EMR dan RStudio di Amazon SageMaker

RStudio di Amazon SageMaker adalah lingkungan pengembangan terintegrasi (IDE) RStudio Workbench pertama yang dikelola sepenuhnya di industri di cloud. Anda dapat dengan cepat meluncurkan RStudio IDE yang sudah dikenal dan memanggil sumber daya komputasi yang mendasarinya tanpa mengganggu pekerjaan Anda, sehingga memudahkan untuk membangun solusi pembelajaran mesin (ML) dan analitik dalam skala R.

Sehubungan dengan alat seperti RStudio di SageMaker, pengguna menganalisis, mengubah, dan menyiapkan data dalam jumlah besar sebagai bagian dari ilmu data dan alur kerja ML. Ilmuwan data dan insinyur data menggunakan Apache Spark, Hive, dan Presto berjalan Amazon ESDM untuk pengolahan data skala besar. Menggunakan RStudio di SageMaker dan Amazon EMR bersama-sama, Anda dapat terus menggunakan IDE RStudio untuk analisis dan pengembangan, sembari menggunakan klaster terkelola Amazon EMR untuk pemrosesan data yang lebih besar.

Dalam postingan ini, kami mendemonstrasikan cara menghubungkan RStudio Anda di domain SageMaker dengan klaster EMR.

Ikhtisar solusi

Kami menggunakan Apache Libya koneksi untuk mengirimkan a gemerlap tugas dari RStudio di SageMaker ke klaster EMR. Hal ini ditunjukkan dalam diagram berikut.

Lingkup Solusi
Semua kode yang ditunjukkan di pos tersedia di kami Repositori GitHub. Kami menerapkan arsitektur solusi berikut.

Hubungkan Amazon EMR dan RStudio di Amazon SageMaker PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Prasyarat

Sebelum menerapkan sumber daya apa pun, pastikan Anda memiliki semua persyaratan untuk menyiapkan dan menggunakan RStudio di SageMaker dan Amazon EMR:

Kami juga akan membangun RStudio khusus pada gambar SageMaker, jadi pastikan Anda menjalankan Docker dan semua izin yang diperlukan. Untuk informasi lebih lanjut, lihat Gunakan gambar khusus untuk menghadirkan lingkungan pengembangan Anda sendiri ke RStudio di Amazon SageMaker.

Buat sumber daya dengan AWS CloudFormation

Kami menggunakan Formasi AWS Cloud tumpukan untuk menghasilkan infrastruktur yang diperlukan.

Jika Anda sudah memiliki domain RStudio dan klaster EMR yang sudah ada, Anda dapat melewati langkah ini dan mulai membuat RStudio kustom pada gambar SageMaker. Ganti informasi klaster EMR dan domain RStudio sebagai ganti klaster EMR dan domain RStudio yang dibuat di bagian ini.

Meluncurkan tumpukan ini akan membuat sumber daya berikut:

  • Dua subnet pribadi
  • Kluster EMR Spark
  • Lem AWS database dan tabel
  • Domain SageMaker dengan RStudio
  • Profil pengguna SageMaker RStudio
  • Peran layanan IAM untuk domain SageMaker RStudio
  • Peran layanan IAM untuk profil pengguna SageMaker RStudio

Selesaikan langkah-langkah berikut untuk membuat sumber daya Anda:

Pilih Luncurkan Stack untuk membuat tumpukan.

Hubungkan Amazon EMR dan RStudio di Amazon SageMaker PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

  1. pada Buat tumpukan halaman, pilih Selanjutnya.
  2. pada Tentukan detail tumpukan halaman, berikan nama untuk tumpukan Anda dan biarkan opsi yang tersisa sebagai default, lalu pilih Selanjutnya.
  3. pada Konfigurasikan opsi tumpukan halaman, biarkan opsi sebagai default dan pilih Selanjutnya.
  4. pada Halaman ulasan, pilih
  5. Saya mengakui bahwa AWS CloudFormation dapat membuat sumber daya IAM dengan nama khusus dan
  6. Saya memahami bahwa AWS CloudFormation mungkin memerlukan kemampuan berikut: CAPABILITY_AUTO_EXPAND.
  7. Pilih Buat tumpukan.

Hubungkan Amazon EMR dan RStudio di Amazon SageMaker PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Template menghasilkan lima tumpukan.

Hubungkan Amazon EMR dan RStudio di Amazon SageMaker PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Untuk melihat klaster EMR Spark yang telah dibuat, navigasikan ke konsol Amazon EMR. Anda akan melihat cluster yang dibuat untuk Anda dipanggil sagemaker. Ini adalah klaster tempat kami terhubung melalui RStudio di SageMaker.

Hubungkan Amazon EMR dan RStudio di Amazon SageMaker PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Bangun RStudio khusus pada gambar SageMaker

Kami telah membuat gambar khusus yang akan menginstal semua dependensi sparklyr, dan akan membuat koneksi ke cluster EMR yang kami buat.

Jika Anda menggunakan klaster EMR dan domain RStudio Anda sendiri, ubah skrip sesuai kebutuhan.

Pastikan Docker berjalan. Mulailah dengan masuk ke repositori proyek kami:

cd sagemaker-rstudio-emr/sparklyr-image
./build-r-image.sh

Kami sekarang akan membuat gambar Docker dan mendaftarkannya ke RStudio kami di domain SageMaker.

  1. Di konsol SageMaker, pilih Domain di panel navigasi.
  2. Pilih domainnya select rstudio-domain.
  3. pada Lingkungan Hidup tab, pilih Lampirkan gambar.
    Hubungkan Amazon EMR dan RStudio di Amazon SageMaker PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.
    Sekarang kita lampirkan gambar sparklyr yang kita buat tadi ke domain.
  4. Untuk Pilih sumber gambar, pilih Gambar yang ada.
  5. Pilih gambar gemerlap yang kami buat.
    Hubungkan Amazon EMR dan RStudio di Amazon SageMaker PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.
  6. Untuk Properti gambar, biarkan opsi sebagai default.
  7. Untuk Jenis gambar, pilih gambar RStudio.
  8. Pilih Kirim.
    Hubungkan Amazon EMR dan RStudio di Amazon SageMaker PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.
    Validasi gambar telah ditambahkan ke domain. Mungkin diperlukan waktu beberapa menit agar gambar terpasang sepenuhnya.
    Hubungkan Amazon EMR dan RStudio di Amazon SageMaker PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.
  9. Saat tersedia, masuk ke RStudio di konsol SageMaker menggunakan rstudio-user profil yang telah dibuat.
  10. Dari sini, buat session dengan gambar gemerlap yang kita buat sebelumnya.
    Hubungkan Amazon EMR dan RStudio di Amazon SageMaker PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.
    Pertama, kita harus terhubung ke cluster ESDM kita.
  11. Di panel koneksi, pilih Koneksi Baru.
  12. Pilih cuplikan kode koneksi cluster EMR dan pilih Hubungkan ke Amazon EMR Cluster.
    Hubungkan Amazon EMR dan RStudio di Amazon SageMaker PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.
    Setelah kode koneksi berjalan, Anda akan melihat koneksi Spark melalui Livy, tetapi tidak ada tabel.
    Hubungkan Amazon EMR dan RStudio di Amazon SageMaker PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.
  13. Ubah database menjadi credit_card:
    tbl_change_db(sc, โ€œcredit_cardโ€)
  14. Pilih Segarkan Data Koneksi.
    Anda sekarang dapat melihat tabel.
    Hubungkan Amazon EMR dan RStudio di Amazon SageMaker PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.
  15. Sekarang navigasikan ke rstudio-sparklyr-code-walkthrough.md file.

Ini memiliki satu set transformasi Spark yang dapat kita gunakan pada dataset kartu kredit kita untuk mempersiapkannya untuk pemodelan. Kode berikut adalah kutipannya:

Mari count() berapa banyak transaksi yang ada di tabel transaksi. Tapi pertama-tama kita perlu men-cache Use the tbl() fungsi.

users_tbl <- tbl(sc, "users")
cards_tbl <- tbl(sc, "cards")
transactions_tbl <- tbl(sc, "transactions")

Mari kita menghitung jumlah baris untuk setiap tabel.

count(users_tbl)
count(cards_tbl)
count(transactions_tbl)

Sekarang mari daftarkan tabel kita sebagai Spark Data Frames dan tarik ke seluruh cluster dalam cache memori untuk kinerja yang lebih baik. Kami juga akan memfilter tajuk yang ditempatkan di baris pertama untuk setiap tabel.

users_tbl <- tbl(sc, 'users') %>% filter(gender != 'Gender')
sdf_register(users_tbl, "users_spark")
tbl_cache(sc, 'users_spark')
users_sdf <- tbl(sc, 'users_spark') cards_tbl <- tbl(sc, 'cards') %>% filter(expire_date != 'Expires')
sdf_register(cards_tbl, "cards_spark")
tbl_cache(sc, 'cards_spark')
cards_sdf <- tbl(sc, 'cards_spark') transactions_tbl <- tbl(sc, 'transactions') %>% filter(amount != 'Amount')
sdf_register(transactions_tbl, "transactions_spark")
tbl_cache(sc, 'transactions_spark')
transactions_sdf <- tbl(sc, 'transactions_spark')

Untuk melihat daftar lengkap perintah, lihat rstudio-sparklyr-code-walkthrough.md file.

Membersihkan

Untuk membersihkan sumber daya apa pun agar tidak menimbulkan biaya berulang, hapus templat root CloudFormation. Hapus juga semua Layanan File Amazon Elastis (Amazon EFS) mount dibuat dan apa saja Layanan Penyimpanan Sederhana Amazon (Amazon S3) ember dan objek dibuat.

Kesimpulan

Integrasi RStudio di SageMaker dengan Amazon EMR memberikan solusi andal untuk analisis data dan tugas pemodelan di cloud. Dengan menghubungkan RStudio di SageMaker dan membuat koneksi Livy ke Spark di EMR, Anda dapat memanfaatkan sumber daya komputasi kedua platform untuk pemrosesan kumpulan data besar yang efisien. RStudio, salah satu IDE yang paling banyak digunakan untuk analisis data, memungkinkan Anda memanfaatkan infrastruktur yang dikelola sepenuhnya, kontrol akses, jaringan, dan kapabilitas keamanan SageMaker. Sementara itu, koneksi Livy ke Spark di Amazon EMR menyediakan cara untuk melakukan pemrosesan terdistribusi dan penskalaan tugas pemrosesan data.

Jika Anda tertarik untuk mempelajari lebih lanjut tentang penggunaan alat ini bersama-sama, postingan ini berfungsi sebagai titik awal. Untuk informasi lebih lanjut, lihat RStudio di Amazon SageMaker. Jika Anda memiliki saran atau peningkatan fitur, silakan buat permintaan penarikan di repo GitHub kami atau tinggalkan komentar di pos ini!


Tentang Penulis

Hubungkan Amazon EMR dan RStudio di Amazon SageMaker PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.

Ryan Garner adalah Ilmuwan Data dengan Layanan Profesional AWS. Dia bersemangat membantu pelanggan AWS menggunakan R untuk memecahkan masalah Ilmu Data dan Pembelajaran Mesin mereka.


Hubungkan Amazon EMR dan RStudio di Amazon SageMaker PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.
Raja Pathak
 adalah Arsitek Solusi Senior dan Teknolog yang berspesialisasi dalam Layanan Keuangan (Asuransi, Perbankan, Pasar Modal) dan Pembelajaran Mesin. Dia berspesialisasi dalam Pemrosesan Bahasa Alami (NLP), Model Bahasa Besar (LLM), dan proyek infrastruktur dan operasi Pembelajaran Mesin (MLOps).


Hubungkan Amazon EMR dan RStudio di Amazon SageMaker PlatoBlockchain Data Intelligence. Pencarian Vertikal. Ai.Saiteja Pudi
 adalah Arsitek Solusi di AWS, berbasis di Dallas, Tx. Dia telah bersama AWS selama lebih dari 3 tahun, membantu pelanggan mendapatkan potensi sebenarnya dari AWS dengan menjadi penasihat tepercaya mereka. Dia berasal dari latar belakang pengembangan aplikasi, tertarik pada Ilmu Data dan Pembelajaran Mesin.

Stempel Waktu:

Lebih dari Pembelajaran Mesin AWS