APA SAJA TUGAS-TUGAS DATA ENGINEER?

Tantangan Menulis Hari ke-131

Oleh: Bernardus Ari Kuncoro


Apa saja tugas-tugas Data Engineer (DE)?
(Lanjutan dari postingan lalu)
Yuk, sama-sama belajar dari perumpamaan berikut.


Ibarat tim koki dari sebuah restoran, DE bertugas mencari bahan makanan yang berkualitas. Di samping itu, dia akan mencari solusi agar bahan makanan tersebut siap diolah. Dia juga akan mempersiapkan semua piranti masak yang diperlukan.


Jadi dari analogi ini, tugas Data Engineer adalah
– mengkurasi data
– membuat data mart dari data yang dikurasi agar siap dipakai oleh Tim Data Analitik
– membuat arsitektur manajemen data baik berupa database, data warehouse ataupun sistem pemrosesan data berskala besar (Big Data).
– mendeploy model atau hasil analytics dari tim Data Scientist


Sebagai DE,
kamu akan mendapati
– ETL/ELT yang akan men-transform data.
– Data Warehouse yang akan menyimpan dan menjaga kualitas data.
– Pipeline yang akan bertanggungjawab pada pengaliran data dari sumber ke tujuan.

Gimana, makin tertarik dengan bidang ini?

Simak postingan berikut, ya.

Kalideres, 8 Agustus 2021

APA ITU DATA ENGINEER?

Tantangan Menulis hari ke-130

Oleh: Bernardus Ari Kuncoro

Beberapa waktu lalu saya diminta menulis untuk konten. Ini dia draft yang saya buat.

SLIDE 1
Ini Salah Satu Role Digital Talent yang PALING BANYAK DIBURU perusahaan ternama!

Data Engineer

SLIDE 2
Kenapa harus ada role Data Engineer?
Semakin banyak variasi dan besarnya data yang akan dipakai untuk melakukan proses analitik, semakin diperlukan lah para data engineer. Saat ini perusahaan yang bergerak di industri perbankan, telekomunikasi, teknologi, dan e-commerce, terutama yang memiliki pelanggan dan transaksi yang berlimpah, sangat memerlukan peran mereka.

SLIDE 3
Data Engineering seringkali dianggap sama dengan Data Science. Namun para ahli menyatakan kedua bidang ini memiliki perbedaan yang jelas.

Apa itu Data Engineering (DE)?

DE merupakan sebuah bidang studi yang mempelajari tentang perancangan dan pengelolaan data dan ekosistemnya. Meliputi pengubahan (transforming), pengaliran (transporting), dan pengamanan (securing) (gambar ada di slide referensi)
Ref: https://docs.google.com/presentation/d/1FlllMvNDgQJDF-xr9gBTdononuLUGEVq2WH5IjFUeFw/edit?usp=sharing

Sementara itu Data Scientist menerima data yang sudah ditransform, dialirankan, dan diamankan, untuk dianalisis dan dimodelkan lebih lanjut.

SLIDE 4
Sejarah Penamaan ‘Data Engineer’
Dulu (~1990an), kita mengenal SQL Developer, Database Administrator, dan Data Architect. Sekarang (2000-an), penamaannya lebih dikenal sebagai Data Engineer.

Kira-kira tugas seorang Data Engineer apa aja ya?

Simak dipostingan selanjutnya!

Hasil produksinya demikian.

Gimana? Cakep, ya?

Kalideres, 7 Agustus 2021

APA PERLU PAKAI SPARK?

Tantangan Menulis Hari ke-126

Oleh: Bernardus Ari Kuncoro

Tulisan ini merupakan lanjutan dari tulisan sebelumnya terkait “APA ITU SPARK?”

Well, semakin besar kekuatan komputasi yang digunakan untuk mengolah data Anda, tentu semakin kompleks pembagian tugasnya.

Bayangkan Anda memiliki tugas membuat video.

Tugas video yang pertama hanya membutuhkan satu pemeran. Sementara video yang kedua butuh melibatkan banyak orang.

Yang melibatkan banyak orang, pembagian tugasnya menjadi lebih rumit. Sedangkan yang hanya melibatkan satu orang, manajemen pembagian tugasnya menjadi sangat sederhana.

Tentunya, hasil video dan waktu keseluruhan pengerjaan yang akan berbicara.

Kembali lagi ke SPARK. Bagaimana cara mengetahui kalau kamu butuh SPARK atau tidak? Coba pertimbangkan dua pertanyaan berikut ini.

1. Apakah data kamu terlalu besar untuk dikerjakan oleh mesin tunggal?

Ibarat kata, kamu ingin memroduksi film kolosal. Jumlah pemainnya harus lebih dari 100 orang, karena ada adegan perang. Kamera yang akan melakukan syut minimal tiga kamera. Bisakah kamu mengerjakannya sendiri? Tentu tidak.

2. Dapatkah kalkulasinya dengan mudah dibagi-bagi secara paralel?

Kunci dari kata mudah di sini adalah pembagian tugas yang jelas. Artinya, masing-masing node harus tahu tugasnya menangani bagian data yang mana. Melakukan kalkulasi apa. Sedemikian sehingga nanti akan ada yang berperan melakukan agregasi dan pengecekan tugas. Siapa yang berperan? Bisa manusia, bisa juga platform yang diprogram.

Semoga makin tidak bingung. Karena besok masih bersambung.

Kalideres, 3 Agustus 2021

MENGENAL APACHE CASSANDRA

Mengenal Apache Cassandra

Tantangan Menulis Hari ke-156

Oleh: Bernardus Ari Kuncoro

Ada pepatah “Tak kenal maka tak sayang”. Hal ini berlaku juga ketika Anda mengenal suatu sistem database. Kali ini saya ingin memperkenalkan Anda dengan Apache Cassandra. Suatu sistem database yang ditujukan untuk kemudahan proses scalability dan memiliki high availability, tanpa mengesampingkan performa.

Tahukah Anda, bahwa Apache Cassandra menggunakan bahasa query CQL? CQL (dibaca si kyu el) Cassandra Query Language. Pada dasarnya, CQL ini mirip dengan SQL.

Perusahaan apa saja yang memanfaatkan Apache Cassandra?

Aplikasi Uber
Layanan Netflix
  1. Uber menggunakan Apache Cassandra untuk backend
  2. Netflix menggunakaannya untuk melayani pelanggan ketika streaming video

Use case apa saja yang dapat ditalangi oleh NoSQL (dalam hal ini Apache Cassandra)

  1. Pencatatan transaksi (retail, health care, toko online)
  2. Internet of Things (IoT)
  3. Data timeseries
  4. Beban kerja apapun yang berat ketika menuliskannya ke dalam database.

Apakah Apache Cassadra memiliki hambatan untuk pekerjaan analitik? Ya, akan ada. Seperti ketika Anda menggunakan statement GROUP BY. Mengingat Apache Cssandra membutuhkan data modeling berdasarkan query yang Anda mau, Anda tidak dapat melakukan queries ketika sekonyong-konyong dibutuhkan. Akan tetapi, Anda dapat menambahkan kolom-kolom clustering pada data model dan dan membuat tabel-tabel baru.

QUIZ

Kapan Anda sebaiknya menggunakan Database NoSQL?

  1. Saat data yang akan digunakan sangat besar
  2. Ketika akan melakukan agregasi
  3. Pada saat Anda membutuhkan availability tingkat tinggi
  4. Waktu Anda butuh scale out segera
  5. Ketika Anda butuh untuk melakukan join ke beberapa tabel

Hint: Anda sebaiknya tetap menggunakan relational database untuk proses join dan agregasi, terutama untuk data yang tidak terlalu besar. Namun, NoSQL sangat mumpuni jika datanya besar, butuh high scalability dan scale out segera.

Jadi jawabannya? Silakan direnungkan. Ada tiga jawaban yang benar.

Disadur dan diterjemahkan dari Data Engineering Nanodegree Udacity.

Kalideres, 3 Januari 2020