Tekno

Apa itu Data Pipeline ?

Dunia digital saat ini banyak melakukan pertukaran data setiap hari, mulai informasi yang penting bagi pemerintah untuk dianalisa, bagi bisnis untuk berkembang, dan bagi kita untuk mendapatkan hal yang benar saat kita memesan suatu barang dari pasar online favorit kita.

Tidak hanya pada sejumlah data yang besar, tetapi ada juga proses yang tak terhitung jumlahnya untuk diterapkan pada data tersebut dan memungkinkan untuk terjadinya kesalahan informasi. Itu sebabnya data analyst dan data engineer beralih ke pipelining data.

Pada artikel ini akan dibahas terkait data pipeline, termasuk apa pengertiannya, arsitektur data pipeline, tools data pipeline, mengapa kita membutuhkan data pipeline, serta bagaimana cara mendesain data pipeline tersebut. Pada pembahasan bagian awal artikel mari kita lihat bagaimana pengertian dari data pipeline serta mengapa data pipeline diperlukan.

Mengapa Data Pipeline Diperlukan ?

Perusahaan berbasis data-driven perlu memindahkan data secara efisien dari satu lokasi ke lokasi lain dan mengubah data tersebut menjadi informasi yang dapat ditindaklanjuti secepat mungkin. Sayangnya, ada banyak hambatan untuk membersihkan aliran data tersebut, seperti hambatan (yang mengakibatkan latensi), kerusakan data, atau beberapa sumber data yang menghasilkan informasi yang bertentangan atau berlebihan.

Data pipeline mengambil semua langkah manual yang diperlukan untuk menyelesaikan masalah tersebut dan mengubah prosesnya menjadi alur kerja yang lancar dan otomatis. Meskipun tidak setiap bisnis atau organisasi membutuhkan data pipeline, paling tidak proses ini berguna untuk perusahaan mana pun yang :

  • Membuat, bergantung pada, atau menyimpan sejumlah data yang besar, atau data dari banyak sumber
  • Bergantung pada analisis data yang terlalu rumit atau real-time
  • Menggunakan cloud untuk penyimpanan data
  • Memaintain sumber data yang siloed

Selain itu, data pipeline meningkatkan keamanan dengan membatasi akses ke tim yang berwenang saja. Intinya adalah semakin banyak perusahaan tergantung pada data, maka semakin dibutuhkan data pipeline, sehingga menjadi salah satu tools analisa bisnis yang paling penting.

Apa itu Data Pipeline ?

Kita tahu apa itu pipeline yaitu sistem pipeline besar yang membawa sumber daya dari satu lokasi ke lokasi lain dalam jarak jauh. Kita biasanya mendengar tentang pipa atau pipeline dalam konteks minyak atau gas alam. Pipeline tersebut secara cepat dan efisien untuk memindahkan bahan dalam jumlah besar dari satu titik ke titik lain.

Data pipeline beroperasi dengan prinsip yang sama; hanya saja berurusan dengan informasi daripada cairan atau gas. Data pipeline adalah urutan atau langkah pemrosesan data dan banyak dari proses data pipeline dapat dicapai dengan perangkat lunak khusus.

Pipeline menentukan bagaimana, apa, dan di mana data dikumpulkan. Data pipeline mengotomatiskan ekstraksi data, transformasi, validasi, dan kombinasi, lalu digunakan untuk analisis dan visualisasi lebih lanjut. Seluruh pipeline memberikan kecepatan dari satu ujung ke ujung lainnya dengan menghilangkan kesalahan dan menetralisir hambatan atau latensi.

Saat ini big data juga memiliki pipeline. Big data ditkitai dengan lima V (variasi, volume, velocity, veracity, dan value).

Pipeline big data adalah pipeline yang dapat diskalakan yang dirancang untuk menangani satu atau lebih karakteristik “v” big data, bahkan mampu mengenali dan memproses data dalam format yang berbeda, seperti data terstruktur, tidak terstruktur, dan semi terstruktur.

Arsitektur Data Pipeline

Kita dapat mendefinisikan arsitektur data pipeline sebagai sistem lengkap yang dirancang untuk menangkap, menata, dan mengirimkan data yang digunakan untuk menghasilkan wawasan yang akurat dan dapat ditindaklanjuti. Arsitektur tersebut digunakan untuk memberikan desain data terbaik dalam mengelola semua peristiwa data, membuat analisis, pelaporan, dan agar data lebih mudah digunakan.

Analis dan data engineer menerapkan arsitektur pipeline agar data tersebut dapat meningkatkan business inteligence (BI) dan analisa, serta fungsionalitas yang telah ditargetkan. Business intelligence dan analisa menggunakan data untuk memperoleh wawasan dan informasi yang efisien serta tren secara real-time.

Fungsionalitas tersebut mampu mendukung data dalam mencakup subjek penting seperti perjalanan pelanggan, perilaku pelanggan target, otomatisasi proses robotik, dan pengalaman pengguna.

Arsitektur data pipeline dapat dipecah  menjadi serangkaian bagian dan proses, yaitu :

  • Sumber

Bagian ini adalah di mana semuanya dimulai dan dari mana informasi itu berasal. Tahap ini berpotensi melibatkan berbagai sumber, seperti API aplikasi, cloud, relasi database, NoSQL, dan Apache Hadoop.

  • Penggabungan

Data dari berbagai sumber sering digabungkan saat melakukan perjalanan melalui pipa. Bergabung dalam daftar kriteria dan logika untuk bagaimana data ini dapat muncul bersamaan.

  • Ekstraksi

Data analyst mungkin ingin data tertentu tertentu ditemukan di bidang yang lebih besar, seperti kode area di bidang kontak nomor telepon. Terkadang, bisnis membutuhkan beberapa nilai yang mampu dirakit atau diekstraksi.

  • Standarisasi

Katakanlah ketika kita memiliki beberapa data yang tercantum dalam mil dan data lain dalam kilometer. Maka dengan standarisasi memastikan semua data mengikuti unit pengukuran yang sama dan disajikan dalam ukuran, font, dan warna yang dapat diterima.

  • Koreksi

Jika kita memiliki data, maka kita berpotensi untuk memiliki kesalahan. Ini bisa menjadi sesuatu yang sederhana seperti kode pos yang tidak ada atau akronim yang membingungkan. Fase koreksi juga menghapus catatan yang rusak.

  • Loads

Setelah data dibersihkan, data dimuat ke dalam sistem analisis yang tepat, biasanya dalam data warehouse, relasi database, atau kerangka Hadoop.

  • Otomatisasi

Data pipeline menggunakan proses otomatisasi, baik terus menerus atau sesuai jadwal. Proses otomatisasi menangani deteksi kesalahan, status laporan, dan monitoring.

Tools Data Pipeline

Solusi dan tools data pipeline tersedia dalam berbagai bentuk, tetapi semuanya memiliki tiga persyaratan yang sama yaitu :

  1. Mengekstrak data dari beberapa sumber data yang relevan
  2. Membersihkan, mengubah, dan memperkaya data sehingga data siap untuk analisis
  3. Muat data ke satu sumber informasi, biasanya data lake atau data warehouse

Berikut adalah empat jenis tools data pipeline yang paling populer dan banyak digunakan yaitu :

  • Batch

Alat pemrosesan batch paling cocok untuk memindahkan data dalam jumlah besar secara berkala, tetapi saat data tersebut tidak diperlukan secara real-time. Tools data pipeline untuk jenis ini yaitu :

  1. Informatica PowerCenter
  2. IBM InfoSphere DataStage
  • Cloud Native

Tools ini mampu dioptimalkan untuk bekerja dengan data berbasis cloud, seperti bucket Amazon Web Services (AWS). Tools data pipeline jenis cloud-native meliputi :

  1. Blendo
  2. Confluent
  • Open Source

Tools jenis open souce adalah homegrown resources yang dibangun atau dapat disesuaikan oleh staf berpengalaman di organisasi kita. Tools data pipeline jenis open source meliputi :

  1. Apache Kafka
  2. Apache Airflow
  3. Talend
  • Real Time

Seperti namanya, tools ini dirancang untuk menangani data secara real-time. Solusi ini sangat cocok untuk memproses data dari sumber streaming seperti data telemetri dari perangkat yang terhubung (seperti Internet of Things) atau pasar keuangan. Tools data pipeline jeni real-time meliputi :

  1. Confluent
  2. Hevo Data
  3. Streamsets

Contoh Data Pipeline

Berikut adalah tiga contoh data pipeline, yang umumnya digunakan oleh pengguna teknis dan non-teknis yaitu :

  • B2B Data Exchange Pipeline

Bisnis dapat mengirim dan menerima dokumen terstruktur atau tidak terstruktur yang kompleks, termasuk dokumen NACHA dan EDI serta transaksi SWIFT dan HIPAA, dari bisnis lain. Perusahaan menggunakan pipeline pertukaran data B2B untuk bertukar formulir seperti pesanan pembelian atau status pengiriman.

  • Data Quality Pipeline

Pengguna dapat menjalankan data quality pipeline dalam mode batch atau streaming, tergantung pada kasus penggunaan. Data quality pipeline berisi serta berfungsi seperti menstandarkan semua nama pelanggan baru secara berkala. Tindakan memvalidasi alamat pelanggan secara real-time selama persetujuan aplikasi kredit akan dianggap sebagai bagian dari data quality pipeline.

  • MDM Pipeline

Master Data Management (MDM) bergantung pada pencocokan dan penggabungan data. Pipeline ini melibatkan pengumpulan dan pemrosesan data dari sumber yang berbeda dalam mengolah catatan duplikasi, dan menggabungkan hasilnya menjadi satu catatan emas.

Bagaimana Membangun Data Pipeline ?

Sebelum kita turun ke bisnis aktual dalam membangun data pipeline, kita harus terlebih dahulu menentukan faktor-faktor tertentu yang akan memengaruhi desain kita seperti :

  • Apa tujuan pipeline itu? Mengapa Kita membutuhkan data pipeline, dan apa yang Kita inginkan untuk dicapai? Apakah akan memindahkan data sekali, atau akan mengulanginya?
  • Jenis data apa yang terlibat? Berapa banyak data yang Kita harapkan untuk dikerjakan? Apakah data terstruktur atau tidak terstruktur, streaming, atau disimpan?
  • Bagaimana data akan digunakan? Apakah data akan digunakan untuk pelaporan, analisa, data science, business intelligence, otomatisasi, atau machine learning?

Setelah Kita memiliki pemahaman yang lebih baik tentang faktor desain, Kita dapat memilih diantara tiga cara yang telah proven untuk membuat arsitektur pipeline pemrosesan data.

  • Data Preparation Tools

User menggunakan data preparation tools tradisional seperti spreadsheet untuk memvisualisasikan data dengan lebih baik serta bekerja dengannya. Sayangnya, proses ini membuat user harus secara manual menangani setiap set data baru atau membuat makro yang kompleks. Untungnya, ada data preparation tools bagi perusahaan yang tersedia untuk mengubah langkah-langkah data preparation menjadi data pipeline.

  • Design Tools

Kita dapat menggunakan tools yang dirancang untuk membangun pipeline pemrosesan data dengan secara virtual dan setara dengan blok penyusun, serta dibantu oleh antarmuka yang mudah digunakan.

  • Hand Coding

Pengguna dapat menggunakan kerangka kerja dan bahasa pemrosesan data seperti Kafka, MapReduce, SQL, dan Spark. Kita juga dapat menggunakan kerangka kerja eksklusif seperti AWS Glue dan Databricks Spark. Pendekatan ini mengharuskan pengguna untuk mengetahui bagaimana cara memprogram.

Akhirnya, Kita perlu memilih pola atau desain data pipeline mana yang paling sesuai untuk kebutuhan Kita dan mengimplementasikannya. Pola atau desain tersebut meliputi :

  • Raw Data Load

Desain sederhana ini memindahkan data massal yang tidak dimodifikasi dari satu database ke database lainnya

  • Extract-Transform-Load

Desain ini mengekstrak data dari penyimpanan data dan mentransformasikan (misalnya, membersihkan, menstandarkan, serta mengintegrasikannya) sebelum memuatnya ke dalam target database

  • Extract-Load-Transform

Desain ini seperti ETL, tetapi langkah-langkahnya diubah untuk menghemat waktu dan menghindari latensi. Transformasi data terjadi di target database

  • Data Virtualization

Sementara sebagian besar pipeline membuat salinan fisik data yang akan disimpan, maka virtualisasi memberikan data sebagai tampilan tanpa menyimpan salinan terpisah secara fisik

Proses ini mengalirkan data peristiwa dalam aliran yang berkelanjutan serta dalam urutan kronologis. Proses ini menguraikan peristiwa, mengisolasi setiap peristiwa unik ke dalam catatan yang berbeda, serta memungkinkan evaluasi penggunaan di masa mendatang


Wahyu Saputra S.Kom