Susun pekerjaan ETL Anda untuk MongoDB Atlas dengan AWS Glue

Susun pekerjaan ETL Anda untuk MongoDB Atlas dengan AWS Glue

Node Sumber: 2634433

Dalam lingkungan bisnis berbasis data saat ini, organisasi menghadapi tantangan untuk mempersiapkan dan mengubah data dalam jumlah besar secara efisien untuk keperluan analitik dan ilmu data. Bisnis perlu membangun gudang data dan danau data berdasarkan data operasional. Hal ini didorong oleh kebutuhan untuk memusatkan dan mengintegrasikan data yang berasal dari sumber yang berbeda.

Pada saat yang sama, data operasional seringkali berasal dari aplikasi yang didukung oleh penyimpanan data lawas. Memodernisasi aplikasi memerlukan arsitektur layanan mikro, yang pada gilirannya memerlukan konsolidasi data dari berbagai sumber untuk membangun penyimpanan data operasional. Tanpa modernisasi, aplikasi lawas dapat meningkatkan biaya pemeliharaan. Memodernisasi aplikasi melibatkan perubahan mesin basis data yang mendasarinya menjadi basis data berbasis dokumen modern seperti MongoDB.

Kedua tugas ini (membangun danau data atau gudang data dan modernisasi aplikasi) melibatkan perpindahan data, yang menggunakan proses ekstrak, transformasi, dan muat (ETL). Pekerjaan ETL adalah fungsionalitas utama untuk memiliki proses yang terstruktur dengan baik agar berhasil.

Lem AWS adalah layanan integrasi data tanpa server yang memudahkan untuk menemukan, menyiapkan, memindahkan, dan mengintegrasikan data dari berbagai sumber untuk analitik, pembelajaran mesin (ML), dan pengembangan aplikasi. Atlas MongoDB adalah rangkaian terintegrasi dari database cloud dan layanan data yang menggabungkan pemrosesan transaksional, pencarian berbasis relevansi, analitik real-time, dan sinkronisasi data mobile-to-cloud dalam arsitektur yang elegan dan terintegrasi.

Dengan menggunakan AWS Glue dengan MongoDB Atlas, organisasi dapat merampingkan proses ETL mereka. Dengan solusi database yang terkelola sepenuhnya, dapat diskalakan, dan aman, MongoDB Atlas menyediakan lingkungan yang fleksibel dan andal untuk menyimpan dan mengelola data operasional. Bersama-sama, AWS Glue ETL dan MongoDB Atlas adalah solusi andal bagi organisasi yang ingin mengoptimalkan cara mereka membangun data lake dan gudang data, serta memodernisasi aplikasi mereka, untuk meningkatkan kinerja bisnis, mengurangi biaya, dan mendorong pertumbuhan dan kesuksesan.

Dalam posting ini, kami menunjukkan cara memigrasikan data dari Layanan Penyimpanan Sederhana Amazon (Amazon S3) bucket ke MongoDB Atlas menggunakan AWS Glue ETL, dan cara mengekstrak data dari MongoDB Atlas ke data lake berbasis Amazon S3.

Ikhtisar solusi

Dalam posting ini, kami mengeksplorasi kasus penggunaan berikut:

  • Mengekstrak data dari MongoDB – MongoDB adalah database populer yang digunakan oleh ribuan pelanggan untuk menyimpan data aplikasi dalam skala besar. Pelanggan perusahaan dapat memusatkan dan mengintegrasikan data yang berasal dari beberapa penyimpanan data dengan membangun data lake dan gudang data. Proses ini melibatkan penggalian data dari penyimpanan data operasional. Saat data berada di satu tempat, pelanggan dapat dengan cepat menggunakannya untuk kebutuhan business intelligence atau untuk ML.
  • Menyerap data ke dalam MongoDB – MongoDB juga berfungsi sebagai database no-SQL untuk menyimpan data aplikasi dan membangun penyimpanan data operasional. Memodernisasi aplikasi seringkali melibatkan migrasi penyimpanan operasional ke MongoDB. Pelanggan perlu mengekstrak data yang ada dari database relasional atau dari file datar. Aplikasi seluler dan web sering kali mengharuskan teknisi data untuk membuat pipeline data guna membuat satu tampilan data di Atlas sambil menyerap data dari berbagai sumber yang terpisah. Selama migrasi ini, mereka perlu menggabungkan database yang berbeda untuk membuat dokumen. Operasi gabungan yang rumit ini membutuhkan daya komputasi satu kali yang signifikan. Pengembang juga perlu membangun ini dengan cepat untuk memigrasikan data.

AWS Glue berguna dalam kasus ini dengan model bayar sesuai pemakaian dan kemampuannya untuk menjalankan transformasi kompleks di seluruh kumpulan data besar. Pengembang dapat menggunakan AWS Glue Studio untuk membuat saluran data semacam itu secara efisien.

Diagram berikut menampilkan alur kerja ekstraksi data dari MongoDB Atlas ke dalam bucket S3 menggunakan AWS Glue Studio.

Mengekstrak Data dari MongoDB Atlas ke dalam Amazon S3

Untuk menerapkan arsitektur ini, Anda memerlukan klaster MongoDB Atlas, bucket S3, dan Identitas AWS dan Manajemen Akses (IAM) untuk AWS Glue. Untuk mengonfigurasi sumber daya ini, lihat langkah prasyarat berikut ini GitHub repo.

Gambar berikut menampilkan alur kerja pemuatan data dari bucket S3 ke MongoDB Atlas menggunakan AWS Glue.

Memuat Data dari Amazon S3 ke MongoDB Atlas

Prasyarat yang sama diperlukan di sini: bucket S3, peran IAM, dan klaster MongoDB Atlas.

Muat data dari Amazon S3 ke MongoDB Atlas menggunakan AWS Glue

Langkah-langkah berikut menjelaskan cara memuat data dari bucket S3 ke MongoDB Atlas menggunakan tugas AWS Glue. Proses ekstraksi dari MongoDB Atlas ke Amazon S3 sangat mirip, kecuali skrip yang digunakan. Kami menyebutkan perbedaan antara kedua proses tersebut.

  1. Buat cluster gratis di MongoDB Atlas.
  2. Unggah contoh file JSON ke keranjang S3 Anda.
  3. Buat pekerjaan AWS Glue Studio baru dengan Editor skrip percikan .

UI Pembuatan Pekerjaan Glue Studio

  1. Bergantung pada apakah Anda ingin memuat atau mengekstrak data dari klaster MongoDB Atlas, masukkan memuat skrip or ekstrak skrip di editor skrip AWS Glue Studio.

Tangkapan layar berikut menunjukkan cuplikan kode untuk memuat data ke dalam klaster MongoDB Atlas.

Cuplikan kode untuk memuat data ke dalam MongoDB Atlas

Kode menggunakan Manajer Rahasia AWS untuk mengambil nama cluster MongoDB Atlas, nama pengguna, dan kata sandi. Kemudian, itu menciptakan a DynamicFrame untuk bucket S3 dan nama file diteruskan ke skrip sebagai parameter. Kode mengambil database dan nama koleksi dari konfigurasi parameter pekerjaan. Akhirnya, kode menulis DynamicFrame ke klaster MongoDB Atlas menggunakan parameter yang diambil.

  1. Buat peran IAM dengan izin seperti yang ditunjukkan pada tangkapan layar berikut.

Untuk lebih jelasnya, lihat Konfigurasikan peran IAM untuk pekerjaan ETL Anda.

Izin Peran IAM

  1. Beri nama pekerjaan dan berikan peran IAM yang dibuat pada langkah sebelumnya di Rincian pekerjaan Tab.
  2. Anda dapat membiarkan parameter lainnya sebagai default, seperti yang ditunjukkan pada tangkapan layar berikut.
    rincian pekerjaanDetail pekerjaan berlanjut
  3. Selanjutnya, tentukan parameter pekerjaan yang digunakan skrip dan berikan nilai default.
    Parameter masukan pekerjaan
  4. Simpan pekerjaan dan jalankan.
  5. Untuk mengonfirmasi proses yang berhasil, amati konten koleksi database MongoDB Atlas jika memuat data, atau bucket S3 jika Anda sedang melakukan ekstrak.

Tangkapan layar berikut menampilkan hasil pemuatan data yang berhasil dari bucket Amazon S3 ke dalam klaster MongoDB Atlas. Data sekarang tersedia untuk kueri di MongoDB Atlas UI.
Data Dimuat ke MongoDB Atlas Cluster

  1. Untuk memecahkan masalah proses Anda, tinjau amazoncloudwatch log menggunakan link pada pekerjaan itu Run Tab.

Tangkapan layar berikut menunjukkan bahwa tugas berjalan dengan sukses, dengan detail tambahan seperti tautan ke log CloudWatch.

Detail pekerjaan yang berhasil

Kesimpulan

Dalam postingan ini, kami menjelaskan cara mengekstrak dan menyerap data ke MongoDB Atlas menggunakan AWS Glue.

Dengan tugas ETL AWS Glue, kami sekarang dapat mentransfer data dari MongoDB Atlas ke sumber yang kompatibel dengan AWS Glue, dan sebaliknya. Anda juga dapat memperluas solusi untuk membangun analitik menggunakan layanan AWS AI dan ML.

Untuk mempelajari lebih lanjut, lihat Repositori GitHub untuk petunjuk langkah demi langkah dan kode contoh. Anda bisa mendapatkan Atlas MongoDB di AWS Marketplace.


Tentang Penulis

Igor Alekseev adalah Arsitek Solusi Mitra Senior di AWS dalam domain Data dan Analitik. Dalam perannya, Igor bekerja dengan mitra strategis membantu mereka membangun arsitektur yang kompleks dan dioptimalkan untuk AWS. Sebelum bergabung dengan AWS, sebagai Arsitek Data/Solusi, dia mengimplementasikan banyak proyek di domain Big Data, termasuk beberapa data lake di ekosistem Hadoop. Sebagai Insinyur Data, dia terlibat dalam penerapan AI/ML untuk deteksi penipuan dan otomatisasi kantor.


Babu Srinivasan
adalah Arsitek Solusi Mitra Senior di MongoDB. Dalam perannya saat ini, dia bekerja dengan AWS untuk membangun integrasi teknis dan arsitektur referensi untuk solusi AWS dan MongoDB. Dia memiliki lebih dari dua dekade pengalaman dalam teknologi Database dan Cloud. Dia bersemangat memberikan solusi teknis kepada pelanggan yang bekerja dengan beberapa Global System Integrators (GSIs) di berbagai wilayah geografis.

Stempel Waktu:

Lebih dari Data Besar AWS