Anda di halaman 1dari 13

LECTURE NOTES

Big Data Technologies

Minggu 3

Ingestion Layer

COMP6725 - Big Data Technologies


LEARNING OUTCOMES

LO 1: Menjelaskan layer arsitektur dan konsep pengolahan Big Data.

Outcome:

Mahasiswa mampu menjelaskan layer arsitektur dan konsep pengolahan Big Data.

OUTLINE MATERI (Sub-Topic):

• Data Ingestion Layer


• Multisource Extractor Pattern
• Protocol Converter Pattern
• Multidestination Pattern
• Just-in-Time Transformation Pattern
• Real-Time Streaming Pattern
• ETL Tools

COMP6725 - Big Data Technologies


ISI MATERI

1. Data Ingestion Layer


Data Ingestion berarti mengambil data yang berasal dari berbagai sumber dan
meletakkannya di suatu tempat yang dapat diakses. Ini adalah awal dari Data Pipeline di
mana ia memperoleh atau mengimpor data untuk segera digunakan.
Data dapat dialirkan secara real time atau ingested dalam batch, Ketika data ingested
secara real time, segera setelah data tiba, data langsung ingested. Saat data ingested
dalam batch, item data ingested dalam beberapa potongan pada interval waktu berkala.
Ingesti adalah proses memasukkan data ke dalam sistem Pengolahan Data.
Proses Data Ingestion yang efektif dimulai dengan memprioritaskan sumber data,
memvalidasi file individual, dan mengarahkan item data ke tujuan yang benar.
Anda memiliki beberapa sumber data untuk diproses. Dengan bertambahnya jumlah
sumber data, pemrosesan mulai menjadi rumit. Juga, dalam kasus big data, seringkali
struktur data sumber itu sendiri tidak diketahui; karenanya, mengikuti pendekatan
integrasi data tradisional menciptakan kesulitan dalam mengintegrasikan data.
Tantangan umum yang dihadapi saat menyerap beberapa sumber data meliputi:

• Memprioritaskan setiap beban sumber data


• Memberi tag dan mengindeks data yang ingested
• Memvalidasi dan membersihkan data yang ingested
• Mengubah dan mengompresi sebelum ingestion

Parameter Data Ingestion


• Data Velocity — Kecepatan Data berkaitan dengan kecepatan aliran data dari
berbagai sumber seperti mesin, jaringan, interaksi manusia, situs media, media
sosial. Pergerakan data bisa masif atau terus menerus.
• Data Size — Ukuran data menyiratkan volume data yang sangat besar. Data
dihasilkan dari berbagai sumber yang dapat meningkat tepat waktu.
• Data Frequency (Batch, Real-Time) — Data dapat diproses secara real time atau
batch, dalam pemrosesan real time sebagai data yang diterima pada waktu yang
sama, selanjutnya diproses tetapi dalam waktu batch data disimpan dalam batch,
tetap pada interval waktu tertentu dan kemudian dipindahkan lebih jauh.
• Data Format (Structured, Semi-Structured, Unstructured) — Data dapat dalam
format yang berbeda, sebagian besar dapat berupa format terstruktur, yaitu, format
tabular atau tidak terstruktur, yaitu gambar, audio, video atau semi-terstruktur,
yaitu JSON file, file CSS, dll.
Prinsip Utama Big Data Ingestion
Untuk menyelesaikan proses Ingestion Data, kita harus menggunakan alat yang tepat
untuk itu dan yang terpenting alat tersebut harus mampu mendukung beberapa prinsip
dasar yang tertulis di bawah ini –
• Network Bandwidth — Data Pipeline harus mampu bersaing dengan lalu lintas bisnis.
Terkadang lalu lintas meningkat atau terkadang menurun, sehingga skalabilitas

COMP6725 - Big Data Technologies


bandwidth jaringan adalah tantangan terbesar Data Pipeline. Alat diperlukan untuk
pelambatan bandwidth dan kemampuan kompresi.
• Unreliable Network — Data Ingestion Pipeline mengambil data dengan beberapa
struktur, yaitu, gambar, audio, video, file teks, data file tabular, file XML, file log, dll.
jaringan yang tidak dapat diandalkan. Data Pipeline harus mampu mendukung ini
juga.
• Heterogeneous Technologies and System — Alat untuk Saluran Ingestion Data harus
dapat menggunakan teknologi sumber data yang berbeda dan sistem operasi yang
berbeda.
• Choose Right Data Format — Alat harus menyediakan format serialisasi data, artinya
karena data datang dalam format variabel sehingga mengubahnya menjadi format
tunggal akan memberikan tampilan yang lebih mudah untuk memahami atau
menghubungkan data.
• Streaming Data — Tergantung pada kebutuhan bisnis apakah akan memproses data
dalam batch atau stream atau waktu nyata. Terkadang kita mungkin memerlukan
kedua pemrosesan. Jadi, alat harus mampu mendukung keduanya.
Pola data ingestion yang khas

Data tidak terstruktur, jika disimpan dalam sistem manajemen basis data relasional
(RDBMS) akan menciptakan masalah kinerja dan skalabilitas. Oleh karena itu, di dunia
big data, data dimuat menggunakan beberapa solusi dan beberapa tujuan target untuk
memecahkan jenis masalah tertentu yang dihadapi selama ingestion. Pola ingestion
menjelaskan solusi untuk masalah yang biasa ditemui dalam sumber data untuk
komunikasi lapisan ingestion. Solusi ini dapat dipilih berdasarkan kinerja, skalabilitas,
dan persyaratan ketersediaan.

Pic 3.1 Data ingestion layer and associated patterns


Source: Big data application architecture Q&A (2013)

2. Multisource Extractor Pattern


Pola ekstraktor multisumber berlaku dalam skenario di mana perusahaan yang memiliki
banyak koleksi data tidak terstruktur perlu menyelidiki kumpulan data yang berbeda ini

COMP6725 - Big Data Technologies


dan database nonrelasional (misalnya, NoSQL, Cassandra, dan sebagainya); contoh
industri yang khas adalah klaim dan penjaminan emisi, perdagangan keuangan,
telekomunikasi, e-commerce, deteksi penipuan, media sosial, permainan, dan taruhan.
Umpan dari peralatan eksplorasi energi dan pengawasan video di mana beban kerja
aplikasi adalah CPU dan I/O-intensif juga merupakan kandidat ideal untuk pola ekstraktor
multisumber.

Pic 3.2 Multisource extractor pattern


Source: Big data application architecture Q&A (2013)

Dalam sistem penyerapan besar, operator big data menggunakan pengaya untuk
melakukan agregasi dan pembersihan data awal. (Lihat Gambar diatas) Enricher
mentransfer file dengan andal, memvalidasinya, mengurangi noise, mengompresi, dan
mengubah dari format asli ke representasi yang mudah ditafsirkan. Pembersihan data
awal (misalnya, menghapus duplikasi) juga biasa dilakukan di tingkat pengaya.

Setelah file diproses oleh pengaya, mereka dipindahkan ke sekelompok pengumpul


perantara untuk pemrosesan akhir dan memuat ke sistem tujuan.
Karena lapisan penyerapan harus toleran terhadap kesalahan, selalu masuk akal untuk
memiliki banyak node. Jumlah disk dan ukuran disk per node harus didasarkan pada
volume setiap klien. Beberapa node akan dapat menulis ke lebih banyak drive secara
paralel dan memberikan throughput yang lebih besar.
Namun, pola ekstraktor multisumber memiliki sejumlah kelemahan signifikan yang
membuatnya tidak dapat digunakan untuk konsumsi waktu nyata. Kekurangan utama
adalah sebagai berikut:
• Not Real Time: Latensi penyerapan data dapat bervariasi antara 30 menit dan
beberapa jam.
• Redundant Data: Beberapa salinan data perlu disimpan di berbagai tingkat pengaya
dan agen pengumpul. Ini membuat volume data yang sudah besar menjadi lebih
besar.

COMP6725 - Big Data Technologies


• High Costs: Ketersediaan tinggi biasanya merupakan persyaratan untuk pola ini.
Ketika sistem tumbuh dalam kapasitas, biaya pemeliharaan ketersediaan tinggi
meningkat.
• Complex Configuration: Pola berorientasi batch ini sulit untuk dikonfigurasi dan
dipelihara.

3. Protocol Converter Pattern


Pola konverter protokol (lihat gambar dibawah berlaku dalam skenario di mana
perusahaan memiliki berbagai macam data tidak terstruktur dari sumber data yang
memiliki protokol dan format data yang berbeda. Dalam pola ini, lapisan penyerapan
melakukan hal berikut:

• Mengidentifikasi beberapa saluran acara masuk.


• Mengidentifikasi struktur polydata.
• Menyediakan layanan untuk memediasi beberapa protokol ke dalam sink yang
sesuai.
• Menyediakan layanan untuk mengikat antarmuka sistem eksternal yang berisi
beberapa set pola pesan ke dalam platform umum.
• Menyediakan layanan untuk menangani berbagai jenis permintaan.
• Menyediakan layanan untuk mengabstraksi data masuk dari berbagai lapisan
protokol. Menyediakan platform pemersatu untuk lapisan berikutnya untuk
memproses data yang masuk.

Pic 3.3 Multisource extractor pattern


Source: Big data application architecture Q&A (2013)

Konversi protokol diperlukan ketika sumber data mengikuti berbagai protokol yang
berbeda. Variasi dalam protokol baik di header atau pesan yang sebenarnya. Itu bisa
berupa jumlah bit di header, panjang berbagai bidang, dan logika yang sesuai yang
diperlukan untuk menguraikan konten data, pesan dapat berupa panjang tetap atau
panjang variabel dengan pemisah.

Pola ini diperlukan untuk membakukan struktur berbagai pesan yang berbeda sehingga
memungkinkan untuk menganalisis informasi bersama-sama menggunakan alat analitik.

COMP6725 - Big Data Technologies


Konverter menyesuaikan pesan yang berbeda ke dalam format pesan kanonik standar
yang biasanya dipetakan ke struktur data NoSQL.
Konsep ini penting ketika sistem perlu dirancang untuk menangani beberapa protokol
yang memiliki banyak struktur untuk data yang masuk.

Dalam pola ini, lapisan penyerapan menyediakan layanan berikut:


• Message Exchanger: Pesan bisa sinkron atau asinkron tergantung pada protokol
yang digunakan untuk transportasi. Contoh tipikal adalah pertukaran informasi
aplikasi web melalui HTTP dan komunikasi berorientasi pesan seperti JMS yang
biasanya tidak sinkron.
• Stream Handler: Komponen ini mengenali dan mengubah data yang dikirim sebagai
aliran byte atau aliran objek—misalnya, byte data gambar, PDF, dan sebagainya.
• File handler: Komponen ini mengenali dan memuat data yang dikirim sebagai file—
misalnya, FTP.
• Web Services Handler: Komponen ini mendefinisikan cara populasi data dan
penguraian serta penerjemahan data yang masuk ke dalam format yang
disepakati—misalnya, REST WS, WS berbasis SOAP, dan sebagainya.
• Async Handler: Komponen ini mendefinisikan sistem yang digunakan untuk
menangani peristiwa asinkron—misalnya, MQ, Async HTTP, dan sebagainya.
• Serializer: Serializer menangani data yang masuk sebagai Objects atau tipe
kompleks melalui RMI (remote method invocation)—misalnya, komponen EJB.
Status objek disimpan dalam database atau file datar.

4. Multidestination Pattern
Pola multidestinasi (lihat gambar dibawah) sangat mirip dengan pola konsumsi
multisumber hingga siap untuk berintegrasi dengan beberapa tujuan. Router menerbitkan
data "diperkaya" dan kemudian menyiarkannya ke tujuan pelanggan. Tujuan harus
mendaftar ke agen penerbitan di router. Enrichers dapat digunakan sesuai kebutuhan
oleh penerbit maupun pelanggan. Router dapat digunakan dalam sebuah cluster,
tergantung pada volume data dan jumlah tujuan berlangganan.

Pic 3.4 Multidestination pattern


Source: Big data application architecture Q&A (2013)

COMP6725 - Big Data Technologies


Banyak organisasi memiliki sistem RDBMS tradisional serta untuk platform analitik seperti
SAS atau Informatica. Namun, jumlah data yang terus bertambah dari jumlah aliran data
yang meningkat menyebabkan masalah penyimpanan yang meluap. Juga, biaya lisensi
yang diperlukan untuk memproses big data ini perlahan mulai menjadi penghalang.
Volume yang meningkat juga menyebabkan kesalahan data (alias penyesalan data), dan
waktu yang dibutuhkan untuk memproses data meningkat secara eksponensial. Karena
RDBMS dan platform analitik terpisah secara fisik, sejumlah besar data perlu ditransfer
melalui jaringan setiap hari.
Untuk mengatasi tantangan ini, organisasi dapat mulai menyerap data ke beberapa
penyimpanan data, baik penyimpanan data RDBMS maupun NoSQL. Transformasi data
dapat dilakukan di penyimpanan HDFS. Hive atau Pig dapat digunakan untuk
menganalisis data dengan biaya lebih rendah. Ini juga mengurangi beban pada mesin
analitik SAS/Informatica yang ada.
Lapisan Hadoop menggunakan pekerjaan pengurangan peta untuk menyiapkan data
untuk kueri yang efektif oleh Hive dan Pig. Ini juga memastikan bahwa sejumlah besar
data tidak perlu ditransfer melalui jaringan, sehingga menghindari biaya besar.

Pola ini memecahkan beberapa masalah menelan dan menyimpan data dalam jumlah
besar:
• Membagi biaya penyimpanan dengan membagi data yang disimpan di antara sistem
penyimpanan tradisional dan HDFS.
• Menyediakan kemampuan untuk mempartisi data untuk akses dan pemrosesan yang
fleksibel dengan cara yang terdesentralisasi.
• Karena replikasi pada node HDFS, tidak ada "penyesalan data."
• Karena setiap node mandiri, mudah untuk menambahkan lebih banyak node dan
penyimpanan tanpa penundaan.
• Komputasi terdesentralisasi pada node data tanpa ekstraksi data ke alat lain.
• Memungkinkan penggunaan bahasa kueri sederhana seperti Hive dan Pig bersama
raksasa analitik tradisional.

5. Just-in-Time Transformation Pattern


Untuk volume data yang sangat besar dan komputasi analitik dalam jumlah besar, masuk
akal untuk memasukkan semua data mentah ke dalam HDFS dan kemudian menjalankan
tugas batch prapemrosesan yang bergantung berdasarkan kasus bisnis yang akan
diimplementasikan untuk membersihkan, memvalidasi, menghubungkan, dan mengubah
datanya. Data yang diubah ini, kemudian, dapat kembali disimpan dalam HDFS itu sendiri
atau ditransfer ke data mart, gudang, atau mesin analitik waktu nyata. Singkatnya, data
mentah dan data yang diubah dapat hidup berdampingan di HDFS, dan menjalankan
semua transformasi prapemrosesan sebelum penyerapan mungkin tidak selalu ideal.
Tetapi validasi dasar dapat dilakukan sebagai bagian dari prapemrosesan pada data yang
diserap.

COMP6725 - Big Data Technologies


Pic 3.5 Raw data as well as transformed data co-existing in HDFS
Source: Big data application architecture Q&A (2013)

6. Real-Time Streaming Pattern

Pic 3.6 Real-time streaming pattern


Source: Big data application architecture Q&A (2013)

Karakteristik utama dari sistem penyerapan streaming waktu nyata (gambar diaatas)
adalah sebagai berikut:
• Itu harus mandiri dan menggunakan memori lokal di setiap node pemrosesan untuk
meminimalkan latensi.
• Itu harus memiliki arsitektur shared-nothing—yaitu, semua node harus memiliki
tanggung jawab atomik dan tidak boleh bergantung satu sama lain.
• Ini harus menyediakan API sederhana untuk menguraikan informasi waktu nyata
dengan cepat.
• Atomicity dari masing-masing komponen harus sedemikian rupa sehingga sistem
dapat menskalakan seluruh cluster menggunakan perangkat keras komoditas.

COMP6725 - Big Data Technologies


• Seharusnya tidak ada node master terpusat. Semua node harus dapat digunakan
dengan skrip yang seragam.
Event processing nodes (EPs) menggunakan input yang berbeda dari berbagai sumber
data. EP membuat acara yang ditangkap oleh pendengar acara dari mesin pemrosesan
acara. Pendengar acara adalah host logis untuk EP. Mesin pemroses acara memiliki
kapasitas dalam memori yang sangat besar (memori besar). EP dipicu oleh peristiwa
karena didasarkan pada arsitektur yang digerakkan oleh peristiwa. Segera setelah suatu
peristiwa terjadi, EP dipicu untuk menjalankan operasi tertentu dan kemudian
meneruskannya ke pemberi peringatan. Alerter memublikasikan hasil analitik big data
dalam memori ke mesin BPM (business process management) perusahaan. Proses BPM
dapat mengarahkan hasil analisis ke berbagai saluran seperti seluler, dasbor CIO, sistem
BAM, dan sebagainya.
Ada banyak pilihan produk untuk memfasilitasi penyerapan streaming secara real-time.
Berikut adalah beberapa kerangka kerja utama yang tersedia di pasar:

• Flume adalah sistem terdistribusi untuk mengumpulkan data log dari banyak
sumber, menggabungkannya, dan menulisnya ke HDFS. Ini didasarkan pada aliran
data streaming. Flume menyediakan ekstensibilitas untuk aplikasi analitik online.
Namun, Flume memerlukan cukup banyak konfigurasi yang dapat menjadi sangat
kompleks untuk sistem yang sangat besar.
• Storm mendukung pemrosesan aliran peristiwa dan dapat merespons peristiwa
individual dalam kerangka waktu yang wajar. Storm adalah tujuan umum, sistem
pemrosesan peristiwa yang menggunakan sekelompok layanan untuk skalabilitas
dan keandalan. Dalam terminologi Storm, Anda membuat topologi yang terus
berjalan di atas aliran data yang masuk. Sumber data untuk topologi disebut spouts,
dan setiap node pemrosesan disebut bolt. Bolts dapat melakukan komputasi canggih
pada data, termasuk output ke penyimpanan data dan layanan lainnya. Adalah
umum bagi organisasi untuk menjalankan kombinasi layanan Hadoop dan Storm
untuk mendapatkan fitur terbaik dari kedua platform.
• InfoSphere Streams mampu melakukan analisis kompleks dari tipe data yang
heterogen. Infoosphere Streams dapat mendukung semua tipe data. Ini dapat
melakukan analisis real-time dan melihat ke depan dari data yang dihasilkan secara
teratur, menggunakan penyaringan digital, analisis pola/korelasi, dan dekomposisi
serta analisis geospasial. Apache S4 adalah platform yang diciptakan Yahoo untuk
menangani konsumsi data real-time secara terus-menerus. Ini menyediakan API
sederhana untuk memanipulasi aliran data yang tidak terstruktur, mencari, dan
mendistribusikan pemrosesan di beberapa node secara otomatis tanpa
pemrograman yang rumit. Program klien yang mengirim dan menerima acara dapat
ditulis dalam bahasa pemrograman apa pun. S4 dirancang sebagai sistem yang
sangat terdistribusi. Throughput dapat ditingkatkan secara linier dengan
menambahkan node ke dalam cluster. Desain S4 paling cocok untuk aplikasi skala
besar untuk penambangan data dan pembelajaran mesin di lingkungan produksi.

COMP6725 - Big Data Technologies


7. ETL Tools
Tools secara tradisionalnya seperti software open-source: Talend, Pentahho DI, atau
produk terkenal seperti Informatica juga dapat dimanfaatkan untuk penyerapan data.
Beberapa tools tradisional dapat membaca dan menulis banyak file secara paralel dari
dan ke HDFS.

Tools membantu mendapatkan data dari satu lingkungan data dan memasukkannya ke
lingkungan data lain. ETL umumnya digunakan dengan pemrosesan batch di lingkungan
gudang data. Gudang data memberi pengguna bisnis cara untuk mengkonsolidasikan
informasi di seluruh sumber yang berbeda untuk menganalisis dan melaporkan wawasan
yang relevan dengan fokus bisnis spesifik mereka. Tools digunakan untuk mengubah
data ke dalam format yang dibutuhkan oleh gudang data. Transformasi sebenarnya
dilakukan di lokasi perantara sebelum data dimuat ke dalam gudang data.
Di dunia big data, tools seperti Informatica telah digunakan untuk memungkinkan solusi
penyerapan yang cepat dan fleksibel (lebih besar dari 150 GB/hari) yang dapat
mendukung kemampuan ad hoc untuk penemuan data dan wawasan. Informatica dapat
digunakan sebagai pengganti solusi Sqoop dan Flume. Informatica PowerCenter dapat
digunakan sebagai mesin penyerapan data mentah utama.

Gambar dibawah menggambarkan skenario di mana tools tradisional telah digunakan


untuk menyerap data ke dalam HDFS.

Pic 3.7 Ingestion using traditional ETL tools


Source: Big data application architecture Q&A (2013)

COMP6725 - Big Data Technologies


SIMPULAN
o Penyerapan Big data melibatkan koneksi ke berbagai sumber data,
mengekstrak data, dan mendeteksi data yang diubah. Ini tentang
memindahkan data — dan terutama data tidak terstruktur — dari tempat
asalnya, ke dalam sistem tempat data dapat disimpan dan dianalisis.
o Data dapat dialirkan secara real-time atau diserap dalam batch, Ketika data
diserap secara real time, begitu data tiba, data langsung diserap. Saat data
diserap dalam batch, item data diserap dalam beberapa potongan pada interval
waktu berkala. Ingesti adalah proses memasukkan data ke dalam sistem
Pemrosesan Data.
o Proses Penyerapan Data yang Efektif dimulai dengan memprioritaskan
sumber data, memvalidasi file individual, dan mengarahkan item data ke
tujuan yang benar.

COMP6725 - Big Data Technologies


DAFTAR PUSTAKA
• Sawant, N. and Shah, H., (2013). Big data application architecture Q&A. A Problem-
Solution Approach. Apress, Springer Science. ISBN: 978-1-4302-6292-3. Chapter 3
• https://www.youtube.com/watch?v=YD6QCEVDw20&t=57s
• https://medium.com/digital-transformation-and-platform-engineering/data-ingestion-
processing-and-big-data-architecture-layers-3cb4988c07de
• https://www.xenonstack.com/blog/big-data-ingestion/
• https://www.8bitmen.com/what-is-data-ingestion-how-to-pick-the-right-data-
ingestion-tool/

COMP6725 - Big Data Technologies

Anda mungkin juga menyukai