Lewati ke Konten Utama

Pustaka Solusi AWS

Panduan untuk ETL berbasis SQL dengan Apache Spark di Amazon EKS

Buka alur kerja data yang efisien dan wawasan yang lebih cepat dengan solusi ekstrak, transformasi, dan muat (ETL) tingkat perusahaan yang dapat diskalakan

Gambaran Umum

Panduan ini membantu mengatasi kesenjangan antara persyaratan konsumsi data dan aktivitas pemrosesan data tingkat rendah yang dilakukan oleh praktik ETL umum. Untuk organisasi yang beroperasi pada sistem manajemen data berbasis SQL, beradaptasi dengan praktik rekayasa data modern dapat memperlambat kemajuan memanfaatkan wawasan yang kuat dari data mereka. Panduan ini memberikan desain sadar kualitas untuk meningkatkan produktivitas proses data melalui kerangka kerja data sumber terbuka Arc untuk pendekatan ETL yang berpusat pada pengguna. Panduan mempercepat interaksi dengan praktik ETL, mendorong kesederhanaan dan meningkatkan tingkat abstraksi untuk menyatukan aktivitas ETL baik dalam batch maupun streaming.

Kami juga menawarkan opsi untuk desain optimal menggunakan instans komputasi yang efisien (seperti Prosesor Graviton AWS) yang memungkinkan Anda mengoptimalkan kinerja dan biaya menjalankan pekerjaan ETL dalam skala besar di Amazon EKS.

Cara kerjanya

Diagram arsitektur ini mempercepat pemrosesan data dengan Apache Spark di Amazon EKS.

Pilar Well-Architected

Diagram arsitektur di atas adalah contoh Solusi yang dibuat dengan mempertimbangkan praktik terbaik Well-Architected. Untuk menjadi Well-Architected sepenuhnya, Anda harus mengikuti praktik terbaik Well-Architected sebanyak mungkin.

Dalam cluster Amazon EKS, instans Amazon Elastic Compute Cloud (Amazon EC2) (CPU X86_64, Graviton ARM64) bertindak sebagai node komputasi, menjalankan beban kerja Panduan. Pekerjaan Spark dieksekusi pada instans Amazon EC2 Spot yang disediakan secara elastis berdasarkan tuntutan beban kerja. CodeBuild dan CodePipeline mengotomatiskan proses GitOps, membangun gambar kontainer dari pembaruan kode Git dan mendorongnya ke registri pribadi Amazon ECR. Argo Workflow menjadwalkan pekerjaan ETL di Amazon EKS, secara otomatis menarik gambar Arc Docker dari Amazon ECR, mengunduh aset ETL dari bucket S3 artefak, dan mengirim log aplikasi ke CloudWatch. Penerapan otomatis dan eksekusi tugas Data ETL ini meminimalkan overhead operasional dan meningkatkan produktivitas. Selanjutnya, pipeline CI/CD menggunakan CodeBuild dan Code Pipeline membantu memastikan peningkatan dan pengembangan berkelanjutan sambil menyimpan gambar Arc Docker Guidance dengan aman di Amazon ECR.

Baca laporan resmi Keunggulan Operasional

Sumber daya cluster Amazon EKS digunakan dalam Amazon VPC, menyediakan isolasi jaringan logis dari internet publik. Amazon VPC mendukung fitur keamanan seperti titik akhir VPC (menjaga lalu lintas dalam jaringan AWS), grup keamanan, daftar kontrol akses jaringan (ACL), dan peran serta kebijakan AWS Identity and Access Management (IAM) untuk mengendalikan lalu lintas masuk dan keluar serta otorisasi. Registri gambar Amazon ECR menawarkan fitur keamanan tingkat wadah seperti pemindaian kerentanan. Amazon ECR dan Amazon EKS mengikuti registri Open Container Initiative (OCI) dan standar API Kubernetes, menggabungkan protokol keamanan yang ketat. IAM menyediakan kontrol akses untuk data aplikasi Amazon S3, sementara AWS Key Management Service (AWS KMS) mengenkripsi data saat diam di Amazon S3. Peran IAM untuk Akun Layanan (IRSA) di cluster Amazon EKS memungkinkan kontrol akses yang halus untuk pod, menegakkan kontrol akses berbasis peran, dan membatasi akses data Amazon S3 yang tidak sah. Secrets Manager menyimpan dan mengelola kredenSIAL dengan aman. CloudFront menyediakan titik masuk aman yang dikodekan SSL untuk alat web Jupyter dan Argo Workflows.

Baca laporan resmi Keamanan

Amazon EKS memungkinkan topologi yang sangat tersedia dengan menerapkan Kubernetes Control and Compute Planes di beberapa Availability Zone (AZ). Ini membantu memastikan ketersediaan berkelanjutan untuk aplikasi data—bahkan jika AZ mengalami interupsi—menghasilkan penerapan instans EC2 multi-AZ yang andal di Amazon EKS. Untuk penyimpanan data, Amazon S3 memberikan daya tahan dan ketersediaan yang tinggi, secara otomatis mereplikasi objek data di beberapa AZ dalam satu Wilayah. Selain itu, Amazon ECR menghosting gambar Docker dalam arsitektur yang sangat tersedia dan dapat diskalakan, yang andal mendukung penerapan dan penambahan aplikasi berbasis container. Amazon S3, Amazon EKS, dan Amazon ECR adalah layanan yang dikelola sepenuhnya yang dirancang untuk perjanjian tingkat layanan tinggi (SLA) dengan biaya operasional yang lebih rendah. Mereka memungkinkan penyebaran aplikasi penting bisnis untuk memenuhi persyaratan ketersediaan tinggi.

Baca laporan resmi Keandalan

N ode komputasi Amazon EC2 cluster Amazon EKS dapat secara dinamis meningkatkan dan menurunkan skala berdasarkan beban kerja aplikasi. Instans EC2 berbasis Graviton memberikan peningkatan efisiensi kinerja melalui prosesor berbasis ARM yang dirancang khusus, perangkat keras yang dioptimalkan, dan peningkatan arsitektur. Pola penyimpanan komputasi terpisah (dengan data input dan output yang disimpan di Amazon S3) meningkatkan efisiensi penskalaan komputasi dinamis. Katalog Data mer ampingkan manajemen metadata, terintegrasi dengan Athena secara mulus untuk manajemen metadata yang disederhanakan dan kinerja kueri yang ditingkatkan. Katalog Data mengotomatiskan crawling dan pemeliharaan metadata teknis untuk pemrosesan data dan kueri yang efisien. Athena menawarkan kueri cepat terhadap data Amazon S3 tanpa memindahkannya, semakin meningkatkan efisiensi alur kerja analitik.

Baca laporan resmi Efisiensi Performa

Amazon ECR adalah layanan terkelola untuk mengamankan dan mendukung aplikasi kontainer dengan biaya bulanan tetap untuk menyimpan dan menyajikan gambar kontainer. Node komputasi cluster Amazon EKS dapat menaikkan dan menurunkan skala berdasarkan beban kerja Spark, menawarkan jenis instans Graviton dan Spot yang hemat biaya. Katalog Data menyediakan repositori metadata tanpa server yang dikelola sepenuhnya, menghilangkan kebutuhan untuk menyiapkan dan memelihara database metadata yang berjalan lama dan mengurangi overhead dan biaya operasional. CodeBuild dan CodePipeline mengotomatiskan pembuatan dan penerapan image Docker Arc ETL Framework di lingkungan tanpa server, menghilangkan kebutuhan untuk penyediaan dan mengelola server build selain mengurangi biaya pemeliharaan infrastruktur.

Baca laporan resmi Optimisasi Biaya

Panduan ini menjalankan cluster Amazon EKS dengan tipe komputasi yang efisien berdasarkan prosesor Graviton. Amazon ECR menghilangkan kebutuhan akan perangkat keras khusus atau manajemen server fisik. Katalog Data dan Athena adalah layanan tanpa server, yang selanjutnya mengurangi dampak energi dan lingkungan. Mengoptimalkan lapisan kom putasi Amazon EKS untuk beban kerja Apache Spark skala besar meminimalkan dampak lingkungan dari beban kerja analitik. Anda memiliki fleksibilitas untuk memilih prosesor berbasis ARM berdasarkan kebutuhan kinerja dan prioritas keberlanjutan Anda.

Baca laporan resmi Keberlanjutan

Sumber daya implementasi

Kode sampel adalah titik awal. Kode sampel ini divalidasi industri, bersifat preskriptif tetapi tidak definitif, dan menjadi sarana untuk mencoba sebelum menggunakannya.
Buka panduan implementasi

Penafian

Kode sampel; pustaka perangkat lunak; alat baris perintah; bukti konsep; templat; atau teknologi terkait lainnya (termasuk yang sebelumnya disediakan oleh personel kami) disediakan untuk Anda sebagai Konten AWS berdasarkan Perjanjian Pelanggan AWS, atau perjanjian tertulis yang relevan antara Anda dan AWS (mana saja yang berlaku). Anda tidak boleh menggunakan Konten AWS ini di akun produksi Anda, atau pada produksi atau data penting lainnya. Anda bertanggung jawab untuk menguji, mengamankan, dan mengoptimalkan Konten AWS, seperti kode sampel, yang sesuai untuk penggunaan tingkat produksi berdasarkan praktik dan standar kontrol kualitas spesifik Anda. Melakukan deployment Konten AWS dapat dikenai biaya AWS untuk membuat atau menggunakan sumber daya AWS berbayar, seperti menjalankan instans Amazon EC2 atau menggunakan penyimpanan Amazon S3.

Apakah Anda sudah menemukan yang Anda cari?

Beri tahu kami agar kami dapat meningkatkan kualitas konten di halaman kami