SlideShare ist ein Scribd-Unternehmen logo
1 von 57
Downloaden Sie, um offline zu lesen
Introduction to Big Data
with Hadoop
Pelatihan, 23-25 Oktober 2020
Dipersiapkan oleh Dony Riyanto
Apa itu Big Data
Benar:
• Sekumpulan data dalam sistem, yang sangat besar jumlahnya,
• sehingga (hampir) tidak mungkin diolah menggunakan infrastruktur/sistem yang ada saat ini (yang dimiliki oleh
perusahaan),
• sehingga (mungkin) dibutuhkan sistem pengolahan data khusus,
• yang dari situ diharapkan suatu saat bisa digali analisa yang lebih dalam, lebih cepat, untuk keperluan
perusahaan/organisasi.
Salah:
• Mengumpulkan data tentang siapapun dan apapun yang penting jumlahnya besar.
• All-in-one solution.
• Pasti lebih baik daripada sistem pengolahan data secara tradisional.
• Sebuah keharusan bagi semua perusahaan/organisasi untuk investasi dan membangun sistem bigdata.
• Hanya dibutuhkan oleh perusahaan/organisasi besar.
Big Data 3 V
Big Data 5 V+
Big Picture
www.ibmbigdatahub.com
• Empower C-Suite
• Improve Reliability
• Speed Operations
• Monitor & React
Apa gunanya Big Data?
• Tempat menyimpan data dalam jumlah besar sekali,
• dan mungkin dalam format yang unstructured/semi-tructured,
• namun harus bisa diolah (dengan cepat/baik).
Tujuan akhir big data:
• Mendapatkan insight yang lebih baik, untuk pengambilan keputusan yang lebih tepat.
• Untuk dapat di lakukan analisa lebih dalam suatu saat nanti.
• Untuk dapat mengambil keputusan secara sistem (bahkan otomatisasi) pada saat bisnis sedang berjalan (daily operation)
Tujuan big data bukan untuk:
• Mengurangi biaya infrastructur pengolahan data
• Secara 'magic' menyelesaikan masalah-masalah/pengambilan keputusan dalam bisnis
GIGO vs GIIO
• Sistem Informasi yang baik umumnya dirancang untuk mencegah Garbage In
Garbage Out. Informasi di filter dengan baik didepan sedemikian mungkin,
untuk memastikan bahwa yang tersimpan adalah informasi inti saja.
• Perusahaan minuman air dalam kemasan, menggunakan Sistem Informasi
untuk mencatat, berapa botol yang di produksi tiap pabriknya, berapa yang
didistribusikan per hari, siapa saja distributornya, dimana saja penjualannya,
dsb.
• Tetapi mereka tidak pernah tahu, kenapa pada saat-saat tertentu pembelian
air minum kemasan naik di daerah tertentu (misalnya: ada konser, atau ada
upacara/seremonial di lapangan). Karena mereka tidak pernah mencatat data-
data pendukung, yang mungkin terlalu detail, yang mungkin dianggap tidak
relevan secara langsung dengan produksi air mineral.
• Bagaimana jika dari data 'sampah' bisa didapatkan insight (gargabe in insight
out)? Lalu ada definisi dari data 'sampah' ini?
GIGO vs GIIO (2)
• Pada sebuah perusahaan e-commerce platform, tentu data utama yang harus
mereka kelola adalah: data barang, data penjual, data pembeli, data
pemesanan, data pengantaram, data pembayaran, dsb.
• Bagaimana dengan data pemesanan yang batal (sudah dimasukkan ke
keranjang tapi kemudian dihapus, atau tidak diteruskan ke checkout)? Atau
aktifitas penjual memasukkan/menghapus/meng-edit item barang jualan
mereka? (dan data-data lain yang sifatnya temporer)
• Bagaimana dengan data: berapa lama user berada dalam web app tersebut,
scroll/klik kemana, arah pergerakan mouse, dsb?
• Bagaimana dengan data-data dari luar web app: aktifitas iklan di
web/platform lain, aktifitas user di platform lain (socmed misalnya)?
• Apakah itu adalah data sampah? Jika semua data itu dikumpulkan dan
disimpan, apa gunanya, dan bagaimana kita bisa memanfaatkannya?
Data Format vs Data Source
Business Intelligence vs Machine Learning
• Banyak perusahaan sudah menerapkan BI dan membuat Data
Warehouse untuk bisa melakukan analisa lebih dalam terhadap data
yang tersimpan. “Apa yang terjadi?” “Customer kita lebih suka apa?”
“Customer kita lebih mau beli item yang mana?
Back during World War II, the RAF lost a lot
of planes to German anti-aircraft fire. So they
decided to armor them up. But where to put
the armor? The obvious answer was to look
at planes that returned from missions, count
up all the bullet holes in various places, and
then put extra armor in the areas that
attracted the most fire.
Business Intelligence vs Machine Learning (2)
• Business Intelligence secara umum bertujuan untuk 'melihat kebelakang' tentang apa
yang terjadi. Pesawat tempur yang kembali dari perang, di-analisa mendalam dan
didapatkan kesimpulan bahwa musuh lebih sering melakukan tembakan ke arah sayap
dan bagian tengah pesawat. Untuk itu kita perlu memperkuat lapisan pesawat pada
bagian itu.
• Jelas kita ketahui bahwa: pesawat yang tertembak di bagian mesin dan/atau bagian kabin,
tidak pulang ke pangkalan dan jatuh di medan tempur. Dan data itu tidak mereka
pertimbangkan.
• Machine Learning membutuhkan data lebih dari itu. Bagaimana pola terbang pesawat
yang berhasil kembali ke pangkalan? Kapan serangan terjadi, berapa banyak pasukan
musuh pada saat terjadi serangan, pesawat terbang ke arah mana dan dalam posisi
bagaimana, profil musuh, spek engine/pesawat, dsb, sehingga bisa didapatkan/dipelajari
pola yang lebih tepat. Yang dibutuhkan mungkin bukan penguatan pada bagian2 pesawat,
tetapi waktu/pola/cara serangannya yang perlu disesuaikan untuk menyelamatkan
pesawat2 berikutnya agar tidak jatuh di pertempuran berikutnya.
Contoh Pemakaian Big Data secara umum
• Product Recomendation
• Realtime Prediction/Estimation
• Sentiment Analysis (of product/marketing campaign)
• Personalized Search Result/Services
• Chat bot/ Virtual Assistance
• Location pin-point
• Pattern Recognition (customer behaviour, type of profitable
customer)
Apa itu Hadoop?
• Hadoop adalah MR
• Hadoop adalah Distributed File System
(menggunakan MR)
• Hadoop adalah ekosistem
• Tools utk query data
• Tools untuk menghubung antara SQL dan
MR/HDFS
• Tools untuk proses data secara stream
• dsb
• Hadoop dalam distro/appliance (Cloudera,
Hortonworks, MapR, Pivotal)
Map -Reduce
Map -Reduce
Re
duce
Raw Data Mapped & Shuffled Data Reducing Process Output
Traditional vs Map-Reduce
Scale Up vs Scale Out Problem
• Paradigma proses data konvensional adalah centralized/
terkonsentrasi pada satu server atau cluster. Hal ini menyebabkan
apabila kita ingin melakukan peningkatan kapasitas, harus dilakukan
secara horizontal scaling atau sering disebut dengan scale-up
Scale Up vs Scale Out Problem (2)
• Ketika konteks pembahasannya adalah data yang bertumbuh menjadi sangat
besar dan datang terus menerus secara cepat dan sulit diprediksi, maka
mekanisme scale-up menjadi terasa sangat berat dan membutuhkan biaya
besar diawal. Karena scale-up harus melalui proses perencanaan yang sangat
matang utk prediksi jangka menengah-panjang, dan biaya timbul di awal. Sulit
juga untuk dilakukan scale-up berkali kali, karena akan menibulkan downtime
yang akan merugikan/menghambat proses di perusahaan/organisasi.
• Teknologi cloud computing dan distributed computing yang semakin canggih
saat ini, memungkinkan kita untuk untuk melakukan peningkatan secara
horisontal atau scale out. Pendekatan scale out mengadosi prinsip:
berkembang secara bertahap sesuai kebutuhan tanpa harus
mengubah/mematikan sistem utama. Prinsip itu juga yang dipakai pada
Hadoop
Scale Up vs Scale Out Problem (3)
• Hadoop mengadopsi prinsip Scale
Out. Dimana data node bisa
ditambahkan sewaktu-aktu saat
dibutuhkan dan langsung
join/berkoordinasi dengan data node
yang lain melalui name node.
• Ini yang menyebabkan Hadoop
sangat populer dan ideal untuk
dipakai sebagai proses/penyimpanan
Big Data.
Map-Reduce
Map-Reduce (latihan)
• Install Hadoop (dibutuhkan install dan konfigurasi JAVA, download
dan setting aplikasi Apache Hadoop). Untuk proses instalasi Hadoop
bisa dilihat dari berbagai sumber, salah satunya:
https://www.tutorialspoint.com/hadoop/hadoop_enviornment_setup.htm
• Pastikan Hadoop sudah jalan. Bisa coba dengan ketik hadoop version
• Untuk menjalankan contoh di hadoop (pada saat download dan
extract, ada beberapa contoh bawaan). Contohnya: hadoop jar
share/hadoop/mapreduce/hadoop-mapreduce-examples-3.2.1.jar grep input
output 'dfs[a-z.]+'
• Lebih jauh bisa dibaca pada beberapa sumber seperti
https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/SingleCluster.html
Map-Reduce (latihan wordcount dengan Python)
• Salah satu tutorial yang cukup baik untuk memahami cara kerja
Hadoop MR/HDFS bisa dibaca pada link berikut ini: https://www.michael-
noll.com/tutorials/writing-an-hadoop-mapreduce-program-in-python/
• Contoh app mapper:
Pada contoh ini, tugas mapper
hanya menerima input berupa text,
lalu memisahkan kan berdasarkan
kata, lalu menampilkan dalam
bentuk 2 kolom: <kata> 1
Map-Reduce (latihan wordcount dengan Python)
• Contoh app reducer:
Pada contoh ini, tugas reducer adalah memproses
data yang masuk (2 kolom: <kata> 1). Lalu selama
kata berikutnya masih sama dengan sebelumnya,
maka jumlahkan angkanya (1+1+1+1 dst), sampai
semua baris data terproses. Hasilnya seperti ini:
Map-Reduce (latihan wordcount dengan Python)
mapper.
py
Hadoop Servers
mapper.
py
mapper.
py
shuffle
reducer.
py
reducer.
py
result
HDFS
Map-Reduce (latihan wordcount dengan Python)
Hadoop Ecosystem
HIVE
• Apache HIVE adalah salah satu aplikasi dalam ekosistem Hadoop
• HIVE membutuhkan Hadoop (HDFS dan Hadoop MapReduce) dan RDMS
(untuk menyimpan meta data/metastore) untuk mengolah dan memproses
data
• HIVE menggunakan syntax mirip seperti SQL pada umumnya
• Salah satu perbedaan utama HIVE dengan RDBMS/SQL DB adalah HIVE
menggunakan “Schema on READ only”. Sehingga HIVE tidak ditujukan untuk
update/insert data seperti pada SQL.
• Perintah-perintah HIVE dapat di-eksekusi menggunakan command line
maupun menggunakan Web UI
• HIVE terdiri dari 3 komponen utama yaitu: client, service dan storage (lihat
gambar berikutnya)
HIVE
HIVE
• Client
Berfungsi sebagai antarmuka ke manusia/sistem. Perintah-perintah HIVE diketik dan dimulai dari sini.
• Service
Berfungsi sebagai proses dibelakang layar, yang akan mengeksekusi perintah-perintah yang masuk
dari client, lalu menarik/meyimpan/ menghasilkan data output dari storage
• Storage & Computing
Tempat penyimpanan data dan proses terdistribusi. Data yang ada pada HDFS dipetakan
menggunakan metadata yang tersimpan pada service.
Contoh: Kita memiliki data transaksi harian dari banyak cabang perusahaan yang kemudian di export
menjadi sebuah file besar dengan nama transaction-2020.csv. File ini lalu di upload ke HDFS agar
terdistribusi dan dapat diproses secara paralel. Data ini dalam format comma separated value
(structured) dengan kolom ID, trans_data, trans_amount, customer_id, dsb. Menggunakan HIVE,
struktur data ini disimpan sebagai meta data, sehingga bisa dilakukan query seolah-olah file ini
adalah tabel RDBMS biasa. Misalnya: “SELECT SUM(trans_amount) FROM transaction”
HIVE
HIVE
• Urutan eksekusi perintah pada HIVE digambarkan pada gambar di
atas.
• Perintah yang masuk dari client, dikirimkan ke service, lalu perintah
tersebut diterjemahkan menjadi script khusus, dan dilakukan
kompilasi, lalu verifikasi kolom/data dengan meta data yang
tersimpan di metastore, lalu akan dieksekusi oleh service.
• Dalam eksekusinya, HIVE akan membaca file pada HDFS dan
memproses pengolahan data-nya menggunakan MapReduce.
• Ini berbeda dengan contoh MapReduce yang kita lakukan pada
latihan sebelumnya. Dimana di latihan sebelumnya (tanpa HIVE), kita
harus membuat dulu aplikasi mapper dan reducer, menggunakan
bahasa pemrograman yang didukung, seperti JAVA atau Python.
HIVE vs Map Reduce (manual)
Instalasi HIVE
• HIVE membutuhkan requirement yang hampir sama dengan Hadoop (membutuhkan JAVA dan
konfigurasinya)
• Kemudian kita perlu meng-install database server seperti: Apache Derby, MySQL, PostgreSQL, dsb.
Database ini dibutuhkan HIVE untuk tempat menyimpan meta data (metastores)
• Kemudian download dan extract HIVE
• Lalu lakukan konfigurasi-konfigurasi yang diperlukan untuk menghubung HIVE dengan Hadoop
dan database metastore
• Jalankan service HIVE
• Jalankan client HIVE, baik menggunakan command line (CLI) maupun dengan menggunakan tools
berbasis web agar perintah HIVE bisa dijalankan lewat browser (dibutuhkan instalasi aplikasi
tambahan, seperti Apache Ambari)
• Salah satu sumber untuk melihat contoh langkah-langkah instalasi HIVE bisa dilihat pada link
berikut ini https://www.guru99.com/installation-configuration-hive-mysql.html
HIVE CLI
• Jalankan aplikasi HIVE CLI dengan cara mengetik: 'hive' atau
'./bin/hive'
• Lalu ketikkan perintah-perintah HIVE disitu
Contoh:
HIVE Web Menggunakan Ambari
HIVE SQL (HIVEQL)
• Berikut ini beberapa contoh membuat tabel baru dan
mengolah data menggunakan perintah HIVE SQL
HIVE SQL (HIVEQL)
• Pada contoh diatas, dibuat sebuah tabel baru dengan nama employess_guru
Create table employees_guru(Id INT, Name STRING, Age
INT, Address STRING, Salary FLOAT, Department STRING)
Row format delimited Fields terminated by ',';
• Lalu untuk mengisi datanya ke tabel baru tersebut, diambil file CSV (bisa dari
local file maupun file yang sudah tersimpan di HDFS). Contoh data local:
load data local inpath '/home/hduser/Employees.txt'
into TABLE employees_guru;
HIVE SQL (HIVEQL)
• HIVE juga bisa membaca file yang SEMISTRUCTURED misalnya dalam
format XML. Contoh, buat tabel baru 'xmlsample':
• File XML itu kemudian kita parsing (potong-potong) dan tampilkan,
misalnya seperti ini:
Quiz HIVE
1. Mengapa dibutuhkan HIVE, bukan RDBMS biasa?
2. Apa kelebihan pengolahan data dengan HIVE dibandingkan RDBMS
biasa?
3. Kalau sudah ada Hadoop (HDFS/MR) mengapa masih
membutuhkan HIVE?
4. Dari sekian banyak contoh data yang bisa diproses menggunakan
Hadoop, data seperti apa yang lebih cocok diolah menggunakan
HIVE?
Petunjuk Jawaban
1. Secara umum memang terlihat pengolahan data di HIVE mirip/sama dengan
RDBMS, sama-sama menggunakan perintah SQL. Namun HIVE memproses
data secara terdistribusi dan eksekusinya bisa dilakukan secara paralel,
sehingga bisa mengolah data yang sangat besar. Hal ini tidak bisa dilakukan
di RDBMS biasa.
2. Sudah dijelaskan sekilas diatas.
3. HIVE adalah abstraksi dari dari Hadoop. Jika menggunakan Hadoop saja,
eksekusi perintah harus menggunakan aplikasi yang kita bikin dengan
bahasa pemrograman yang didukung seperti JAVA, Python, nodejs, dsb.
4. Lebih cocok untuk jenis data STRUCTURED maupun SEMI-STRUCTURED.
Walaupun secara umum bisa juga dipakai untuk jenis data UNSTRUCTURED,
tetapi dibutuhkan konversi agar dapat dikenali sebagai kolom dan baris
Batch vs Stream
Batch:
• Data yang ada akan disimpan
terlebih dahulu,
• untuk dilakukan analisa di
kemudian waktu yang lain.
• Ukuran file-nya bisa
diketahui/prediksi sebelumnya.
• Stream:
• Aplikasi stream menunggu data
yang masuk,
• untuk langsung di proses pada
saat itu juga, tanpa disimpan
disimpan. Hasilnya bisa
dilakukan penyimpanan ke HDFS,
atau ke Database, atau tidak
disimpan (hanya di
visualisasikan)
• Ukuran datanya tidak bisa
diketahui, dan tidak berujung.
Batch vs Stream
Merancang Data Lake
• Sejauh ini kita sudah mengenal Hadoop, ekosistemnya dan kelebihan-
kelebihan utamanya.
• Dimana letak Hadoop dalam pipeline?
• Contoh:
Merancang Data Lake
Merancang Data Lake
Merancang Data Lake
https://databricks.com/blog/2017/04/26/processing-data-in-apache-kafka-with-structured-streaming-in-apache-spark-2-2.html
Merancang Data Lake
Data Warehouse:
• Tipe datanya structured
• Row & Collumns
• Tujuan untuk Business
Intelligence
Data Lake:
• All (structured, unstructured,
semistructured)
• Files (CSV, XML, JSON, TXT, MP3,
jpg, etc)
• Big Data Analytics (Machine
Learning/Deep Learning)
Merancang Data Lake
1. Identifikasi jenis data yang mau kita simpan dan sumber datanya.
2. Bagaimana kita mau memproses datanya?
1. Data yang akan diproses itu akan dilakukan secara berkala (bulanan,
semester, tahunan, 3 bulanan, dsb)
2. Atau, mau diproses secara langsung saat itu juga (near realtime)
3. Jika dilakukan secara berkala, maka Hadoop bisa ditempatkan di
depan (data ingestion),
4. sebaliknya kalau butuh pemrosesan data secara aktif terus menerus,
maka Hadoop lebih tepat ditempatkan di belakang (lebih sebagai
penyimpanan akhir)
Contoh Data Warehousing
Biasanya proses ini dilakukan secara berkala atau disebut dengan Batch Processing
Cotoh Batch Proc. Pada Hadoop
Hadoop
Log File, Excel, Word, CSV,
etc
Analisa menggunakan
HIVE, MR, atau lainnya
Cotoh Stream Proc. Pada Hadoop
Hadoop
Log File, Excel, Word, CSV,
etc
Spark
(stream processing)
Analisa
lanjutan
Stream app
Python
Analytics Tools & Visualization
Selain ekosistem utama dari Hadoop, ada beberapa tools yang bisa
dipakai untuk analisis dan visualisasi big data, antara lain:
• Kibana (free open source)
• Knime (free open source)
• Tableau (ada versi trial)
• Pentaho
• Qlik (ada versi trial)
• Grafana (Free open source)
• dsb
Kibana
HDFS to Kibana Diagram
Knime
Grafana

Weitere ähnliche Inhalte

Was ist angesagt?

5 ta-2021-05-business-understanding-modul-ariw-2021-07-17
5 ta-2021-05-business-understanding-modul-ariw-2021-07-175 ta-2021-05-business-understanding-modul-ariw-2021-07-17
5 ta-2021-05-business-understanding-modul-ariw-2021-07-17
ArdianDwiPraba
 
7. ta 2021-07-visualisasi-modul-ariw-2021-07-17-v2
7. ta 2021-07-visualisasi-modul-ariw-2021-07-17-v27. ta 2021-07-visualisasi-modul-ariw-2021-07-17-v2
7. ta 2021-07-visualisasi-modul-ariw-2021-07-17-v2
ArdianDwiPraba
 
Resume-Vivek Mohan (BI & Analytics Enterprise Architect) - Looking for an opp...
Resume-Vivek Mohan (BI & Analytics Enterprise Architect) - Looking for an opp...Resume-Vivek Mohan (BI & Analytics Enterprise Architect) - Looking for an opp...
Resume-Vivek Mohan (BI & Analytics Enterprise Architect) - Looking for an opp...
Vivek Mohan
 

Was ist angesagt? (20)

basis data lanjut modul
 basis data lanjut modul basis data lanjut modul
basis data lanjut modul
 
Towards an Open Research Knowledge Graph
Towards an Open Research Knowledge GraphTowards an Open Research Knowledge Graph
Towards an Open Research Knowledge Graph
 
Modul 4 representasi pengetahuan
Modul 4   representasi pengetahuanModul 4   representasi pengetahuan
Modul 4 representasi pengetahuan
 
Studi kelayakan Aplikasi FedEx
Studi kelayakan Aplikasi FedExStudi kelayakan Aplikasi FedEx
Studi kelayakan Aplikasi FedEx
 
5 ta-2021-05-business-understanding-modul-ariw-2021-07-17
5 ta-2021-05-business-understanding-modul-ariw-2021-07-175 ta-2021-05-business-understanding-modul-ariw-2021-07-17
5 ta-2021-05-business-understanding-modul-ariw-2021-07-17
 
Arsitektur dan model data mining
Arsitektur dan model data miningArsitektur dan model data mining
Arsitektur dan model data mining
 
Konsep Data Mining
Konsep Data MiningKonsep Data Mining
Konsep Data Mining
 
Information & Data Architecture
Information & Data ArchitectureInformation & Data Architecture
Information & Data Architecture
 
Differentiate Big Data vs Data Warehouse use cases for a cloud solution
Differentiate Big Data vs Data Warehouse use cases for a cloud solutionDifferentiate Big Data vs Data Warehouse use cases for a cloud solution
Differentiate Big Data vs Data Warehouse use cases for a cloud solution
 
Best Practices for Scaling Data Science Across the Organization
Best Practices for Scaling Data Science Across the OrganizationBest Practices for Scaling Data Science Across the Organization
Best Practices for Scaling Data Science Across the Organization
 
7. ta 2021-07-visualisasi-modul-ariw-2021-07-17-v2
7. ta 2021-07-visualisasi-modul-ariw-2021-07-17-v27. ta 2021-07-visualisasi-modul-ariw-2021-07-17-v2
7. ta 2021-07-visualisasi-modul-ariw-2021-07-17-v2
 
Pemanfaatan Artificial Intelligence pada Perguruan Tinggi
Pemanfaatan Artificial Intelligence pada Perguruan TinggiPemanfaatan Artificial Intelligence pada Perguruan Tinggi
Pemanfaatan Artificial Intelligence pada Perguruan Tinggi
 
Bagan terstruktur
Bagan terstrukturBagan terstruktur
Bagan terstruktur
 
Project Charter Sistem Informasi Posko Keamanan
Project Charter Sistem Informasi Posko KeamananProject Charter Sistem Informasi Posko Keamanan
Project Charter Sistem Informasi Posko Keamanan
 
Contoh Desain Web yang Baik dan Buruk
Contoh Desain Web yang Baik dan BurukContoh Desain Web yang Baik dan Buruk
Contoh Desain Web yang Baik dan Buruk
 
Resume-Vivek Mohan (BI & Analytics Enterprise Architect) - Looking for an opp...
Resume-Vivek Mohan (BI & Analytics Enterprise Architect) - Looking for an opp...Resume-Vivek Mohan (BI & Analytics Enterprise Architect) - Looking for an opp...
Resume-Vivek Mohan (BI & Analytics Enterprise Architect) - Looking for an opp...
 
Big data introduction
Big data introductionBig data introduction
Big data introduction
 
Graph dalam Struktur Data
Graph dalam Struktur DataGraph dalam Struktur Data
Graph dalam Struktur Data
 
Proposal Penawaran Aplikasi POS Toko Bahagia Electronics
Proposal Penawaran Aplikasi POS Toko Bahagia ElectronicsProposal Penawaran Aplikasi POS Toko Bahagia Electronics
Proposal Penawaran Aplikasi POS Toko Bahagia Electronics
 
Cognos Analytics v11: A Closer Look
Cognos Analytics v11: A Closer Look Cognos Analytics v11: A Closer Look
Cognos Analytics v11: A Closer Look
 

Ähnlich wie Pengenalan Big Data untuk Pemula

Usm a932 artikel 2 lan
Usm a932 artikel 2 lanUsm a932 artikel 2 lan
Usm a932 artikel 2 lan
novi_ici
 
Sim, anindia putri, hapzi ali, pengembangan sistem informasi pada perusahaan ...
Sim, anindia putri, hapzi ali, pengembangan sistem informasi pada perusahaan ...Sim, anindia putri, hapzi ali, pengembangan sistem informasi pada perusahaan ...
Sim, anindia putri, hapzi ali, pengembangan sistem informasi pada perusahaan ...
anindia putri
 
Topik 24 Processing Data dan Visualisasi.pptx.ppt
Topik 24 Processing Data dan Visualisasi.pptx.pptTopik 24 Processing Data dan Visualisasi.pptx.ppt
Topik 24 Processing Data dan Visualisasi.pptx.ppt
widisalendra1
 

Ähnlich wie Pengenalan Big Data untuk Pemula (20)

Usm a932 artikel 2 lan
Usm a932 artikel 2 lanUsm a932 artikel 2 lan
Usm a932 artikel 2 lan
 
Modul Data Warehouse
Modul Data Warehouse  Modul Data Warehouse
Modul Data Warehouse
 
SIM,Ivan fadhila, Hapzi Ali, Sumber Daya Komputasi Dan Komunikasi, Universita...
SIM,Ivan fadhila, Hapzi Ali, Sumber Daya Komputasi Dan Komunikasi, Universita...SIM,Ivan fadhila, Hapzi Ali, Sumber Daya Komputasi Dan Komunikasi, Universita...
SIM,Ivan fadhila, Hapzi Ali, Sumber Daya Komputasi Dan Komunikasi, Universita...
 
Karakteristik data warehouse
Karakteristik data warehouseKarakteristik data warehouse
Karakteristik data warehouse
 
SIM, Gagas Bintang, Hapzi Ali, Sumber Daya Komputasi Dan Komunikasi, Universi...
SIM, Gagas Bintang, Hapzi Ali, Sumber Daya Komputasi Dan Komunikasi, Universi...SIM, Gagas Bintang, Hapzi Ali, Sumber Daya Komputasi Dan Komunikasi, Universi...
SIM, Gagas Bintang, Hapzi Ali, Sumber Daya Komputasi Dan Komunikasi, Universi...
 
Cloud computing
Cloud computingCloud computing
Cloud computing
 
Sim, anindia putri, hapzi ali, pengembangan sistem informasi pada perusahaan ...
Sim, anindia putri, hapzi ali, pengembangan sistem informasi pada perusahaan ...Sim, anindia putri, hapzi ali, pengembangan sistem informasi pada perusahaan ...
Sim, anindia putri, hapzi ali, pengembangan sistem informasi pada perusahaan ...
 
Membangun platform big data
Membangun platform big data Membangun platform big data
Membangun platform big data
 
SIM,Aryo Prawiro,Hapzi Ali,Sumber Daya Komputasi Dan Komunikasi,Universitas M...
SIM,Aryo Prawiro,Hapzi Ali,Sumber Daya Komputasi Dan Komunikasi,Universitas M...SIM,Aryo Prawiro,Hapzi Ali,Sumber Daya Komputasi Dan Komunikasi,Universitas M...
SIM,Aryo Prawiro,Hapzi Ali,Sumber Daya Komputasi Dan Komunikasi,Universitas M...
 
Topik 24 Processing Data dan Visualisasi.pptx.ppt
Topik 24 Processing Data dan Visualisasi.pptx.pptTopik 24 Processing Data dan Visualisasi.pptx.ppt
Topik 24 Processing Data dan Visualisasi.pptx.ppt
 
Herwanto_Kuliah_Umum_Big_Data_Analysis.pptx
Herwanto_Kuliah_Umum_Big_Data_Analysis.pptxHerwanto_Kuliah_Umum_Big_Data_Analysis.pptx
Herwanto_Kuliah_Umum_Big_Data_Analysis.pptx
 
Data ware house
Data ware houseData ware house
Data ware house
 
DWO - Pertemuan 2 & 3
DWO - Pertemuan 2 & 3DWO - Pertemuan 2 & 3
DWO - Pertemuan 2 & 3
 
SAP Sebagai ERP Perusahaan
SAP Sebagai ERP PerusahaanSAP Sebagai ERP Perusahaan
SAP Sebagai ERP Perusahaan
 
Trend in database administration, DBMS enterprise scale
Trend in database administration, DBMS enterprise scaleTrend in database administration, DBMS enterprise scale
Trend in database administration, DBMS enterprise scale
 
Kel2 Data Warehouse 2
Kel2 Data Warehouse 2Kel2 Data Warehouse 2
Kel2 Data Warehouse 2
 
Kel2 Data Warehouse
Kel2 Data WarehouseKel2 Data Warehouse
Kel2 Data Warehouse
 
Sim, Aswi Ruhana, Hapzi ali, s1 akuntansi, sumber daya komputasi dan komunika...
Sim, Aswi Ruhana, Hapzi ali, s1 akuntansi, sumber daya komputasi dan komunika...Sim, Aswi Ruhana, Hapzi ali, s1 akuntansi, sumber daya komputasi dan komunika...
Sim, Aswi Ruhana, Hapzi ali, s1 akuntansi, sumber daya komputasi dan komunika...
 
Rd
RdRd
Rd
 
Rad
RadRad
Rad
 

Mehr von Dony Riyanto

Mehr von Dony Riyanto (20)

KNIME For Enterprise Data Analytics.pdf
KNIME For Enterprise Data Analytics.pdfKNIME For Enterprise Data Analytics.pdf
KNIME For Enterprise Data Analytics.pdf
 
Implementasi Teknologi Industri 4.0 pada TNI AD
Implementasi Teknologi Industri 4.0 pada TNI ADImplementasi Teknologi Industri 4.0 pada TNI AD
Implementasi Teknologi Industri 4.0 pada TNI AD
 
Blockchain untuk Big Data
Blockchain untuk Big DataBlockchain untuk Big Data
Blockchain untuk Big Data
 
Mengenal ROS2 Galactic
Mengenal ROS2 GalacticMengenal ROS2 Galactic
Mengenal ROS2 Galactic
 
Membuat Desain Roket Amatir dan Menjalankan Simulasi
Membuat Desain Roket Amatir dan Menjalankan SimulasiMembuat Desain Roket Amatir dan Menjalankan Simulasi
Membuat Desain Roket Amatir dan Menjalankan Simulasi
 
Creating UDP Broadcast App Using Python Socket on WIndows & Linux
Creating UDP Broadcast App Using Python Socket on WIndows & LinuxCreating UDP Broadcast App Using Python Socket on WIndows & Linux
Creating UDP Broadcast App Using Python Socket on WIndows & Linux
 
Desain ground control & Sistem Pendukung untuk Male UAV/UCAV
Desain ground control & Sistem Pendukung untuk Male UAV/UCAVDesain ground control & Sistem Pendukung untuk Male UAV/UCAV
Desain ground control & Sistem Pendukung untuk Male UAV/UCAV
 
Application Performance, Test and Monitoring
Application Performance, Test and MonitoringApplication Performance, Test and Monitoring
Application Performance, Test and Monitoring
 
Cloud Service Design for Computer Vision, Image & Video Processing+Analytics
Cloud Service Design for Computer Vision, Image & Video Processing+AnalyticsCloud Service Design for Computer Vision, Image & Video Processing+Analytics
Cloud Service Design for Computer Vision, Image & Video Processing+Analytics
 
RealNetworks - SAFR Platform Whitepaper
RealNetworks - SAFR Platform WhitepaperRealNetworks - SAFR Platform Whitepaper
RealNetworks - SAFR Platform Whitepaper
 
Dl6960 Demo Software User's Guide v1.4
Dl6960 Demo Software User's Guide v1.4Dl6960 Demo Software User's Guide v1.4
Dl6960 Demo Software User's Guide v1.4
 
Review of Existing Response System & Technology.
Review of Existing Response System & Technology.Review of Existing Response System & Technology.
Review of Existing Response System & Technology.
 
Beberapa Studi Kasus Fintech Micro Payment
Beberapa Studi Kasus Fintech Micro PaymentBeberapa Studi Kasus Fintech Micro Payment
Beberapa Studi Kasus Fintech Micro Payment
 
Rencana Pengembangan REST API dan Microservice pada MONEVRISBANG
Rencana Pengembangan REST API dan Microservice pada MONEVRISBANGRencana Pengembangan REST API dan Microservice pada MONEVRISBANG
Rencana Pengembangan REST API dan Microservice pada MONEVRISBANG
 
Implementasi Full Textsearch pada Database
Implementasi Full Textsearch pada DatabaseImplementasi Full Textsearch pada Database
Implementasi Full Textsearch pada Database
 
Beberapa strategi implementasi open api untuk legacy system existing app
Beberapa strategi implementasi open api untuk legacy system existing appBeberapa strategi implementasi open api untuk legacy system existing app
Beberapa strategi implementasi open api untuk legacy system existing app
 
Introduction to BACnet: Building Automation & Control Network
Introduction to BACnet: Building Automation & Control NetworkIntroduction to BACnet: Building Automation & Control Network
Introduction to BACnet: Building Automation & Control Network
 
Enterprise Microservices
Enterprise MicroservicesEnterprise Microservices
Enterprise Microservices
 
Edge Exploration of QR Code Technology Implementation
Edge Exploration of QR Code Technology ImplementationEdge Exploration of QR Code Technology Implementation
Edge Exploration of QR Code Technology Implementation
 
GUGUS-a mini program prototype
GUGUS-a mini program prototypeGUGUS-a mini program prototype
GUGUS-a mini program prototype
 

Kürzlich hochgeladen

Abortion pills in Jeddah+966543202731/ buy cytotec
Abortion pills in Jeddah+966543202731/ buy cytotecAbortion pills in Jeddah+966543202731/ buy cytotec
Abortion pills in Jeddah+966543202731/ buy cytotec
Abortion pills in Riyadh +966572737505 get cytotec
 
KISI KISI PSAJ IPS KLS IX 2324.docskskkks
KISI KISI PSAJ IPS KLS IX 2324.docskskkksKISI KISI PSAJ IPS KLS IX 2324.docskskkks
KISI KISI PSAJ IPS KLS IX 2324.docskskkks
danzztzy405
 
Abortion pills in Kuwait salmiyah [+966572737505 ] Get Cytotec in Kuwait city...
Abortion pills in Kuwait salmiyah [+966572737505 ] Get Cytotec in Kuwait city...Abortion pills in Kuwait salmiyah [+966572737505 ] Get Cytotec in Kuwait city...
Abortion pills in Kuwait salmiyah [+966572737505 ] Get Cytotec in Kuwait city...
Abortion pills in Riyadh +966572737505 get cytotec
 

Kürzlich hochgeladen (11)

514034136-Tugas-Modul-4-5-Komputer-Dan-Media-Pembelajaran.pptx
514034136-Tugas-Modul-4-5-Komputer-Dan-Media-Pembelajaran.pptx514034136-Tugas-Modul-4-5-Komputer-Dan-Media-Pembelajaran.pptx
514034136-Tugas-Modul-4-5-Komputer-Dan-Media-Pembelajaran.pptx
 
Contoh Algoritma Asosiasi pada data mining
Contoh Algoritma Asosiasi pada data miningContoh Algoritma Asosiasi pada data mining
Contoh Algoritma Asosiasi pada data mining
 
Abortion pills in Jeddah+966543202731/ buy cytotec
Abortion pills in Jeddah+966543202731/ buy cytotecAbortion pills in Jeddah+966543202731/ buy cytotec
Abortion pills in Jeddah+966543202731/ buy cytotec
 
KISI KISI PSAJ IPS KLS IX 2324.docskskkks
KISI KISI PSAJ IPS KLS IX 2324.docskskkksKISI KISI PSAJ IPS KLS IX 2324.docskskkks
KISI KISI PSAJ IPS KLS IX 2324.docskskkks
 
Abortion pills in Kuwait salmiyah [+966572737505 ] Get Cytotec in Kuwait city...
Abortion pills in Kuwait salmiyah [+966572737505 ] Get Cytotec in Kuwait city...Abortion pills in Kuwait salmiyah [+966572737505 ] Get Cytotec in Kuwait city...
Abortion pills in Kuwait salmiyah [+966572737505 ] Get Cytotec in Kuwait city...
 
Salinan PPT TATA BAHASA Bahasa Indonesia
Salinan PPT TATA BAHASA Bahasa IndonesiaSalinan PPT TATA BAHASA Bahasa Indonesia
Salinan PPT TATA BAHASA Bahasa Indonesia
 
UKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptx
UKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptxUKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptx
UKURAN PENTYEBARAN DATA PPT KELOMPOK 2.pptx
 
Perlindungan Anak Dalam Hukum Perdata (2).pdf
Perlindungan Anak Dalam Hukum Perdata (2).pdfPerlindungan Anak Dalam Hukum Perdata (2).pdf
Perlindungan Anak Dalam Hukum Perdata (2).pdf
 
ASUMSI DAN KARAKTERISTIK AKUNTANSI SYARIAH.pptx
ASUMSI DAN KARAKTERISTIK AKUNTANSI SYARIAH.pptxASUMSI DAN KARAKTERISTIK AKUNTANSI SYARIAH.pptx
ASUMSI DAN KARAKTERISTIK AKUNTANSI SYARIAH.pptx
 
KONSEP DASAR ADVOKASI GIZI KEBIJAKAN PEMERINTAHAN
KONSEP DASAR ADVOKASI GIZI KEBIJAKAN PEMERINTAHANKONSEP DASAR ADVOKASI GIZI KEBIJAKAN PEMERINTAHAN
KONSEP DASAR ADVOKASI GIZI KEBIJAKAN PEMERINTAHAN
 
Sistem operasi adalah program yang bertindak sebagai perantara antara user de...
Sistem operasi adalah program yang bertindak sebagai perantara antara user de...Sistem operasi adalah program yang bertindak sebagai perantara antara user de...
Sistem operasi adalah program yang bertindak sebagai perantara antara user de...
 

Pengenalan Big Data untuk Pemula

  • 1. Introduction to Big Data with Hadoop Pelatihan, 23-25 Oktober 2020 Dipersiapkan oleh Dony Riyanto
  • 2. Apa itu Big Data Benar: • Sekumpulan data dalam sistem, yang sangat besar jumlahnya, • sehingga (hampir) tidak mungkin diolah menggunakan infrastruktur/sistem yang ada saat ini (yang dimiliki oleh perusahaan), • sehingga (mungkin) dibutuhkan sistem pengolahan data khusus, • yang dari situ diharapkan suatu saat bisa digali analisa yang lebih dalam, lebih cepat, untuk keperluan perusahaan/organisasi. Salah: • Mengumpulkan data tentang siapapun dan apapun yang penting jumlahnya besar. • All-in-one solution. • Pasti lebih baik daripada sistem pengolahan data secara tradisional. • Sebuah keharusan bagi semua perusahaan/organisasi untuk investasi dan membangun sistem bigdata. • Hanya dibutuhkan oleh perusahaan/organisasi besar.
  • 5. Big Picture www.ibmbigdatahub.com • Empower C-Suite • Improve Reliability • Speed Operations • Monitor & React
  • 6. Apa gunanya Big Data? • Tempat menyimpan data dalam jumlah besar sekali, • dan mungkin dalam format yang unstructured/semi-tructured, • namun harus bisa diolah (dengan cepat/baik). Tujuan akhir big data: • Mendapatkan insight yang lebih baik, untuk pengambilan keputusan yang lebih tepat. • Untuk dapat di lakukan analisa lebih dalam suatu saat nanti. • Untuk dapat mengambil keputusan secara sistem (bahkan otomatisasi) pada saat bisnis sedang berjalan (daily operation) Tujuan big data bukan untuk: • Mengurangi biaya infrastructur pengolahan data • Secara 'magic' menyelesaikan masalah-masalah/pengambilan keputusan dalam bisnis
  • 7. GIGO vs GIIO • Sistem Informasi yang baik umumnya dirancang untuk mencegah Garbage In Garbage Out. Informasi di filter dengan baik didepan sedemikian mungkin, untuk memastikan bahwa yang tersimpan adalah informasi inti saja. • Perusahaan minuman air dalam kemasan, menggunakan Sistem Informasi untuk mencatat, berapa botol yang di produksi tiap pabriknya, berapa yang didistribusikan per hari, siapa saja distributornya, dimana saja penjualannya, dsb. • Tetapi mereka tidak pernah tahu, kenapa pada saat-saat tertentu pembelian air minum kemasan naik di daerah tertentu (misalnya: ada konser, atau ada upacara/seremonial di lapangan). Karena mereka tidak pernah mencatat data- data pendukung, yang mungkin terlalu detail, yang mungkin dianggap tidak relevan secara langsung dengan produksi air mineral. • Bagaimana jika dari data 'sampah' bisa didapatkan insight (gargabe in insight out)? Lalu ada definisi dari data 'sampah' ini?
  • 8. GIGO vs GIIO (2) • Pada sebuah perusahaan e-commerce platform, tentu data utama yang harus mereka kelola adalah: data barang, data penjual, data pembeli, data pemesanan, data pengantaram, data pembayaran, dsb. • Bagaimana dengan data pemesanan yang batal (sudah dimasukkan ke keranjang tapi kemudian dihapus, atau tidak diteruskan ke checkout)? Atau aktifitas penjual memasukkan/menghapus/meng-edit item barang jualan mereka? (dan data-data lain yang sifatnya temporer) • Bagaimana dengan data: berapa lama user berada dalam web app tersebut, scroll/klik kemana, arah pergerakan mouse, dsb? • Bagaimana dengan data-data dari luar web app: aktifitas iklan di web/platform lain, aktifitas user di platform lain (socmed misalnya)? • Apakah itu adalah data sampah? Jika semua data itu dikumpulkan dan disimpan, apa gunanya, dan bagaimana kita bisa memanfaatkannya?
  • 9. Data Format vs Data Source
  • 10. Business Intelligence vs Machine Learning • Banyak perusahaan sudah menerapkan BI dan membuat Data Warehouse untuk bisa melakukan analisa lebih dalam terhadap data yang tersimpan. “Apa yang terjadi?” “Customer kita lebih suka apa?” “Customer kita lebih mau beli item yang mana? Back during World War II, the RAF lost a lot of planes to German anti-aircraft fire. So they decided to armor them up. But where to put the armor? The obvious answer was to look at planes that returned from missions, count up all the bullet holes in various places, and then put extra armor in the areas that attracted the most fire.
  • 11. Business Intelligence vs Machine Learning (2) • Business Intelligence secara umum bertujuan untuk 'melihat kebelakang' tentang apa yang terjadi. Pesawat tempur yang kembali dari perang, di-analisa mendalam dan didapatkan kesimpulan bahwa musuh lebih sering melakukan tembakan ke arah sayap dan bagian tengah pesawat. Untuk itu kita perlu memperkuat lapisan pesawat pada bagian itu. • Jelas kita ketahui bahwa: pesawat yang tertembak di bagian mesin dan/atau bagian kabin, tidak pulang ke pangkalan dan jatuh di medan tempur. Dan data itu tidak mereka pertimbangkan. • Machine Learning membutuhkan data lebih dari itu. Bagaimana pola terbang pesawat yang berhasil kembali ke pangkalan? Kapan serangan terjadi, berapa banyak pasukan musuh pada saat terjadi serangan, pesawat terbang ke arah mana dan dalam posisi bagaimana, profil musuh, spek engine/pesawat, dsb, sehingga bisa didapatkan/dipelajari pola yang lebih tepat. Yang dibutuhkan mungkin bukan penguatan pada bagian2 pesawat, tetapi waktu/pola/cara serangannya yang perlu disesuaikan untuk menyelamatkan pesawat2 berikutnya agar tidak jatuh di pertempuran berikutnya.
  • 12. Contoh Pemakaian Big Data secara umum • Product Recomendation • Realtime Prediction/Estimation • Sentiment Analysis (of product/marketing campaign) • Personalized Search Result/Services • Chat bot/ Virtual Assistance • Location pin-point • Pattern Recognition (customer behaviour, type of profitable customer)
  • 13. Apa itu Hadoop? • Hadoop adalah MR • Hadoop adalah Distributed File System (menggunakan MR) • Hadoop adalah ekosistem • Tools utk query data • Tools untuk menghubung antara SQL dan MR/HDFS • Tools untuk proses data secara stream • dsb • Hadoop dalam distro/appliance (Cloudera, Hortonworks, MapR, Pivotal)
  • 15. Map -Reduce Re duce Raw Data Mapped & Shuffled Data Reducing Process Output
  • 17. Scale Up vs Scale Out Problem • Paradigma proses data konvensional adalah centralized/ terkonsentrasi pada satu server atau cluster. Hal ini menyebabkan apabila kita ingin melakukan peningkatan kapasitas, harus dilakukan secara horizontal scaling atau sering disebut dengan scale-up
  • 18. Scale Up vs Scale Out Problem (2) • Ketika konteks pembahasannya adalah data yang bertumbuh menjadi sangat besar dan datang terus menerus secara cepat dan sulit diprediksi, maka mekanisme scale-up menjadi terasa sangat berat dan membutuhkan biaya besar diawal. Karena scale-up harus melalui proses perencanaan yang sangat matang utk prediksi jangka menengah-panjang, dan biaya timbul di awal. Sulit juga untuk dilakukan scale-up berkali kali, karena akan menibulkan downtime yang akan merugikan/menghambat proses di perusahaan/organisasi. • Teknologi cloud computing dan distributed computing yang semakin canggih saat ini, memungkinkan kita untuk untuk melakukan peningkatan secara horisontal atau scale out. Pendekatan scale out mengadosi prinsip: berkembang secara bertahap sesuai kebutuhan tanpa harus mengubah/mematikan sistem utama. Prinsip itu juga yang dipakai pada Hadoop
  • 19. Scale Up vs Scale Out Problem (3) • Hadoop mengadopsi prinsip Scale Out. Dimana data node bisa ditambahkan sewaktu-aktu saat dibutuhkan dan langsung join/berkoordinasi dengan data node yang lain melalui name node. • Ini yang menyebabkan Hadoop sangat populer dan ideal untuk dipakai sebagai proses/penyimpanan Big Data.
  • 21. Map-Reduce (latihan) • Install Hadoop (dibutuhkan install dan konfigurasi JAVA, download dan setting aplikasi Apache Hadoop). Untuk proses instalasi Hadoop bisa dilihat dari berbagai sumber, salah satunya: https://www.tutorialspoint.com/hadoop/hadoop_enviornment_setup.htm • Pastikan Hadoop sudah jalan. Bisa coba dengan ketik hadoop version • Untuk menjalankan contoh di hadoop (pada saat download dan extract, ada beberapa contoh bawaan). Contohnya: hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.2.1.jar grep input output 'dfs[a-z.]+' • Lebih jauh bisa dibaca pada beberapa sumber seperti https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-common/SingleCluster.html
  • 22. Map-Reduce (latihan wordcount dengan Python) • Salah satu tutorial yang cukup baik untuk memahami cara kerja Hadoop MR/HDFS bisa dibaca pada link berikut ini: https://www.michael- noll.com/tutorials/writing-an-hadoop-mapreduce-program-in-python/ • Contoh app mapper: Pada contoh ini, tugas mapper hanya menerima input berupa text, lalu memisahkan kan berdasarkan kata, lalu menampilkan dalam bentuk 2 kolom: <kata> 1
  • 23. Map-Reduce (latihan wordcount dengan Python) • Contoh app reducer: Pada contoh ini, tugas reducer adalah memproses data yang masuk (2 kolom: <kata> 1). Lalu selama kata berikutnya masih sama dengan sebelumnya, maka jumlahkan angkanya (1+1+1+1 dst), sampai semua baris data terproses. Hasilnya seperti ini:
  • 24. Map-Reduce (latihan wordcount dengan Python) mapper. py Hadoop Servers mapper. py mapper. py shuffle reducer. py reducer. py result HDFS
  • 27.
  • 28. HIVE • Apache HIVE adalah salah satu aplikasi dalam ekosistem Hadoop • HIVE membutuhkan Hadoop (HDFS dan Hadoop MapReduce) dan RDMS (untuk menyimpan meta data/metastore) untuk mengolah dan memproses data • HIVE menggunakan syntax mirip seperti SQL pada umumnya • Salah satu perbedaan utama HIVE dengan RDBMS/SQL DB adalah HIVE menggunakan “Schema on READ only”. Sehingga HIVE tidak ditujukan untuk update/insert data seperti pada SQL. • Perintah-perintah HIVE dapat di-eksekusi menggunakan command line maupun menggunakan Web UI • HIVE terdiri dari 3 komponen utama yaitu: client, service dan storage (lihat gambar berikutnya)
  • 29. HIVE
  • 30. HIVE • Client Berfungsi sebagai antarmuka ke manusia/sistem. Perintah-perintah HIVE diketik dan dimulai dari sini. • Service Berfungsi sebagai proses dibelakang layar, yang akan mengeksekusi perintah-perintah yang masuk dari client, lalu menarik/meyimpan/ menghasilkan data output dari storage • Storage & Computing Tempat penyimpanan data dan proses terdistribusi. Data yang ada pada HDFS dipetakan menggunakan metadata yang tersimpan pada service. Contoh: Kita memiliki data transaksi harian dari banyak cabang perusahaan yang kemudian di export menjadi sebuah file besar dengan nama transaction-2020.csv. File ini lalu di upload ke HDFS agar terdistribusi dan dapat diproses secara paralel. Data ini dalam format comma separated value (structured) dengan kolom ID, trans_data, trans_amount, customer_id, dsb. Menggunakan HIVE, struktur data ini disimpan sebagai meta data, sehingga bisa dilakukan query seolah-olah file ini adalah tabel RDBMS biasa. Misalnya: “SELECT SUM(trans_amount) FROM transaction”
  • 31. HIVE
  • 32. HIVE • Urutan eksekusi perintah pada HIVE digambarkan pada gambar di atas. • Perintah yang masuk dari client, dikirimkan ke service, lalu perintah tersebut diterjemahkan menjadi script khusus, dan dilakukan kompilasi, lalu verifikasi kolom/data dengan meta data yang tersimpan di metastore, lalu akan dieksekusi oleh service. • Dalam eksekusinya, HIVE akan membaca file pada HDFS dan memproses pengolahan data-nya menggunakan MapReduce. • Ini berbeda dengan contoh MapReduce yang kita lakukan pada latihan sebelumnya. Dimana di latihan sebelumnya (tanpa HIVE), kita harus membuat dulu aplikasi mapper dan reducer, menggunakan bahasa pemrograman yang didukung, seperti JAVA atau Python.
  • 33. HIVE vs Map Reduce (manual)
  • 34. Instalasi HIVE • HIVE membutuhkan requirement yang hampir sama dengan Hadoop (membutuhkan JAVA dan konfigurasinya) • Kemudian kita perlu meng-install database server seperti: Apache Derby, MySQL, PostgreSQL, dsb. Database ini dibutuhkan HIVE untuk tempat menyimpan meta data (metastores) • Kemudian download dan extract HIVE • Lalu lakukan konfigurasi-konfigurasi yang diperlukan untuk menghubung HIVE dengan Hadoop dan database metastore • Jalankan service HIVE • Jalankan client HIVE, baik menggunakan command line (CLI) maupun dengan menggunakan tools berbasis web agar perintah HIVE bisa dijalankan lewat browser (dibutuhkan instalasi aplikasi tambahan, seperti Apache Ambari) • Salah satu sumber untuk melihat contoh langkah-langkah instalasi HIVE bisa dilihat pada link berikut ini https://www.guru99.com/installation-configuration-hive-mysql.html
  • 35. HIVE CLI • Jalankan aplikasi HIVE CLI dengan cara mengetik: 'hive' atau './bin/hive' • Lalu ketikkan perintah-perintah HIVE disitu Contoh:
  • 37. HIVE SQL (HIVEQL) • Berikut ini beberapa contoh membuat tabel baru dan mengolah data menggunakan perintah HIVE SQL
  • 38. HIVE SQL (HIVEQL) • Pada contoh diatas, dibuat sebuah tabel baru dengan nama employess_guru Create table employees_guru(Id INT, Name STRING, Age INT, Address STRING, Salary FLOAT, Department STRING) Row format delimited Fields terminated by ','; • Lalu untuk mengisi datanya ke tabel baru tersebut, diambil file CSV (bisa dari local file maupun file yang sudah tersimpan di HDFS). Contoh data local: load data local inpath '/home/hduser/Employees.txt' into TABLE employees_guru;
  • 39. HIVE SQL (HIVEQL) • HIVE juga bisa membaca file yang SEMISTRUCTURED misalnya dalam format XML. Contoh, buat tabel baru 'xmlsample': • File XML itu kemudian kita parsing (potong-potong) dan tampilkan, misalnya seperti ini:
  • 40. Quiz HIVE 1. Mengapa dibutuhkan HIVE, bukan RDBMS biasa? 2. Apa kelebihan pengolahan data dengan HIVE dibandingkan RDBMS biasa? 3. Kalau sudah ada Hadoop (HDFS/MR) mengapa masih membutuhkan HIVE? 4. Dari sekian banyak contoh data yang bisa diproses menggunakan Hadoop, data seperti apa yang lebih cocok diolah menggunakan HIVE?
  • 41. Petunjuk Jawaban 1. Secara umum memang terlihat pengolahan data di HIVE mirip/sama dengan RDBMS, sama-sama menggunakan perintah SQL. Namun HIVE memproses data secara terdistribusi dan eksekusinya bisa dilakukan secara paralel, sehingga bisa mengolah data yang sangat besar. Hal ini tidak bisa dilakukan di RDBMS biasa. 2. Sudah dijelaskan sekilas diatas. 3. HIVE adalah abstraksi dari dari Hadoop. Jika menggunakan Hadoop saja, eksekusi perintah harus menggunakan aplikasi yang kita bikin dengan bahasa pemrograman yang didukung seperti JAVA, Python, nodejs, dsb. 4. Lebih cocok untuk jenis data STRUCTURED maupun SEMI-STRUCTURED. Walaupun secara umum bisa juga dipakai untuk jenis data UNSTRUCTURED, tetapi dibutuhkan konversi agar dapat dikenali sebagai kolom dan baris
  • 42. Batch vs Stream Batch: • Data yang ada akan disimpan terlebih dahulu, • untuk dilakukan analisa di kemudian waktu yang lain. • Ukuran file-nya bisa diketahui/prediksi sebelumnya. • Stream: • Aplikasi stream menunggu data yang masuk, • untuk langsung di proses pada saat itu juga, tanpa disimpan disimpan. Hasilnya bisa dilakukan penyimpanan ke HDFS, atau ke Database, atau tidak disimpan (hanya di visualisasikan) • Ukuran datanya tidak bisa diketahui, dan tidak berujung.
  • 44. Merancang Data Lake • Sejauh ini kita sudah mengenal Hadoop, ekosistemnya dan kelebihan- kelebihan utamanya. • Dimana letak Hadoop dalam pipeline? • Contoh:
  • 48. Merancang Data Lake Data Warehouse: • Tipe datanya structured • Row & Collumns • Tujuan untuk Business Intelligence Data Lake: • All (structured, unstructured, semistructured) • Files (CSV, XML, JSON, TXT, MP3, jpg, etc) • Big Data Analytics (Machine Learning/Deep Learning)
  • 49. Merancang Data Lake 1. Identifikasi jenis data yang mau kita simpan dan sumber datanya. 2. Bagaimana kita mau memproses datanya? 1. Data yang akan diproses itu akan dilakukan secara berkala (bulanan, semester, tahunan, 3 bulanan, dsb) 2. Atau, mau diproses secara langsung saat itu juga (near realtime) 3. Jika dilakukan secara berkala, maka Hadoop bisa ditempatkan di depan (data ingestion), 4. sebaliknya kalau butuh pemrosesan data secara aktif terus menerus, maka Hadoop lebih tepat ditempatkan di belakang (lebih sebagai penyimpanan akhir)
  • 50. Contoh Data Warehousing Biasanya proses ini dilakukan secara berkala atau disebut dengan Batch Processing
  • 51. Cotoh Batch Proc. Pada Hadoop Hadoop Log File, Excel, Word, CSV, etc Analisa menggunakan HIVE, MR, atau lainnya
  • 52. Cotoh Stream Proc. Pada Hadoop Hadoop Log File, Excel, Word, CSV, etc Spark (stream processing) Analisa lanjutan Stream app Python
  • 53. Analytics Tools & Visualization Selain ekosistem utama dari Hadoop, ada beberapa tools yang bisa dipakai untuk analisis dan visualisasi big data, antara lain: • Kibana (free open source) • Knime (free open source) • Tableau (ada versi trial) • Pentaho • Qlik (ada versi trial) • Grafana (Free open source) • dsb
  • 55. HDFS to Kibana Diagram
  • 56. Knime