- Bagi developer software yang baru masuk ke bidang data, panduan ini merangkum keseluruhan lanskap agar mereka tidak sekadar menghafal nama alat, tetapi memahami peran dan keterkaitan tiap alat dalam tahap pengumpulan/penyimpanan/pemrosesan/pemanfaatan data
- Peran di bidang data secara garis besar terbagi menjadi tipe analitik/sains/engineering/machine learning, dengan masalah dan alat yang berbeda-beda, mulai dari SQL dan BI hingga model statistik dan notebook, infrastruktur pipeline, serta deployment model operasional
- Penyimpanan dibagi menjadi data warehouse yang menawarkan analisis cepat dan kemudahan, data lake yang murah dan fleksibel, serta lakehouse yang menambahkan ACID dan pengelolaan skema lewat format tabel
- Pemrosesan data meluas dari transformasi SQL seperti dbt, pemrosesan lokal dengan pandas dan DuckDB, pemrosesan batch terdistribusi dengan Spark, hingga pemrosesan stream dengan Kafka dan Flink, sementara orchestrator seperti Airflow mengelola urutan eksekusi tugas-tugas terpisah dan pemulihan saat gagal
- Data yang telah diproses dimanfaatkan bukan hanya untuk dashboard, tetapi juga untuk pekerjaan sales/support, analisis ad hoc, machine learning, fitur analitik di dalam produk, dan penjualan data; semakin besar skala, semakin penting catalog/lapisan semantik/lineage/governance sebagai fondasi untuk menjaga makna dan tanggung jawab data
Cakupan yang perlu dipahami developer
- Ini adalah panduan ringkas untuk developer yang disusun oleh seorang software engineer yang bergabung ke perusahaan data tanpa latar belakang terkait, agar memahami kegunaan alat dan interaksinya dengan notebook
- Tidak membahas cara membuat dashboard, dasar-dasar statistik, cara mengoperasikan cluster Spark, atau perbandingan mendalam antarproduk dalam kategori yang sama
- Penjelasan mengikuti alur dari mana data berasal dan bagaimana data diproses, disimpan, dan ditampilkan, sambil membedakan tahap siklus hidup yang ditangani tiap alat
Empat tipe peran data
- Batas peran nyata sering kabur, terutama di perusahaan atau tim kecil, tetapi untuk memahami keseluruhan lanskap, peran ini bisa dibagi menjadi empat tipe
- Tipe analitik menafsirkan data dengan SQL dan spreadsheet, lalu memvisualisasikan insight
- Contoh utamanya adalah data analyst dan BI analyst, yang menggunakan Tableau, Excel, dan sebagainya
- Contoh pekerjaannya adalah mengambil data pelanggan, menghitung churn rate per wilayah, lalu membuat dashboard Tableau dan usulan kampanye retensi
- Tipe sains menangani pertanyaan yang lebih dalam atau prediksi melalui statistik, model, dan eksperimen, bukan sekadar pelaporan permukaan
- Contoh utamanya adalah data scientist, yang terutama menggunakan Python, pandas, scikit-learn, dan notebook
- Mereka dapat menelusuri faktor penyebab churn, membuat model kemungkinan churn per pelanggan, lalu merancang dan menganalisis A/B test untuk kampanye retensi
- Tipe engineering mengumpulkan, membersihkan, dan menstandarkan data sumber untuk dimuat ke warehouse atau lake, serta mengoperasikan alat data dan database
- Contoh utamanya adalah data engineer, yang menggunakan Python, Apache Spark, database, warehouse, dan cloud
- Misalnya memperluas hasil analisis menjadi pipeline reverse ETL yang bisa dijalankan berulang, atau mengintegrasikan data transaksi dari berbagai sumber sambil mengelola skema, query, dan pemeriksaan kualitas
- Tipe machine learning membuat dan mengoperasikan model AI, dari model klasifikasi hingga LLM
- Ini adalah kategori yang menggabungkan ML scientist dan ML engineer; karena ekosistem alatnya luas, bagian utama tidak membahasnya secara rinci
- Contohnya menyusun data pelatihan untuk model rekomendasi, melatih dan menyesuaikan model, mendeploy-nya sebagai API, lalu memantau prediksi dan melatih ulang sesuai perubahan perilaku
ETL dan ELT
- ETL(Extract-Transform-Load) adalah alur umum untuk mengekstrak data sumber, membersihkannya atau menggabungkannya dengan data lain, lalu memuat hasilnya ke tujuan
- Urutan tahapnya tidak tetap dan bisa berulang atau saling tumpang tindih
- ELT memuat data sumber ke warehouse terlebih dahulu, lalu mentransformasikannya di dalam warehouse dan menyimpan hasilnya ke tabel terpisah
- Biaya bisa meningkat karena tambahan ruang penyimpanan dan komputasi
- Data mentah tetap tersimpan sehingga bisa diproses ulang dengan cara lain di kemudian hari
Format file dan memori
- CSV mudah digunakan untuk mengirim data kecil dan bisa dibuka di sebagian besar software perkantoran, sehingga cocok untuk pengguna nonteknis
- Apache Parquet adalah format file kolumnar dengan rasio kompresi tinggi, sehingga efisien untuk menyimpan dan mentransfer data besar
- Didukung oleh sebagian besar alat data, sehingga berperan sebagai format umum antaralat
- Apache ORC juga menyelesaikan masalah yang serupa
- Apache Avro adalah format biner berbasis baris yang digunakan untuk pertukaran record, khususnya dalam pemrosesan stream
- Apache Arrow adalah format in-memory de facto yang dioptimalkan untuk pemrosesan dan transfer zero-copy
- Parquet berfokus pada file kecil dan pemindaian item yang dibutuhkan, sedangkan Arrow berfokus pada komputasi aktual yang memanfaatkan instruksi CPU·GPU dan cache
- Arrow menggunakan lebih banyak memori, tetapi memungkinkan pertukaran data yang efisien antara alat seperti pandas dan Rust DataFusion
- Dapat digunakan sebagai backend opsional untuk pandas, sementara Polars dan DataFusion dibangun berbasis Arrow sejak awal
Data warehouse
- Data warehouse mirip dengan database seperti PostgreSQL atau MySQL, tetapi dioptimalkan untuk beban kerja analitik
- Database OLTP seperti MySQL cocok untuk mencari satu baris pengguna berdasarkan ID, sedangkan warehouse OLAP cocok untuk agregasi per kolom seperti total penjualan tahunan per wilayah
- Secara tradisional merupakan tempat penyimpanan akhir untuk data terstruktur yang telah dibersihkan, tetapi dalam ELT juga digunakan sebagai titik muat pertama untuk data mentah
- Karena format penyimpanan dan query engine terikat erat, warehouse dapat memberikan query BI dan pelaporan yang cepat, tetapi biayanya paling tinggi di antara tiga jenis penyimpanan
- Produknya mencakup Snowflake, BigQuery, Redshift
- Opsi open source dan self-hosted mencakup ClickHouse, Apache Doris, StarRocks
- Untuk proyek kecil, database tradisional pun bisa jadi sudah cukup
Data lake
- Data lake lebih mirip folder cloud berskala besar yang menyimpan data terstruktur, semi-terstruktur, dan tidak terstruktur seperti CSV, Parquet, JSON, email, dan gambar, dengan pemrosesan seminimal mungkin
- Dapat dibangun dengan menetapkan aturan penamaan, partisi, dan kebijakan akses lalu menyimpan file di Amazon S3, Google Cloud Storage, Azure Blob Storage
- Jika tidak dikelola dengan baik, ini bisa berubah menjadi data swamp yang sulit dicari atau dimanfaatkan
- Opsi terkelola mencakup Azure Data Lake dan fitur data lake milik Snowflake
- Untuk melakukan query tanpa harus mencari, mengunduh, dan mem-parsing data secara langsung, dibutuhkan metadata catalog dan query engine
- Catalog mencatat nama tabel, skema, dan pemetaan file
- Query engine menggunakan metadata tersebut untuk membaca file terkait dan menjalankan query seperti SQL
- Catalog mencakup Hive Metastore, AWS Glue Data Catalog, Unity Catalog
- Query engine mencakup Apache Spark, Trino, Amazon Athena
Lakehouse data
- Lakehouse data menambahkan kemampuan yang mendekati warehouse di atas lake yang murah dan fleksibel
- Format tabel sebagai komponen inti mengelola cara penyimpanan di antara query engine dan data mentah
- Menangani penulisan bersamaan, error saat penulisan, dan kerusakan data dengan ACID
- Data semi-terstruktur juga harus memiliki skema yang didefinisikan, dan data yang sepenuhnya tidak terstruktur tidak mendapat manfaat dari format tabel
- Mendukung evolusi skema dan manajemen versi
- Dapat mempercepat query dengan optimasi indeks dan partisi
- Beberapa implementasi mendukung time travel untuk menanyakan snapshot pada titik waktu tertentu
- Karena berbasis lake, biayanya bisa lebih murah daripada warehouse dan tidak terikat pada query engine tertentu, tetapi perbandingan harga satu banding satu sulit dilakukan karena biaya komputasi terpisah juga harus diperhitungkan
- Format tabel utama adalah Apache Iceberg, Delta Lake, dan Apache Hudi
- Layanan terkelola mencakup Lakehouse for Apache Iceberg dari Google, Databricks, dan IBM watsonx.data
Sumber dan pengumpulan data
- Data berasal dari database aplikasi seperti PostgreSQL dan Mongo, API eksternal seperti Stripe, event analitik browser, perangkat IoT, dan lainnya
- Data bisa diproses segera setelah diekstraksi, atau dalam ELT, data mentah bisa lebih dulu disimpan ke lake, lakehouse, atau warehouse tergantung bentuk, ukuran, dan infrastrukturnya
- Skrip khusus memang fleksibel, tetapi harus mengimplementasikan ulang kode koneksi yang berulang seperti autentikasi, pagination, dan penanganan error
- Alat pengumpulan data menangani pekerjaan berulang ini dengan menyiapkan konektor sumber dan tujuan
- Change data capture (CDC) menangkap insert, update, dan delete dari log replikasi database tanpa terus-menerus me-query tabel
- Digunakan secara internal oleh alat pengumpulan untuk sumber database
- Debezium banyak digunakan sebagai komponen open source mandiri
Bahasa pemrosesan data
- Python adalah bahasa standar de facto untuk pekerjaan data, dengan komunitas besar dan ekosistem library native
- Bahkan alat yang dibuat dengan bahasa lain sering menyediakan binding Python; Apache DataFusion berbasis Rust adalah salah satu contohnya
- numpy menyediakan array multidimensi berperforma tinggi dan menjadi dasar bagi banyak library
- pandas adalah standar de facto yang menyediakan Series 1 dimensi dan DataFrame 2 dimensi
- Anda bisa membuat visualisasi dengan seaborn dan Plotly, serta membuat aplikasi interaktif dengan streamlit
- Anda juga bisa menjalankan query SQL dengan DuckDB atau menerapkan teknik machine learning dari scikit-learn
- R digunakan di akademik, Java dan Scala digunakan dalam framework big data seperti Spark, sementara Julia dan Rust juga dipakai untuk pekerjaan data tetapi adopsinya lebih rendah daripada Python
- SQL banyak digunakan untuk query dan transformasi warehouse, tetapi sintaksnya sedikit berbeda di tiap lingkungan eksekusi
Pemrosesan batch dan real-time
- Pemrosesan batch memproses kumpulan data besar secara berkala, seperti rekap penjualan bulan lalu, dan cocok untuk pekerjaan yang hasilnya bisa ditunggu selama beberapa jam atau hari
- Pemrosesan real-time menggunakan aliran stream yang diproses segera saat data datang, atau microbatch seperti per 20 detik
- Pipeline yang mengutamakan kecepatan hasil, seperti deteksi bot, menggunakan pemrosesan real-time untuk mengidentifikasi dan memblokir pengguna secepat mungkin
Transformasi berbasis SQL
- dbt dan SQLMesh mendefinisikan transformasi dengan pernyataan SQL
selectlalu mengompilasinya agar dijalankan di query engine yang sebenarnya - Kedua alat ini tidak memproses data secara langsung, melainkan menangani orkestrasi transformasi
- Dibanding skrip Python kustom, pendekatan ini menstandarkan cara transformasi dan memungkinkan pekerjaan kompleks dipecah menjadi model-model kecil yang saling bergantung
refdi dbt merujuk ke model alih-alih nama tabel yang di-hardcode, lalu menjalankannya dalam urutan yang benar berdasarkan graph dependensi- Hasilnya biasanya disimpan di warehouse, lakehouse, atau lake yang sama dengan sumbernya, tetapi juga bisa dikirim ke tujuan lain tergantung konfigurasi query engine
DataFrame lokal dan DuckDB
- DataFrame adalah abstraksi array 2 dimensi untuk menangani data tabular, dan di Python pandas adalah yang paling banyak digunakan
- Implementasi lain mencakup Polars untuk Python dan Rust, DataFusion untuk Rust, DataFrames.jl untuk Julia, data.frame untuk R, dan tablesaw untuk Java
- pandas, data.frame, dan tablesaw menggunakan pendekatan eager execution yang langsung menjalankan operasi saat dipanggil
LazyFramedi DataFusion dan Polars menumpuk operasi sebagai rencana logis lalu mengeksekusinya di.collect()- Rencana itu bisa dioptimalkan sebelum eksekusi sehingga berpotensi lebih cepat
- Library lokal dibatasi oleh memori dan CPU
- pandas memproses semua data di memori sehingga terikat pada ukuran RAM
- Streaming di Polars dapat menangani data yang lebih besar daripada RAM, tetapi beberapa operasi tetap perlu memuat working set ke memori
- DuckDB adalah database OLAP in-process yang sering disebut sebagai “SQLite untuk analitik”
- Tanpa infrastruktur terpisah, ia bisa me-query CSV, Parquet, dan pandas DataFrame lokal dengan SQL
Pemrosesan terdistribusi skala besar
- Saat melewati batas satu mesin, data dibagi menjadi beberapa bagian untuk diproses paralel di cluster dan diskalakan secara horizontal sesuai beban kerja
- Apache Hadoop adalah alat perwakilan pada masa awal, tetapi kini dianggap legacy dan masih bisa ditemui di lingkungan lama
- Apache Spark saat ini adalah standar de facto yang menangani loading data, transformasi, paralelisasi, dan optimasi
- PySpark menyediakan API DataFrame dan lapisan kompatibilitas pandas
- SparkR baru-baru ini dihentikan, dan binding Java serta Scala juga tersedia
- Karena dapat membaca dan menulis ke berbagai storage, Spark digunakan baik sebagai query engine data lake maupun untuk pekerjaan transformasi skala besar
- Dask memperluas kode Python ke cluster dengan pendekatan yang tetap dekat dengan API pandas dan numpy yang familier
- Ray adalah framework komputasi terdistribusi serbaguna yang особенно banyak digunakan untuk pelatihan ML
- Apache Flink juga memproses batch, tetapi fokus utamanya adalah stream processing
Event streaming dan Kafka
- Pemrosesan stream cocok untuk tugas yang membutuhkan hasil seketika seperti deteksi penipuan kartu kredit, atau memvalidasi event analitik web saat tiba lalu memperkayanya dengan geoinformasi IP sebelum dimasukkan ke ClickHouse
- Jika diproses segera setelah tiba, payload mentah mungkin tidak perlu disimpan terpisah sampai eksekusi batch berikutnya
- Apache Kafka adalah platform event streaming terdistribusi dan tahan gangguan yang menerima event dari producer, menyimpannya, lalu memungkinkan consumer membacanya
- Tidak seperti message queue, event tidak dihapus meski consumer telah mengonfirmasinya, dan banyak consumer bisa membacanya berulang kali sampai aturan retensinya kedaluwarsa
- Kafka sendiri tidak memproses data; pemrosesan dilakukan oleh worker terpisah sebagai consumer
- Kafka Connect menghubungkan Kafka ke sistem eksternal seperti database
- Kafka Streams adalah library Java/Scala di atas Kafka untuk melakukan transformasi stateful, agregasi window, dan join
- Berjalan dengan ditanamkan di dalam aplikasi dan hanya bekerja dengan Kafka
- Platform event streaming lain mencakup Apache Pulsar, Redpanda, AWS Kinesis Data Streams
Mesin pemrosesan stream
- Apache Flink menerima definisi sumber event dan prosedur pemrosesan, lalu menangani deployment cluster, penskalaan, dan pemulihan gangguan
- Pipeline dapat mencakup filtering, pemetaan field, agregasi window, deduplikasi, dan output ke topik Kafka lain atau database
- Job yang telah di-deploy terus memproses event baru, bukan batch yang selesai lalu berhenti
- Opsi lain mencakup Spark Structured Streaming, Google Cloud Dataflow, Azure Stream Analytics
Orkestrasi pekerjaan
- Saat transformasi dbt, job Spark, dan skrip kustom bertambah banyak, orchestrator menggabungkan langkah-langkah terpisah menjadi satu pipeline
- Tiap job dan dependensinya didefinisikan sebagai kode, umumnya Python, untuk membentuk DAG berupa graf berarah asiklik
- Orchestrator tidak memproses data secara langsung, melainkan mengoordinasikan eksekusi skrip Spark, pemanggilan transformasi dbt, permintaan HTTP, dan sebagainya
- Trigger bisa berupa jadwal, event Kafka, eksekusi manual dari UI, permintaan HTTP, atau trigger buatan plugin
- Job yang independen bisa dijalankan paralel, lalu hanya langkah yang gagal yang diulang dan proses dapat dilanjutkan dari titik itu
- Karena ditujukan untuk pemrosesan batch yang berjalan dari awal sampai selesai, alat ini kurang cocok untuk pipeline stream yang terus hidup; untuk kasus itu biasanya mengandalkan mesin pemrosesan seperti Flink
- Produk yang mewakili kategori ini adalah Apache Airflow, Dagster, Prefect, Luigi
- Luigi lebih lama dan saat ini kurang populer
Observabilitas dan pemantauan kualitas
- Observabilitas data terbagi menjadi status pipeline dan kualitas data itu sendiri
- Pemantauan pipeline memeriksa apakah ia berjalan, gagal, dan berapa lama durasinya
- Pemantauan data memeriksa freshness, anomali volume data, perubahan skema tanpa pemberitahuan, dan sebagainya
- Untuk pipeline, bisa digunakan alat observabilitas aplikasi umum seperti Prometheus, Grafana, ELK, serta fitur bawaan dari orchestrator
- Pemeriksaan kualitas data dapat diimplementasikan dengan Great Expectations, yang memungkinkan Anda mendefinisikan langsung format yang diharapkan, serta dbt tests
- Produk otomatis mempelajari pola data normal lalu mendeteksi anomali; contohnya Monte Carlo, Bigeye, Metaplane
Pemuatan berulang dalam pipeline
- Tujuan pemuatan akhir ETL adalah warehouse, lake, atau lakehouse, tetapi data tidak hanya disimpan sekali di ujung pipeline; data disimpan berulang kali dalam bentuk berbeda
- Arsitektur medallion membagi tingkat pemurnian dalam penyimpanan yang sama ke dalam tiga lapisan
- Bronze adalah data mentah yang masuk langsung dari sumber
- Silver adalah data yang telah dibersihkan dan distandardisasi melalui perbaikan tipe, deduplikasi, penggabungan sumber, dan sebagainya
- Gold adalah data yang telah diagregasi dan dimodelkan untuk tujuan tertentu seperti dashboard atau laporan
- Analis umumnya mengkueri tabel Gold, sementara engineer dapat menelusuri hingga Bronze untuk debugging pipeline
Pemodelan dimensional
- Jika struktur medallion menunjukkan tingkat pemurnian data, maka pemodelan dimensional membentuk wujud tabel di warehouse
- Pendekatan yang dipopulerkan oleh Ralph Kimball dalam The Data Warehouse Toolkit ini membedakan tabel fakta dan tabel dimensi
- Tabel fakta menyimpan satu kejadian atau nilai ukur per baris, seperti pesanan, pembayaran, atau page view
- Bentuknya panjang dan sempit, berisi banyak angka dan foreign key ke tabel dimensi, serta terus bertambah
- Tabel dimensi menyimpan konteks terjadinya kejadian, seperti pelanggan, produk, atau tanggal
- Tabel ini lebih lebar dan berubah relatif lebih lambat
- Jika tabel fakta di tengah dikelilingi tabel dimensi, itu menjadi star schema
- Ada juga snowflake schema yang lebih ternormalisasi, dan ini tidak terkait dengan produk Snowflake
- Grain mendefinisikan apakah satu baris mewakili satu pesanan, satu item pesanan, atau satu pesanan harian per pelanggan
- Data mart adalah sebagian warehouse yang disesuaikan untuk tim atau topik tertentu seperti pemasaran atau keuangan, dan biasanya berada di lapisan Gold
- Tidak semua tim mengikutinya secara ketat; dengan memanfaatkan warehouse modern yang cepat dan biaya penyimpanan murah, kadang dibuat juga satu tabel besar yang lebar dan terdenormalisasi untuk tujuan tertentu
OLAP real-time untuk aplikasi
- Untuk dashboard internal, tabel Gold di warehouse sudah cukup, tetapi untuk disajikan ke banyak pengguna dalam hitungan milidetik, latensi kueri dan biaya per permintaan bisa jadi tidak cocok
- Data yang membutuhkan konkurensi tinggi dan respons cepat—seperti analitik untuk pengguna, pemantauan internal real-time, leaderboard, item populer, dan pengukuran penggunaan—dipindahkan ke database OLAP real-time
- Yang termasuk kategori ini adalah Apache Druid, Apache Pinot, ClickHouse, dan Apache Doris, dengan ClickHouse digunakan secara luas
Reverse ETL
- Reverse ETL mengirim kembali data yang telah diproses di warehouse ke alat operasional seperti CRM
- Misalnya, jika nilai seumur hidup pelanggan dihitung dari data Stripe lalu dimasukkan ke HubSpot, tim sales bisa langsung melihat pelanggan bernilai tinggi
- Alat khusus menangani pemetaan tabel/kolom ke field tujuan, serta kegagalan, retry, rate limit, alert, dan sinkronisasi inkremental
- Pilihannya mencakup Airbyte Data Activation, Fivetran Activations, Hightouch, RudderStack
- Fivetran Activations sebelumnya bernama Census sebelum diakuisisi
Katalog data dan lapisan semantik
- Katalog data untuk manusia menyimpan sumber data, pemilik, kebijakan akses, dan informasi pencarian sehingga memberi konteks bisnis pada tabel dan kolom
- Tujuannya berbeda dari metastore untuk mesin kueri
- Unity Catalog, DataHub, OpenMetadata adalah contoh yang representatif
- Lapisan semantik menyimpan definisi standar untuk entitas bisnis, relasi, dan metrik
- Menyeragamkan hal-hal seperti model pelanggan berasal dari tabel dan kolom mana, pasar apa saja yang termasuk dalam EMEA, dan apakah refund dikecualikan dari pendapatan
- Saat entitas dan metrik yang benar dipilih di alat BI atau agen AI, lapisan ini mengubahnya menjadi kueri yang diperlukan atau menyediakan informasi yang dibutuhkan untuk membuat kueri
- LookML milik Looker, Cube, dbt Semantic Layer, dan fitur semantik Unity Catalog adalah contohnya
Data lineage
- Data lineage melacak bagaimana data diubah saat melewati pipeline
- Dapat dikumpulkan secara otomatis dari DAG orkestrator, parsing SQL transformasi, serta event dan metadata yang diekspor oleh job pemrosesan
- Pada level tabel, ini mencatat relasi bahwa
gold.ordersdibuat darisilver.ordersdansilver.customers - Pada level kolom, ini bahkan melacak relasi bahwa
customers.life_time_valuedihitung dariorders.totaldansubscription_payments.amount - Digunakan untuk menilai dampak hilir dari penghapusan kolom, analisis akar masalah untuk metrik yang salah, dan kepatuhan atas penggunaan informasi identitas pribadi
- Unity Catalog, DataHub, dan OpenMetadata mendukung visualisasi lineage, tetapi seluruh pipeline harus menyediakan data pelacakan melalui konektor atau event manual
- Alih-alih format khusus per vendor, bisa digunakan standar OpenLineage yang didukung oleh berbagai katalog dan alat pemrosesan
Dashboard dan laporan BI
- Dashboard dan laporan adalah tujuan konsumsi paling umum dari pipeline data, dan di perusahaan kecil bahkan bisa menjadi satu-satunya use case yang nyata
- Alat BI terhubung ke warehouse, lakehouse, dan database aplikasi untuk memungkinkan pembuatan chart dan dashboard tanpa menulis kode
- Intinya adalah self-service, yaitu pengguna nonteknis bisa membuat chart atau melakukan eksplorasi langsung di UI tanpa harus selalu meminta bantuan analis
- Dapat mengirim laporan terjadwal lewat email atau Slack, atau memberi peringatan saat metrik melewati ambang batas
- Tableau dan Power BI banyak digunakan di perusahaan besar dan berfokus pada visualisasi yang kuat dan fleksibel
- Looker berpusat pada lapisan semantik LookML dan cocok untuk organisasi teknis
- Metabase dapat disiapkan dengan cepat, termasuk self-hosting, dan mudah diakses oleh pengguna nonteknis
- Looker Studio adalah produk terpisah yang tidak menggunakan LookML dan fiturnya lebih sedikit daripada Looker, dan baru-baru ini namanya diubah kembali menjadi Data Studio
Analitik operasional
- Analitik operasional menyediakan data di dalam aplikasi yang digunakan setiap hari oleh fungsi nonanalitik, bukan untuk laporan eksekutif
- Contoh penggunaannya antara lain sebagai berikut
- Menyinkronkan agregasi penggunaan ke HubSpot agar tim penjualan dapat melakukan upsell ke pelanggan yang tepat
- Menyinkronkan pesanan terbaru, tiket dukungan, dan paket langganan ke Zendesk agar tim dukungan dapat melihat konteks pelanggan
- Membuat aplikasi internal yang menampilkan status adopsi produk per pelanggan untuk tim customer success
- Reverse ETL adalah metode penyampaian yang representatif, tetapi aplikasi internal Customer 360 yang langsung mengueri warehouse juga termasuk analitik operasional
Analisis ad-hoc, eksploratif, dan notebook
- Analisis ad-hoc menyelidiki pertanyaan satu kali dengan data yang ada, seperti penyebab penurunan pendaftaran atau cohort yang memicu refund
- Analisis eksploratif mencari insight dengan menelaah data tanpa pertanyaan yang ditentukan sebelumnya
- Karena operasi berikutnya berubah sesuai hasil, dan lebih kompleks daripada filter atau agregasi sederhana, alat pelaporan biasa saja mungkin tidak cukup
- Bisa menggunakan Python dan pandas·Polars, UI SQL warehouse, Spyder, RStudio, dan lain-lain
- Notebook menggabungkan sel seperti Markdown, kode, dan SQL dalam satu file, lalu menempatkan output gambar, chart interaktif, dan tabel di samping kode
- Cocok untuk eksplorasi bertahap sambil melihat hasil eksekusi dan untuk mempresentasikan hasil
- Jupyter, Google Colab, Deepnote, marimo adalah contoh yang representatif
- Platform seperti Databricks dan Snowflake juga menyediakan notebook mereka sendiri
Konsumsi data oleh machine learning
- ML adalah bidang tersendiri dengan feature store, alat pelatihan, pelacakan, dan deployment, tetapi juga merupakan konsumen utama data
- Selain LLM, ada juga model khusus seperti prediksi churn, rekomendasi, peramalan permintaan, dan segmentasi pelanggan, yang memerlukan data pelatihan yang telah dibersihkan sebelum dipakai di produksi
- Data scientist atau ML engineer mengambil feature seperti jumlah pesanan dalam 30 hari terakhir dan jumlah hari sejak login terakhir dari warehouse untuk melatih dan menerapkan model
- Hasil prediksi kemudian mengalir kembali ke analitik operasional, seperti skor churn di CRM, atau ke rekomendasi produk untuk pengguna
Analitik tersemat
- Analitik tersemat menyediakan analisis seperti produk populer, wilayah pelanggan, dan peringkat pencarian di dalam aplikasi untuk penjual marketplace
- Jika hanya sekitar 5 chart yang sudah ditentukan sebelumnya dan filter yang terbatas, kueri, UI, dan library chart bisa diimplementasikan sendiri
- Jika pengguna perlu membuat kueri yang kompleks, bisa memakai alat BI seperti Metabase, Looker, atau Tableau, atau produk yang berfokus pada embed seperti Sisense dan Luzmo
- Aplikasi host menangani autentikasi dan otorisasi, sementara alat embed menangani UI kueri dan rendering chart
Menjual data itu sendiri sebagai produk
- Data bisa menjadi produk itu sendiri, bukan sekadar bahan untuk fitur
- Misalnya mengumpulkan, mentransformasi, dan mengindeks data dari berbagai blockchain kripto lalu menjual aksesnya kepada analis, atau mengumpulkan hasil pencarian Google lalu menjualnya kepada pakar SEO
- Untuk menjual data dan akses kuerinya, dibutuhkan pipeline yang kokoh untuk pengumpulan tepat waktu serta kemampuan kueri berperforma tinggi
Tata kelola data
- Tata kelola data mengelola siapa yang dapat mengakses data sensitif seperti informasi identitas pribadi dan informasi kesehatan, serta catatan aksesnya
- Ini juga mencakup kepemilikan data, penanganan data pribadi seperti hak untuk dilupakan, lokasi penyimpanan fisik, dan periode retensi
- Hal ini dapat didukung oleh teknologi seperti role dan kontrol akses di warehouse, informasi kepemilikan di katalog, serta pelacakan penggunaan PII melalui lineage
- Ini bukan hanya masalah teknologi; porsi manusia dan proses juga besar, dan sangat terkait dengan tim legal, kepatuhan, dan keamanan
- Seluruh lanskap data dapat dilihat sebagai alur mengumpulkan data dari sumber, lalu menyimpan, memproses, dan memanfaatkannya, dan di bawah tiap kategori terus muncul আরও banyak alat dan pilihan rinci
Belum ada komentar.