Pengantar
Big data adalah bidang yang membahas cara-cara untuk menganalisis, mengekstrak informasi secara sistematis,
atau menangani kumpulan data yang terlalu besar atau kompleks untuk ditangani oleh perangkat lunak/aplikasi
pemrosesan data tradisional. Data dengan banyak fields (atribut atau kolom) menawarkan kekuatan statistik yang
lebih besar, sementara data dengan kompleksitas yang lebih tinggi (lebih banyak atribut atau kolom) dapat
menyebabkan tingkat penemuan kesalahan yang lebih tinggi. Tantangan analisis big data meliputi pengambilan
data, penyimpanan data, analisis data, pencarian, berbagi, transfer, visualisasi, query, updating, privasi informasi,
dan sumber data. Analisis big data menghadirkan tantangan dalam pengambilan sampel, oleh karena itu, big data
sering kali mencakup data dengan ukuran yang melebihi kapasitas perangkat lunak tradisional untuk diproses
dalam waktu dan nilai yang dapat diterima.
Big data biasanya mencakup kumpulan data dengan ukuran di luar kemampuan perangkat lunak yang biasa
digunakan untuk menangkap, meng-kurasi, mengelola, dan memproses data dalam waktu yang dapat ditoleransi.
Filosofi big data mencakup data yang tidak terstruktur, semi-terstruktur, dan terstruktur. Namun, fokus utamanya
adalah pada data yang tidak terstruktur. Big data size adalah target yang terus bergerak; pada tahun 2012 mulai
dari beberapa terabyte hingga banyak zettabyte data. Big data membutuhkan seperangkat teknik dan teknologi
dengan bentuk integrasi baru untuk mengungkap wawasan dari kumpulan data yang beragam, kompleks, dan
berskala besar.
Big Data adalah kumpulan data yang volumenya sangat besar namun terus bertambah secara eksponensial seiring
berjalannya waktu. Ini adalah data dengan ukuran dan kompleksitas yang sangat besar sehingga tidak ada alat
manajemen data tradisional yang dapat menyimpannya atau memprosesnya secara efisien. Big Data juga
merupakan data tetapi dengan ukuran yang sangat besar.
Big data mengelola kumpulan-kumpulan data yang begitu besar dan kompleks sehingga menjadi sulit untuk
diproses menggunakan alat manajemen basis data yang ada atau aplikasi pemrosesan data tradisional. Data yang
memiliki skala, keragaman, dan kompleksitas membutuhkan arsitektur, teknik, algoritma, dan analitik baru untuk
mengelolanya, mengekstrak nilai dan pengetahuan yang tersembunyi darinya. Ada beberapa korelasi dalam data
seperti menemukan tren bisnis, menentukan kualitas penelitian, mencegah penyakit, menemukan kutipan-kutipan
hukum, memerangi kejahatan, dan menentukan kondisi lalu lintas jalan raya secara real-time.
Big data merupakan aspek penting dalam ilmu data. Ilmu data adalah studi tentang analisis data dengan teknologi
canggih (Machine Learning, Artificial Intelligence, Big data). Ilmu ini memproses sejumlah besar data terstruktur,
semi-terstruktur, dan tidak terstruktur untuk mengekstrak makna wawasan, yang darinya satu pola dapat
dirancang yang akan berguna untuk mengambil keputusan dalam meraih peluang bisnis baru, peningkatan
produk/layanan, dan pada akhirnya pertumbuhan bisnis.
Pengembangan open-source framework, seperti Hadoop (framework yang lain, Spark) sangat penting untuk
pertumbuhan big data karena membuat big data lebih mudah digunakan dan lebih murah untuk disimpan. Pada
tahun-tahun terakhir, volume data besar telah meroket. Pengguna masih menghasilkan data dalam jumlah besar-
tetapi bukan hanya manusia yang melakukannya.
Dengan munculnya Internet of Things (IoT), semakin banyak objek dan perangkat yang terhubung ke internet,
mengumpulkan data terkait pola penggunaan pelanggan dan kinerja produk. Munculnya machine learning telah
menghasilkan lebih banyak data.
Meskipun big data telah berkembang pesat, kegunaannya baru saja dimulai. Komputasi awan telah memperluas
pemanfaatan big data lebih jauh lagi. Cloud menawarkan skalabilitas yang benar-benar elastis, di mana
pengembang dapat dengan mudah membentuk klaster ad hoc untuk menguji sebagian data. Dan basis data grafik
juga menjadi semakin penting, dengan kemampuannya untuk menampilkan data dalam jumlah besar dengan cara
yang membuat analisis menjadi cepat dan komprehensif.
d) Sistem umpan balik pelanggan tradisional mulai digantikan oleh sistem baru yang dirancang dengan
teknologi Big Data. Dalam sistem baru ini, Big Data dan teknologi pemrosesan bahasa alami (NLP/natural
language processing) digunakan untuk membaca dan mengevaluasi tanggapan konsumen.
e) Mengidentifikasi risiko secara lebih dini terhadap produk/layanan
f) Efisiensi operasional yang lebih baik
Teknologi Big Data dapat digunakan untuk menciptakan staging area atau landing zone untuk data baru sebelum
diidentifikasi dan dipindahkan ke data warehouse. Melalui integrasi teknologi Big Data dan data warehouse juga
sangat membantu organisasi dalam mengelola data yang jarang diakses.
terhadap waktu seperti menangkap fraud, big data harus digunakan saat data tersebut mengalir ke
dalam sistem enterprise perusahaan untuk memaksimalkan nilainya. Sistem ini meneliti 5 juta
event transaksi yang terjadi setiap hari untuk mengidentifikasi potensi fraud. Sistem ini
menganalisis 500 juta catatan detail panggilan harian secara real time untuk memprediksi
perputaran pelanggan dengan lebih cepat. Saat ini, data dihasilkan dengan cepat dan perlu diproses
dengan cepat. Velocity memainkan peran penting dalam analisis data online seperti e-promotion
(berdasarkan lokasi pengguna dan riwayat pembelian); healthcare monitoring di mana sensor
dapat memantau aktivitas dan mengukur setiap kondisi tubuh yang tidak normal dimana
memerlukan reaksi segera.
4) Variability - Hal ini mengacu pada ketidakkonsistenan yang dapat ditunjukkan oleh data dari waktu
ke waktu, sehingga menghambat proses untuk dapat menangani dan mengelola data secara efektif.
5) Value - Atribut ini berkaitan dengan integrasi data sekaligus mengurangi kompleksitas data;
meningkatkan ketersediaan data. Hal ini membantu menyatukan sistem data.
6) Veracity - Mengacu pada makna : bias, noise & ketidaknormalan dalam data, yang mempengaruhi
kepercayaan terhadap data. Berdasarkan survey bisnis, 1 dari 3 business leaders tidak mempercayai
informasi yang mereka gunakan untuk mengambil keputusan, bagaimana kita bisa bertindak
berdasarkan informasi jika kita sendiri tidak mempercayainya? Membangun kepercayaan pada big
data menghadirkan tantangan besar seiring dengan bertambahnya variasi dan jumlah sumber.
7) Valence - Ini mengacu pada keterhubungan big data seperti dalam jaringan grafik.
8) Validity - Ini berkaitan dengan keakuratan dan kebenaran data relatif terhadap penggunaan
tertentu. Contoh misalnya, mengukur intensitas badai.
9) Viscosity & Volatility - Keduanya terkait dengan kecepatan. Viskositas berkaitan dengan kecepatan
data relatif terhadap skala waktu kejadian yang sedang dipelajari. Volatilitas mengacu pada tingkat
kehilangan data dan masa pakai data yang stabil.
10) Visualization - Karakteristik lain dari big data adalah betapa sulitnya memvisualisasikannya. Alat
visualisasi big data saat ini menghadapi tantangan teknis karena keterbatasan teknologi dalam
memori dan skalabilitas, fungsionalitas, dan waktu respons yang buruk. Anda tidak dapat
mengandalkan grafik tradisional ketika mencoba memplot satu miliar titik data, jadi Anda
memerlukan cara berbeda untuk merepresentasikan data seperti pengelompokan data atau
menggunakan peta pohon, sunburst, koordinat paralel, diagram jaringan melingkar, atau pohon
kerucut.
11) Viability - Data mana yang memiliki hubungan yang berarti dengan pertanyaan-pertanyaan yang
diminati? (Gambar 4)
12) Venue - Di mana data berada dan bagaimana mendapatkannya? Berbagai jenis data datang dari
berbagai sumber melalui platform yang berbeda seperti sistem personalia dan private cloud
maupun public.
13) Vocabulary - Ini berkaitan dengan metadata yang menggambarkan struktur, konten, dan asal usul.
Ini meliputi skema, semantik, ontologi, taksonomi dan kosakata.
14) Vagueness – Istilah ini berkaitan dengan realitas dalam informasi yang menunjukkan sedikit atau
tidak ada makna sama sekali, sehingga pada karakteristik ini disebut sebagai ketidakjelasan.
Data Terstruktur: Data apa pun yang dapat disimpan, diakses, dan diproses dalam bentuk format tetap disebut
sebagai data 'terstruktur'. Selama periode waktu tertentu, para peneliti dalam ilmu komputer telah mencapai
kesuksesan yang besar dalam mengembangkan teknik untuk bekerja dengan jenis data seperti itu (di mana
formatnya sudah diketahui sebelumnya) dan juga mendapatkan nilai darinya. Namun, akhirnya terlihat adanya
masalah ketika ukuran data semacam itu berkembang menjadi sangat besar, diantaranya ukuran tipikal-nya
menjadi beberapa zettabyte.
Data Tidak Terstruktur: Setiap data yang tidak diketahui bentuk atau strukturnya diklasifikasikan sebagai data tidak
terstruktur. Selain ukurannya yang sangat besar, data yang tidak terstruktur menimbulkan banyak tantangan
dalam hal pemrosesan untuk mendapatkan nilai darinya. Contoh umum dari data tidak terstruktur adalah sumber
data heterogen yang berisi kombinasi file teks sederhana, gambar, video, dll. Saat ini, banyak perusahaan memiliki
banyak data yang tersedia, tetapi sayangnya, mereka tidak tahu bagaimana cara mendapatkan nilai darinya karena
data ini dalam bentuk mentah atau format yang tidak terstruktur. Contoh dari data yang tidak terstruktur adalah
hasil yang ditampilkan oleh 'Google Search'.
Data Semi-Terstruktur: Data semi-terstruktur mengandung kedua bentuk data tersebut, tampak terstruktur tetapi
tidak didefinisikan seperti tabel pada sistem basis data relasional. Contoh data semi-terstruktur adalah data dalam
file XML, menunjukkan fleksibilitas dalam penyimpanan informasi tanpa struktur ketat.
Integrate : Big data menggabungkan data dari berbagai sumber dan aplikasi yang berbeda. Mekanisme integrasi
data tradisional, seperti extract, transform, & load (ETL), umumnya tidak cukup untuk tugas ini. Diperlukan strategi
dan teknologi baru untuk menganalisis set data big di skala terabyte, atau bahkan petabyte. Selama integrasi, Anda
perlu mengimpor data, memprosesnya, dan memastikan bahwa data tersebut diformat dan tersedia dalam bentuk
yang dapat digunakan oleh analis bisn
Manage : Big data membutuhkan penyimpanan. Solusi penyimpanan Anda bisa di cloud, di lokasi, atau keduanya.
Anda dapat menyimpan data Anda dalam bentuk apa pun yang Anda inginkan dan menghadirkan persyaratan
pemrosesan yang Anda inginkan dan mesin proses yang diperlukan ke kumpulan data tersebut sesuai permintaan.
Banyak orang memilih solusi penyimpanan sesuai dengan tempat data mereka saat ini berada. Cloud secara
bertahap semakin populer karena mendukung kebutuhan komputasi Anda saat ini dan memungkinkan Anda untuk
menambah sumber daya sesuai kebutuhan.
Analyze : Dengan menganalisis dan bertindak pada data, hasil investasi Anda dalam big data akan terwujud.
Keterangannya bertambah melalui analisis visual beragam dataset. Data dieksplorasi lebih lanjut untuk
mengungkap temuan baru. Temuan tersebut dapat dibagikan dengan orang lain. Model data dibangun dengan
menggunakan machine learning dan artificial intelligence. Data Anda dimanfaatkan, menjadi bagian penting dari
keputusan dan strategi bisnis Anda.
Big data analytics (Analisis big data) adalah penggunaan teknik analitik canggih terhadap kumpulan data yang
sangat besar dan beragam yang mencakup data terstruktur, semi-terstruktur, dan tidak terstruktur, dari berbagai
sumber, dan dalam berbagai ukuran mulai dari terabyte hingga zettabyte.
Analisis big data memungkinkan para analis, peneliti, dan pengguna bisnis untuk membuat keputusan yang lebih
baik dan lebih cepat dengan menggunakan data yang sebelumnya tidak dapat diakses atau tidak dapat digunakan.
Bisnis dapat menggunakan teknik analisis canggih seperti analisis teks, machine learning, analisis prediktif, data
mining, statistik, dan NLP untuk mendapatkan wawasan baru dari sumber data yang sebelumnya tidak
dimanfaatkan secara mandiri atau bersama dengan data perusahaan yang sudah ada.
Analisis data adalah proses memeriksa kumpulan data (dalam bentuk teks, audio, dan video), & menarik kesimpulan
tentang informasi yang dikandungnya, biasanya melalui sistem, perangkat lunak, dan metode tertentu. Ini adalah
proses mengubah sejumlah besar data mentah yang tidak terstruktur, yang diambil dari berbagai sumber menjadi
produk data yang berguna bagi organisasi. Beberapa teknologi analisis data digunakan dalam skala industri, di
seluruh industri bisnis komersial, karena memungkinkan organisasi untuk membuat keputusan bisnis yang
diperhitungkan dan terinformasi, secara global, perusahaan memanfaatkan kekuatan berbagai teknik analisis data
& menggunakannya untuk membentuk kembali model bisnis mereka, seiring berkembangnya teknologi, software
analisis baru bermunculan, dan ketika Internet of Things (IoT) berkembang, jumlah data pun meningkat. Big data
telah berevolusi sebagai produk dari ekspansi dan koneksi kita yang semakin meningkat, dan dengan itu, bentuk-
bentuk baru ekstraksi, atau lebih tepatnya "penambangan" data.
Analisis big data sebagian besar melibatkan pengumpulan data dari berbagai sumber, mengolahnya sedemikian
rupa sehingga dapat digunakan oleh para analis dan akhirnya menghasilkan produk data yang berguna bagi bisnis
organisasi. Survei global dari McKinsey mengungkapkan bahwa ketika organisasi menggunakan data, hal ini akan
menguntungkan pelanggan dan bisnis dengan menghasilkan layanan baru berbasis data, mengembangkan model
dan strategi bisnis baru, serta menjual produk dan utilitas berbasis data. Insentif untuk berinvestasi dan
menerapkan alat dan teknik analisis data sangat besar, dan bisnis perlu beradaptasi, berinovasi, dan menyusun
strategi untuk pasar digital yang terus berkembang.
melibatkan pengumpulan data yang tidak terstruktur dari berbagai sumber. Contoh, menulis crawler untuk
mengambil ulasan (review) dari situs web. Hal ini melibatkan teks, mungkin dalam bahasa yang berbeda
yang biasanya membutuhkan waktu yang cukup lama untuk diselesaikan.
5. Data Munging
Setelah data diambil, misalnya, dari web, data tersebut harus disimpan dalam format yang mudah
digunakan: Anggaplah data diambil dari situs yang berbeda di mana masing-masing memiliki tampilan data
yang berbeda, misalkan satu sumber data memberikan ulasan dalam bentuk rating dalam bentuk bintang,
oleh karena itu dimungkinkan untuk membaca ini sebagai pemetaan untuk variabel respons y ∈ {1, 2, 3, 4,
5}. Sumber data lainnya memberikan ulasan menggunakan sistem dua panah, satu untuk voting naik dan
yang lainnya untuk voting turun. Hal ini akan mengimplikasikan variabel respon dalam bentuk y ∈ {positif,
negatif}. Untuk menggabungkan kedua sumber data tersebut, sebuah keputusan harus dibuat untuk
membuat kedua representasi respon tersebut setara. Hal ini dapat melibatkan pengubahan representasi
respons sumber data pertama ke bentuk kedua, dengan menganggap satu bintang sebagai negatif dan lima
bintang sebagai positif. Proses ini sering kali membutuhkan alokasi waktu yang besar untuk menghasilkan
kualitas yang baik.
6. Penyimpanan Data (Data Storage)
Setelah data diproses, terkadang data perlu disimpan dalam database. Teknologi big data menawarkan
banyak alternatif seperti menggunakan Hadoop File System untuk penyimpanan yang memberikan
pengguna versi terbatas dari SQL, yang dikenal sebagai HIVE Query Language. Dari perspektif pengguna,
analisis data memungkinkan sebagian besar tugas analisis dilakukan dengan cara yang sama seperti di data
warehouse BI tradisional. Opsi penyimpanan lainnya dapat berupa MongoDB, Redis, dan SPARK. Versi
modifikasi dari data warehouse tradisional masih digunakan dalam aplikasi skala besar. Contoh: Teradata
dan IBM menawarkan database SQL yang dapat menangani data terabyte; solusi open-source seperti
postgreSQL dan MySQL masih digunakan untuk aplikasi skala besar, penting untuk mengimplementasikan
solusi big data yang akan bekerja dengan data real-time, jadi dalam hal ini, kita hanya perlu mengumpulkan
data untuk mengembangkan model dan kemudian mengimplementasikannya secara real time. Jadi, tidak
perlu lagi menyimpan data secara formal.
7. Eksplorasi Data (Data Exploration)
Setelah data dibersihkan dan disimpan sedemikian rupa sehingga wawasan (insights) dapat diambil dari
data tersebut, tahap eksplorasi data adalah hal yang wajib dilakukan. Tujuan dari tahap ini adalah untuk
memahami data, hal ini biasanya dilakukan dengan teknik statistik dan juga mem-plot data. Ini adalah tahap
yang baik untuk mengevaluasi apakah definisi masalah masuk akal atau layak.
8. Persiapan Data untuk Pemodelan dan Penilaian (Pre-Processing)
Tahap persiapan data melibatkan pembentukan kembali data yang telah dibersihkan yang diambil
sebelumnya dan menggunakan pre-processing statistik untuk penghitungan nilai yang hilang, outlier
detection, normalization, feature extraction dan feature selection.
9. Pemodelan (Modelling)
Tahap sebelumnya dalam siklus analitik menghasilkan beberapa dataset untuk pelatihan dan pengujian,
misalnya, model prediktif. Tahap ini melibatkan percobaan berbagai model dan berharap dapat
memecahkan masalah bisnis yang dihadapi. Harapannya adalah model tersebut akan memberikan
wawasan tentang bisnis. Akhirnya, model atau kombinasi model terbaik dipilih dengan mengevaluasi
kinerjanya pada dataset yang ditinggalkan.
10. Implementasi (Implementation)
Pada tahap ini, produk data yang dikembangkan diimplementasikan dalam pipeline data perusahaan. Ini
melibatkan pengaturan skema validasi saat produk data bekerja, untuk melacak kinerjanya, Contoh:
Menerapkan model prediktif. Ini melibatkan penerapan model pada data baru dan setelah respon tersedia,
serta evaluasi model.
Python untuk Analisis Data: Python adalah bahasa pemrograman yang sangat umum. Bahasa ini berisi sejumlah
besar pustaka yang dikhususkan untuk analisis data (pandas, scikit-learn, theano, numpy, dan scipy), Python dapat
digunakan dengan cukup efektif untuk membersihkan dan memproses data baris demi baris. Untuk machine
learning, scikit-learn adalah lingkungan yang bagus yang memiliki sejumlah besar algoritma yang dapat menangani
dataset berukuran sedang tanpa masalah.
Julia: Merupakan bahasa pemrograman dinamis tingkat tinggi dan berkinerja tinggi untuk komputasi teknis.
Sintaksnya sangat mirip dengan R atau Python, jadi jika Anda sudah menggunakan R atau Python, akan sangat
mudah untuk menulis kode yang sama di Julia.
SAS: Merupakan bahasa komersial yang masih digunakan untuk intelijen bisnis. Bahasa ini memiliki bahasa dasar
yang memungkinkan pengguna untuk memprogram berbagai macam aplikasi dan berisi beberapa produk komersial
yang memberikan kemampuan kepada pengguna yang bukan ahli untuk menggunakan alat yang kompleks seperti
neural network library tanpa perlu pemrograman.
SPSS: SPSS, saat ini merupakan produk dari IBM untuk analisis statistik dan digunakan untuk menganalisis data
survey dan untuk pengguna yang tidak dapat memprogram, ini merupakan alternatif yang layak. SPSS menyediakan
kode SQL untuk menilai sebuah model. Kode ini biasanya tidak efisien, namun ini merupakan permulaan, sedangkan
SAS menjual produk yang dapat menilai model untuk setiap database secara terpisah. Untuk data yang kecil dan
tim yang belum berpengalaman, SPSS adalah pilihan yang sama baiknya dengan SAS.
Matlab, Octave: Matlab atau versi open-sourcenya (Octave) sebagian besar digunakan untuk penelitian. R atau
Python dapat melakukan semua yang tersedia di Matlab atau Octave.
bersama sebagai sebuah cluster. Seperti yang diilustrasikan pada Gambar 8, sebuah tugas dibagi menjadi tiga sub-
tugas yang kemudian dieksekusi pada tiga mesin yang berbeda yang berbagi satu switch fisik.
Pemrosesan cluster memberikan dukungan yang diperlukan untuk membuat solusi penyimpanan yang dapat
diskalakan secara horizontal. Pemrosesan ini juga menyediakan mekanisme untuk memungkinkan pemrosesan data
terdistribusi dengan skalabilitas linier. Karena cluster sangat skalabel, cluster menyediakan lingkungan yang ideal
untuk pemrosesan Big Data karena kumpulan data yang besar dapat dibagi menjadi kumpulan data yang lebih kecil
dan kemudian diproses secara paralel dengan cara yang terdistribusi. Saat memanfaatkan cluster, dataset Big Data
dapat diproses dalam mode batch atau mode real-time.
1) Batch Processing Workload: Ini juga dikenal sebagai pemrosesan offline. Dalam mode batch, data diproses
secara offline dalam beberapa batch dan waktu respons dapat bervariasi dari beberapa menit hingga
beberapa jam (Gambar 9). Selain itu, data harus disimpan ke dalam disk sebelum dapat diproses. Mode ini
melibatkan pemrosesan data dalam batch dan biasanya menimbulkan penundaan, yang pada gilirannya
menghasilkan respons latensi tinggi. Mode batch umumnya melibatkan pemrosesan berbagai kumpulan data
besar, baik secara terpisah maupun digabungkan, yang pada dasarnya menangani karakteristik volume dan
variasi kumpulan data besar. Mode ini relatif sederhana, mudah diatur, dan berbiaya rendah dibandingkan
dengan mode real-time. Beban kerja batch biasanya melibatkan sejumlah besar data dengan
pembacaan/penulisan berurutan dan terdiri dari kelompok-kelompok kueri baca atau tulis. Kueri bisa jadi
rumit dan melibatkan banyak penggabungan. Beban kerja batch terdiri dari pembacaan/penulisan yang
dikelompokkan yang memiliki jejak data yang besar dan mungkin berisi gabungan yang kompleks dan
memberikan respons latensi tinggi. Mayoritas pemrosesan data besar terjadi dalam mode batch. Contoh:
• Sistem OLAP biasanya memproses beban kerja dalam bentuk batch.
• BI strategis dan analitik berorientasi pada batch karena merupakan tugas yang sangat intensif yang
melibatkan volume data yang besar.
2) Transactional Processing Workloads : Juga dikenal sebagai pemrosesan online dan mengikuti pendekatan di
mana data diproses secara interaktif tanpa penundaan, sehingga menghasilkan respons latensi rendah
(Gambar 10). Beban kerja transaksi melibatkan sejumlah kecil data dengan pembacaan dan penulisan acak,
beban kerja transaksional terdiri dari pembacaan/penulisan acak yang melibatkan lebih sedikit penggabungan
dibandingkan dengan beban kerja intelijen bisnis dan pelaporan.
framework Hadoop telah memantapkan dirinya sebagai platform industri de-facto untuk solusi big data
kontemporer. Diciptakan oleh Doug Cutting dan Mike Cafarella pada tahun 2005, dinamai sesuai dengan nama
gajah mainan anaknya.
Gambar 11. Hadoop Menawarkan Pemindahan Komputasi ke Data- Komputasi Dipindahkan ke Data
Penawaran Hadoop
• Pendekatan Baru terhadap Data: Hadoop menawarkan pendekatan yang berbeda terhadap data.
• Jenis Analisis Baru: Hadoop dapat digunakan sebagai mesin ETL atau sebagai mesin analitik untuk memproses
data terstruktur, semi terstruktur, dan data yang tidak terstruktur. Dari perspektif analisis, Hadoop
mengimplementasikan kerangka kerja pemrosesan MapReduce.
Paket Hadoop Common dianggap sebagai dasar/inti dari framework karena menyediakan layanan penting dan
proses dasar seperti abstraksi sistem operasi yang mendasari dan sistem file-nya. Paket ini berisi file Java Archive
(JAR) yang diperlukan dan skrip yang diperlukan untuk memulai Hadoop. Ini menyediakan source code dan
dokumentasi, serta bagian kontribusi yang mencakup berbagai proyek dari komunitas Hadoop.
Hadoop YARN: Salah satu komponen utama dalam Hadoop. Singkatan dari Yet Another Resource Negotiator
meskipun disebut Yarn oleh para pengembangnya. YARN mendukung platform manajemen sumber daya yang
bertanggung jawab mengelola sumber daya komputasi dalam cluster dan menggunakannya untuk menjadwalkan
pengguna dan aplikasi. Ini digunakan untuk penjadwalan pekerjaan dan manajemen sumber daya. Yarn adalah
kerangka kerja pemrosesan paralel untuk mengimplementasikan cluster komputasi terdistribusi yang memproses
data dalam jumlah besar melalui beberapa node komputasi. Hadoop Yarn memungkinkan sebuah pekerjaan
komputasi untuk disegmentasi menjadi ratusan dan ribuan tugas.
Yarn diperkenalkan sebagai lapisan yang memisahkan lapisan manajemen sumber daya dan lapisan pemrosesan.
Yarn mendukung berbagai macam aplikasi yang berbeda. Ini menggabungkan manajer sumber daya pusat dengan
wadah yang berbeda. Dapat menggabungkan sumber daya secara dinamis ke aplikasi yang berbeda dan operasinya
dimonitor dengan baik. Sebelumnya disebut MapReduce2 dan Nextgen MapReduce.
Yarn awalnya dinamai MapReduce 2 karena Yarn memperkuat MapReduce Hadoop 1.0 dengan mengatasi
kelemahannya dan memungkinkan ekosistem Hadoop bekerja dengan baik untuk tantangan modern. Hal ini
memungkinkan Hadoop untuk mendukung berbagai jenis pemrosesan. Ini menjalankan kueri interaktif, streaming
data, dan aplikasi real time.
Yarn menggunakan server master dan server data. Hanya ada satu server master per cluster. Server ini menjalankan
daemon manajer sumber daya. Ada banyak server data dalam cluster, masing-masing berjalan pada daemon Node
Manager-nya sendiri dan manajer master aplikasi sesuai kebutuhan.
Komponen-Komponen YARN
Komponen utama yang bertanggung jawab atas semua operasi YARN adalah sebagai berikut:
o Manajer Sumber Daya: Manajer Sumber Daya mengalokasikan sumber daya cluster. Hal ini dimungkinkan
oleh penjadwal untuk menjadwalkan pekerjaan yang diperlukan dan Manajer Aplikasi untuk menerima
kiriman pekerjaan dan menjalankan Master Aplikasi yang diperlukan. Fungsinya meliputi:
Manajemen Sumber Daya: Manajer Sumber Daya berinteraksi dengan Manajer Node untuk
menyimpan inventaris sumber daya di seluruh cluster seperti penggunaan RAM, CPU, dan Jaringan. Ini
mengelola ketersediaan dan alokasi sumber daya sehingga mendapatkan otoritas tertinggi untuk
mengelola sumber daya.
Manajemen Penjadwalan: Manajemen ini bertanggung jawab untuk hanya mengalokasikan sumber
daya seperti yang diminta oleh berbagai Application Master. Ini tidak memantau atau melacak status
pekerjaan.
Manajemen Aplikasi: Ini adalah tanggung jawab terpenting dari Manajer Sumber Daya. Ini memastikan
permulaan dan penyelesaian pekerjaan. Ini menerima pekerjaan dan menugaskannya ke Master
Aplikasi pada server data. Selain itu, ia juga memantau aktivitas dan status Master Aplikasi dan
menyediakan restart jika terjadi kegagalan Master Aplikasi.
Kontainer di Hadoop: Hadoop v2.0 telah meningkatkan pemrosesan paralel dengan penambahan
kontainer. Kontainer adalah gagasan abstrak yang mendukung multi-tenancy pada simpul data. Ini
adalah cara untuk mendefinisikan persyaratan untuk alokasi memori, CPU, dan jaringan dengan
membagi sumber daya pada server data ke dalam sebuah container.
Wadah Sumber Daya: Resource Manager bertanggung jawab untuk menjadwalkan sumber daya
dengan mengalokasikan kontainer. Hal ini dilakukan sesuai dengan input yang diberikan oleh klien,
kapasitas cluster, antrian & prioritas sumber daya secara keseluruhan pada cluster. Resource Manager
menggunakan algoritma untuk mengalokasikan kontainer.
o Manajer Node: Tujuan utama Node Manager adalah manajemen memori. Node Manager melacak
penggunaan dan status inventaris cluster seperti CPU, memori, dan jaringan pada server data lokal dan
melaporkan statusnya secara teratur ke Resource Manager.
o Application Master: Application Master bertanggung jawab untuk eksekusi dalam pekerjaan komputasi
paralel. Daemonnya bertanggung jawab untuk mengeksekusi pekerjaan, memantau pekerjaan dari
kesalahan, dan menyelesaikan pekerjaan komputer. Daemon ini dimulai oleh manajer sumber daya pada
awal pekerjaan. Setiap pekerjaan komputasi memiliki Application Master yang berjalan di salah satu
server data. Application Master meminta lokalitas data dari simpul nama server master. Kemudian
bernegosiasi dengan fungsi penjadwal di Manajer Sumber Daya untuk wadah sumber daya di seluruh
cluster.
Fitur-fitur Utama Yarn
Multi-Penyewaan: Yarn memungkinkan akses beberapa mesin dan memenuhi kebutuhan sistem real-
time untuk mengetahui di mana data berada dan untuk mengelola pergerakan data tersebut dalam
kerangka kerja untuk mengirimkan pekerjaan komputasi agar dapat berjalan pada data yang tepat di
lokasi yang tepat.
Berbagi Sumber Daya: Yarn memastikan tidak ada ketergantungan di antara pekerjaan komputasi.
Setiap pekerjaan komputasi dijalankan di node-nya sendiri dan tidak berbagi sumber daya yang
dialokasikan. Setiap pekerjaan bertanggung jawab atas pekerjaan yang ditugaskan sendiri.
Pemanfaatan Cluster: Yarn mengoptimalkan cluster dengan memanfaatkan dan mengalokasikan
sumber dayanya secara dinamis.
Toleransi Kesalahan: Yarn sangat toleran terhadap kesalahan. Hal ini memungkinkan penjadwalan
ulang pekerjaan yang gagal dihitung tanpa berimplikasi pada hasil akhir.
Skalabilitas: Yarn berfokus pada penjadwalan sumber daya. Hal ini menciptakan jalur untuk
memperluas simpul data dan meningkatkan kapasitas pemrosesan.
Kompatibilitas: Pekerjaan yang bekerja di MapReduce v1 dapat dengan mudah dimigrasikan ke versi
Hadoop yang lebih tinggi dengan mudah untuk memastikan kompatibilitas Yarn yang tinggi.
o Portabilitas- Untuk memfasilitasi adopsi, HDFS dirancang agar mudah dibawa-bawa di berbagai platform
perangkat keras dan kompatibel dengan berbagai sistem operasi yang mendasarinya.
Contoh HDFS
Pertimbangkan sebuah file yang berisi nomor telepon untuk semua orang di Amerika Serikat; nomor telepon orang
dengan nama belakang yang dimulai dengan A mungkin disimpan di server 1, B di server 2, dan seterusnya, dengan
Hadoop, potongan-potongan buku telepon ini akan disimpan di seluruh klaster, dan untuk merekonstruksi seluruh
buku telepon, program Anda akan membutuhkan blok dari setiap server dalam klaster. untuk menjamin
ketersediaan jika dan ketika sebuah server gagal, HDFS mereplikasi bagian-bagian yang lebih kecil ini ke dalam dua
server tambahan secara default. (Redundansi dapat ditingkatkan atau dikurangi pada basis per file atau untuk
seluruh lingkungan; misalnya, cluster Hadoop yang sedang dikembangkan biasanya tidak memerlukan redundansi
data). Redundansi ini menawarkan banyak manfaat, yang paling jelas adalah ketersediaan yang lebih tinggi,
redundansi juga memungkinkan cluster Hadoop untuk memecah pekerjaan menjadi potongan-potongan yang lebih
kecil dan menjalankan pekerjaan tersebut di semua server dalam cluster untuk skalabilitas yang lebih baik. Terakhir,
Anda mendapatkan manfaat dari lokalitas data, yang sangat penting ketika bekerja dengan kumpulan data yang
besar.
IBM dan Cloudera telah bermitra untuk menawarkan distribusi Hadoop kelas enterprise yang terdepan di industri,
termasuk ekosistem produk dan layanan yang terintegrasi untuk mendukung analisis yang lebih cepat dalam skala
besar.
✓ HDFS sangat menguntungkan dalam arti bahwa HDFS dapat dengan mudah bekerja pada perangkat keras
komoditas yang berbeda jenisnya tanpa masalah kompatibilitas. Oleh karena itu, HDFS sangat cocok untuk
memanfaatkan komponen perangkat keras komoditas yang murah dan mudah didapat.
Hadoop MapReduce
Hadoop MapReduce adalah model pemrograman yang menskalakan data di banyak hal yang berbeda
process.MapReduce didefinisikan sebagai kerangka kerja Hadoop, yang digunakan untuk memproses sejumlah
besar data secara paralel pada kelompok besar perangkat keras komoditas dengan cara yang andal. Hal ini
memungkinkan aplikasi untuk menyimpan data dalam bentuk terdistribusi dan memproses kumpulan data besar di
seluruh kelompok komputer menggunakan model pemrograman yang sederhana, jadi itulah mengapa kami dapat
memanggil MapReduce sebagai sebuah Model pemrograman yang digunakan untuk memproses data dalam jumlah
besar yang didistribusikan ke sejumlah cluster dengan menggunakan berbagai langkah seperti Input splits, Map,
Shuffle, dan Reduce.
Arsitektur MapReduce
Cluster Hadoop menyimpan sekumpulan besar data yang diproses secara paralel terutama oleh MapReduce. Ini
menyediakan paralelisme, toleransi kesalahan, dan distribusi data. Map Reduce menyediakan API dengan fitur-fitur
seperti pemrosesan paralel sejumlah besar data, pemrosesan batch, dan ketersediaan tinggi. Program Map Reduce
ditulis oleh programmer ketika ada kebutuhan aplikasi untuk skenario bisnis. Pengembangan aplikasi dan
penerapan di seluruh cluster Hadoop dilakukan oleh programmer ketika mereka memahami pola aliran
MapReduce. Hadoop dapat dikembangkan dalam bahasa pemrograman seperti Python dan C++. MapReduce
Hadoop adalah sebuah kerangka kerja perangkat lunak untuk kemudahan dalam menulis aplikasi perangkat lunak
yang memproses data dalam jumlah yang sangat besar.
MapReduce adalah sebuah kerangka kerja yang membagi potongan data, mengurutkan output dan input peta
untuk mengurangi tugas. Sistem file menyimpan pekerjaan dan masukan dari pekerjaan. Eksekusi ulang tugas yang
gagal, menjadwalkannya, dan memonitornya adalah tugas kerangka kerja. Arsitektur MapReduce pada dasarnya
memiliki dua tahap pemrosesan utama, yaitu Map dan Reduce. MapReduce terjadi di pelacak pekerjaan sementara
proses perantara akan terjadi di antara fase Map dan Reduce. Pengurutan dan pengacakan adalah tugas yang
dilakukan oleh Map dan Reduce, yang dilakukan di antara keduanya. Sistem file lokal menyimpan data perantara.
Map() Function: Membuat dan memproses data impor. Mengambil data, mengubahnya menjadi sekumpulan data
lain di mana pemecahan elemen individu menjadi tupel dilakukan-tidak ada kontrak API yang membutuhkan
sejumlah output.
Reduce() Function: Keluaran pemetaan diteruskan ke dalam reduksi. Memproses data menjadi sesuatu yang dapat
digunakan. Setiap pemeta dilewatkan ke dalam fungsi reduksi. Nilai keluaran baru disimpan ke dalam HDFS.
Framework Hadoop tidak dapat memastikan bahwa setiap cluster melakukan pekerjaan yang mana, baik Map atau
Reduce atau keduanya Map dan Reduce. Jadi, permintaan tugas Map dan Reduce harus dikirim ke server yang
sesuai dalam cluster. Framework Hadoop sendiri mengelola semua tugas penerbitan (issuing), memverifikasi
penyelesaian pekerjaan, mengambil data dari HDFS, menyalin data ke grup node, dan sebagainya. Di Hadoop,
sebagian besar komputasi terjadi di node dan data di node itu sendiri yang mengurangi lalu lintas jaringan.
Map Phase- - Tahap ini membagi data input menjadi dua bagian- Kunci dan Nilai (Gambar 14). Yang dapat ditulis
dan dibandingkan adalah kunci dalam tahap pemrosesan di mana hanya dalam tahap pemrosesan, Nilai dapat
ditulis. Katakanlah klien memberikan data input ke sistem Hadoop; pelacak tugas diberikan tugas oleh pelacak
pekerjaan. Pemisahan input dilakukan menjadi beberapa input. Konversi pasangan key-value dilakukan dengan data
input oleh pembaca rekaman. Ini adalah input data yang sebenarnya untuk Peta sebagai informasi yang dipetakan
untuk diproses lebih lanjut. Jenis format bervariasi, sehingga pembuat kode harus melihat setiap bagian format
data dan membuat kode yang sesuai. Pereduksi mini, yang biasanya disebut penggabung, kode pereduksi
menempatkan input sebagai penggabung. Combiner adalah jenis Reducer lokal yang mengelompokkan data serupa
dari fase peta ke dalam set yang dapat diidentifikasi. Ia mengambil kunci perantara dari mapper sebagai input dan
menerapkan kode yang ditentukan pengguna untuk menggabungkan nilai dalam lingkup kecil dari satu mapper. Ini
bukan bagian dari algoritme MapReduce utama; ini opsional. Bandwidth jaringan menjadi tinggi ketika sejumlah
besar data diperlukan. Hash adalah partisi default yang digunakan. Modul partisi memainkan peran kunci dalam
Hadoop. Performa yang lebih baik diberikan dengan mengurangi tekanan oleh pemohon pada peredam.
Pemrosesan di Intermediate - Pada fase intermediate, input peta masuk ke fase sortir dan pengacakan. Node
Hadoop tidak memiliki replikasi di mana semua data perantara disimpan dalam sistem file lokal. Data round-robin
digunakan oleh Hadoop untuk menulis ke disk lokal, data perantara. Ada faktor pengocokan dan pengurutan lain
yang harus dipertimbangkan untuk mencapai kondisi penulisan data ke disk lokal, tugas Reducer dimulai dengan
langkah Pengocokan dan Pengurutan. Tugas ini mengunduh pasangan kunci-nilai yang telah dikelompokkan ke
dalam mesin lokal, di mana Reducer berjalan. Masing-masing pasangan kunci-nilai diurutkan berdasarkan kunci ke
dalam daftar data yang lebih besar. Daftar data mengelompokkan kunci-kunci yang setara sehingga nilainya dapat
diulang dengan mudah dalam tugas Reducer (Pereduksi).
Reducer Phase - Pereduksi menerima input data yang telah diurutkan dan dikocok. Semua data masukan akan
digabungkan, dan pasangan kunci-nilai yang serupa akan ditulis ke sistem HDFS. Untuk tujuan pencarian dan
pemetaan, reducer tidak selalu diperlukan. Mengatur beberapa properti untuk memungkinkan pengembangan
jumlah reduksi untuk setiap tugas. Selama pemrosesan tugas, eksekusi spekulatif memainkan peran penting. Kinerja
First In First Out (FIFO), dan jika lebih dari satu mapper bekerja pada data yang sama, dan jika salah satu berjalan
lambat, maka tugas-tugas ditugaskan ke mapper berikutnya untuk program cepat yang dijalankan oleh pelacak
pekerjaan. peredam mengambil data yang dipasangkan dengan nilai kunci yang dikelompokkan sebagai input dan
menjalankan fungsi peredam pada masing-masing data. Di sini, data dapat dikumpulkan, disaring, dan digabungkan
dengan berbagai cara, dan memerlukan berbagai macam pemrosesan. Setelah eksekusi selesai, fungsi ini
memberikan nol atau lebih pasangan nilai-kunci ke langkah terakhir.
Output Phase - Pada fase output, kami memiliki pemformat output yang menerjemahkan pasangan kunci-nilai akhir
dari fungsi Reducer dan menuliskannya ke dalam file menggunakan penulis catatan.
Contoh MapReduce
Traditional enterprise approach: Dalam pendekatan ini, sebuah perusahaan akan memiliki sebuah komputer untuk
menyimpan dan memproses data besar (Gambar 16). Untuk tujuan penyimpanan, programmer akan mengambil
bantuan dari vendor database pilihan mereka seperti Oracle, IBM, dll. Dalam pendekatan ini, pengguna berinteraksi
dengan aplikasi, yang pada gilirannya menangani bagian penyimpanan dan analisis data.
Google’s Solution - Algoritma MapReduce: Pendekatan tradisional bekerja dengan baik dengan itu aplikasi yang
memproses data yang tidak terlalu banyak yang dapat ditampung oleh server database standar, atau hingga batas
prosesor yang memproses data. Tetapi ketika harus berurusan dengan data yang dapat diskalakan dalam jumlah
besar, merupakan tugas yang sibuk untuk memproses data tersebut melalui satu kemacetan basis data.
Google memecahkan masalah ini dengan menggunakan algoritma yang disebut MapReduce. Algoritme ini membagi
tugas menjadi bagian-bagian kecil dan menugaskannya ke banyak komputer, dan mengumpulkan hasil dari
komputer-komputer tersebut yang jika diintegrasikan akan membentuk kumpulan data hasil (seperti yang
ditunjukkan pada Gambar 17).
Mari kita ambil contoh dunia nyata untuk memahami kekuatan MapReduce. Twitter menerima sekitar 500 juta
tweet per hari, yang berarti hampir 3000 tweet per detik. Ilustrasi berikut menunjukkan bagaimana Twitter
mengelola tweet-nya dengan bantuan MapReduce (Gambar 18).
Seperti yang ditunjukkan dalam ilustrasi, algoritme MapReduce melakukan tindakan berikut :
o Tokenize - Tokenisasi tweet menjadi peta token dan menuliskannya sebagai pasangan nilai-kunci.
o Filter - Menyaring kata-kata yang tidak diinginkan dari peta token dan menulis peta yang telah difilter sebagai
pasangan kunci-nilai.
o Count - Menghasilkan penghitung token per kata.
o Aggregate Counters - Mempersiapkan agregat nilai penghitung yang serupa ke dalam unit kecil yang dapat
dikelola.
Ringkasan
Big data adalah sejumlah besar informasi yang beragam yang datang dalam volume yang semakin meningkat
dan dengan kecepatan yang semakin tinggi.
Big data terkait dengan penggalian data yang bermakna dengan menganalisis sejumlah besar data yang
kompleks dan berformat beragam yang dihasilkan dengan kecepatan tinggi, yang tidak dapat ditangani dan
diproses oleh sistem tradisional.
Big data dapat terstruktur (biasanya berupa angka, mudah diformat dan disimpan) atau tidak terstruktur
(bentuknya lebih bebas, kurang terukur).
Setiap data yang dapat disimpan, diakses, dan diproses dalam bentuk format yang tetap disebut sebagai data
'terstruktur'.
Setiap data yang tidak diketahui bentuk atau strukturnya diklasifikasikan sebagai data tidak terstruktur. Selain
ukurannya yang sangat besar, data yang tidak terstruktur menimbulkan banyak tantangan dalam hal
pemrosesan untuk mendapatkan nilai darinya.
Data besar dapat dikumpulkan dari komentar yang dibagikan secara publik di jejaring sosial dan situs web, yang
dikumpulkan secara sukarela dari perangkat elektronik dan aplikasi pribadi, melalui kuesioner, pembelian
produk, dan check-in elektronik.
Big data paling sering disimpan dalam basis data komputer dan dianalisis menggunakan perangkat lunak yang
dirancang khusus untuk menangani kumpulan data yang besar dan kompleks.
Big data analytics sebagian besar melibatkan pengumpulan data dari berbagai sumber, mengolahnya
sedemikian rupa sehingga tersedia untuk dikonsumsi oleh analis, dan akhirnya menghasilkan produk data yang
berguna bagi bisnis organisasi.
Sistem File Terdistribusi Hadoop adalah komponen utama dari Apache Hadoop. Sistem ini menangani kumpulan
data besar yang berjalan pada perangkat keras komoditas. Sistem ini memungkinkan banyak file untuk disimpan
dan diambil secara bersamaan dengan kecepatan yang belum pernah terjadi sebelumnya.
MapReduce adalah sebuah framework yang membagi potongan data, mengurutkan output dan input map untuk
mengurangi tugas.
LATIHAN
A. Pertanyaan Pilihan
Pilih salah satu jawaban yang benar !
5. Big data adalah istilah yang terus berkembang yang menggambarkan sejumlah besar data yang memiliki
potensi untuk ditambang sebagai informasi?
A. Terstruktur
B. Tidak terstruktur
C. Semi Terstruktur
D. Semua hal di atas benar
6. Data apa pun yang dapat disimpan, diakses, dan diproses dalam bentuk format tetap disebut sebagai _____
A. Data Terstruktur
B. Data Tidak terstruktur
C. Data Semi Terstruktur
D. Semua hal di atas benar
10. ____adalah platform manajemen sumber daya yang bertanggung jawab untuk mengelola sumber daya
komputasi dalam cluster dan menggunakannya untuk menjadwalkan pengguna dan aplikasi di Hadoop.
A. Hadoop Common
B. HDFS
C. Hadoop YARN
D. Hadoop Mapper
B. Data Summarization
C. Text Summarization
D. Knowledge Summarization
12. Manakah dari yang berikut ini yang merupakan contoh data tidak terstruktur?
A. Data sensor
B. File log
C. Data web
D. Tak ada satupun jawaban yang benar
B. Pertanyaan Essay
Jawablah pertanyaan-pertanyaan berikut dengan benar !
1. Jelaskan teknik analisis data dalam big data?
2. Apa saja tools analisis data yang dapat digunakan dalam big data?
3. Jelaskan fase-fase dalam siklus analisis big data?
4. Apa yang dimaksud dengan big data? Jelaskan karakteristiknya?
5. Jelaskan karakteristik V dalam big data?
6. Jelaskan perbedaan big data dengan metode database tradisional?
7. Jelaskan perbedaan antara pemrosesan Paralel, Terdistribusi, dan Cluster?
8. Jelaskan perbedaan antara data terstruktur, tidak terstruktur, dan semi-terstruktur?
9. Jelaskan bagaimana cara kerja MapReduce di Hadoop?
10.Jelaskan arsitektur MapReduce?