Bagaimana cara memindahkan, mengunggah, dan mengintegrasikan data yang sangat besar dengan murah dan cepat? Apa itu optimasi pushdown?

Setiap operasi data besar memerlukan banyak daya komputasi. Perpindahan data dari database ke Hadoop biasanya memakan waktu berminggu-minggu atau menghabiskan biaya sebesar sayap pesawat terbang. Tidak ingin menunggu dan mengeluarkan uang? Seimbangkan beban di berbagai platform. Salah satu caranya adalah optimasi pushdown.

Saya bertanya kepada pelatih terkemuka Rusia untuk pengembangan dan administrasi produk Informatica, Alexei Ananyev, untuk berbicara tentang fungsi optimasi pushdown di Informatica Big Data Management (BDM). Pernahkah Anda belajar bekerja dengan produk Informatica? Kemungkinan besar, Alexei-lah yang memberi tahu Anda dasar-dasar PowerCenter dan menjelaskan cara membuat pemetaan.

Alexei Ananyev, kepala pelatihan di DIS Group

Apa itu push-down?

Banyak dari Anda yang sudah familiar dengan Informatica Big Data Management (BDM). Produk ini dapat mengintegrasikan data besar dari berbagai sumber, memindahkannya antar sistem yang berbeda, menyediakan akses mudah ke data tersebut, memungkinkan Anda membuat profil, dan banyak lagi.
Di tangan yang tepat, BDM dapat menghasilkan keajaiban: tugas akan diselesaikan dengan cepat dan dengan sumber daya komputasi minimal.

Apakah kamu juga menginginkannya? Pelajari cara menggunakan fitur pushdown di BDM untuk mendistribusikan beban komputasi ke berbagai platform. Teknologi pushdown memungkinkan Anda mengubah pemetaan menjadi skrip dan memilih lingkungan di mana skrip ini akan dijalankan. Pilihan ini memungkinkan Anda menggabungkan kekuatan berbagai platform dan mencapai kinerja maksimalnya.

Untuk mengonfigurasi lingkungan eksekusi skrip, Anda perlu memilih jenis pushdown. Skrip dapat dijalankan seluruhnya di Hadoop atau didistribusikan sebagian antara sumber dan sink. Ada 4 kemungkinan jenis pushdown. Pemetaan tidak perlu diubah menjadi skrip (asli). Pemetaan dapat dilakukan semaksimal mungkin pada sumber (source) atau seluruhnya pada sumber (full). Pemetaan juga dapat diubah menjadi skrip Hadoop (tidak ada).

Optimasi push-down

4 jenis yang terdaftar dapat digabungkan dengan cara yang berbeda - pushdown dapat dioptimalkan untuk kebutuhan spesifik sistem. Misalnya, seringkali lebih tepat mengekstrak data dari database menggunakan kemampuannya sendiri. Dan data tersebut akan dikonversi menggunakan Hadoop, agar tidak membebani database itu sendiri.

Mari kita pertimbangkan kasus ketika sumber dan tujuan ada dalam database, dan platform eksekusi transformasi dapat dipilih: bergantung pada pengaturannya, itu adalah Informatica, server database, atau Hadoop. Contoh seperti itu akan memungkinkan Anda memahami sisi teknis pengoperasian mekanisme ini dengan paling akurat. Secara alami, dalam kehidupan nyata, situasi ini tidak muncul, tetapi paling cocok untuk mendemonstrasikan fungsionalitas.

Mari kita lakukan pemetaan untuk membaca dua tabel dalam satu database Oracle. Dan biarkan hasil bacaannya dicatat dalam tabel di database yang sama. Skema pemetaannya akan seperti ini:

Bagaimana cara memindahkan, mengunggah, dan mengintegrasikan data yang sangat besar dengan murah dan cepat? Apa itu optimasi pushdown?

Bentuk pemetaan pada Informatica BDM 10.2.1 tampilannya seperti ini:

Bagaimana cara memindahkan, mengunggah, dan mengintegrasikan data yang sangat besar dengan murah dan cepat? Apa itu optimasi pushdown?

Tipe pushdown – asli

Jika kita memilih tipe pushdown native, maka pemetaan akan dilakukan di server Informatica. Data akan dibaca dari server Oracle, ditransfer ke server Informatica, diubah di sana dan ditransfer ke Hadoop. Dengan kata lain kita akan mendapatkan proses ETL yang normal.

Jenis pushdown – sumber

Saat memilih jenis sumber, kami mendapat kesempatan untuk mendistribusikan proses kami antara server database (DB) dan Hadoop. Ketika suatu proses dijalankan dengan pengaturan ini, permintaan untuk mengambil data dari tabel akan dikirim ke database. Dan selebihnya akan dilakukan dalam bentuk langkah-langkah di Hadoop.
Diagram eksekusi akan terlihat seperti ini:

Bagaimana cara memindahkan, mengunggah, dan mengintegrasikan data yang sangat besar dengan murah dan cepat? Apa itu optimasi pushdown?

Di bawah ini adalah contoh pengaturan lingkungan runtime.

Bagaimana cara memindahkan, mengunggah, dan mengintegrasikan data yang sangat besar dengan murah dan cepat? Apa itu optimasi pushdown?

Dalam hal ini pemetaan akan dilakukan dalam dua tahap. Dalam pengaturannya kita akan melihat bahwa itu telah berubah menjadi skrip yang akan dikirim ke sumbernya. Selain itu, penggabungan tabel dan transformasi data akan dilakukan dalam bentuk kueri yang diganti pada sumbernya.
Pada gambar di bawah, kita melihat pemetaan yang dioptimalkan pada BDM, dan kueri yang didefinisikan ulang pada sumbernya.

Bagaimana cara memindahkan, mengunggah, dan mengintegrasikan data yang sangat besar dengan murah dan cepat? Apa itu optimasi pushdown?

Peran Hadoop dalam konfigurasi ini akan direduksi menjadi pengelolaan aliran data - mengaturnya. Hasil kueri akan dikirim ke Hadoop. Setelah pembacaan selesai, file dari Hadoop akan ditulis ke sink.

Tipe pushdown – penuh

Saat Anda memilih tipe lengkap, pemetaan akan sepenuhnya berubah menjadi kueri database. Dan hasil permintaan tersebut akan dikirim ke Hadoop. Diagram proses tersebut disajikan di bawah ini.

Bagaimana cara memindahkan, mengunggah, dan mengintegrasikan data yang sangat besar dengan murah dan cepat? Apa itu optimasi pushdown?

Contoh pengaturan ditunjukkan di bawah ini.

Bagaimana cara memindahkan, mengunggah, dan mengintegrasikan data yang sangat besar dengan murah dan cepat? Apa itu optimasi pushdown?

Hasilnya, kita akan mendapatkan pemetaan yang dioptimalkan serupa dengan yang sebelumnya. Satu-satunya perbedaan adalah bahwa semua logika ditransfer ke penerima dalam bentuk mengesampingkan penyisipannya. Contoh pemetaan yang dioptimalkan disajikan di bawah ini.

Bagaimana cara memindahkan, mengunggah, dan mengintegrasikan data yang sangat besar dengan murah dan cepat? Apa itu optimasi pushdown?

Di sini, seperti dalam kasus sebelumnya, Hadoop berperan sebagai konduktor. Namun di sini sumber dibaca secara keseluruhan, dan kemudian logika pemrosesan data dilakukan di tingkat penerima.

Jenis pushdown adalah nol

Nah, opsi terakhir adalah tipe pushdown, di mana pemetaan kita akan berubah menjadi skrip Hadoop.

Pemetaan yang dioptimalkan sekarang akan terlihat seperti ini:

Bagaimana cara memindahkan, mengunggah, dan mengintegrasikan data yang sangat besar dengan murah dan cepat? Apa itu optimasi pushdown?

Di sini data dari file sumber pertama kali akan dibaca di Hadoop. Kemudian, dengan menggunakan caranya sendiri, kedua file ini akan digabungkan. Setelah itu, data akan dikonversi dan diunggah ke database.

Dengan memahami prinsip optimasi pushdown, Anda dapat mengatur banyak proses untuk bekerja dengan data besar secara efektif. Jadi, baru-baru ini, sebuah perusahaan besar, hanya dalam beberapa minggu, mengunduh data besar dari penyimpanan ke Hadoop, yang sebelumnya telah dikumpulkannya selama beberapa tahun.

Sumber: www.habr.com

Tambah komentar