Anda di halaman 1dari 36

kelompok 4

Anggota Kelompok :
1. Muhamad afriza firmansyah (22552011336)
2. Ilham Almurtapi (22552011308)
3. Gilang Fikri (22552011309)
Big Data Processing
Big Data Processing adalah pendekatan dalam mengelola,
menganalisis, dan mengolah data dalam skala yang sangat besar.
Dalam konteks transformasi bisnis, istilah ini merujuk pada
kemampuan teknologi untuk menangani volume data yang luar
biasa besar, termasuk data terstruktur dan tidak terstruktur.
Sejarah big data
Istilah "big data" mengacu pada data yang sangat besar, cepat atau
kompleks sehingga sulit atau tidak mungkin untuk diproses
menggunakan metode tradisional. Tindakan mengakses dan
menyimpan sejumlah besar informasi untuk analitik sudah ada
sejak lama.

Volume Velocity Varietas


Volume data yang besar dan tak Velocity atau Kecepatan aliran data Varietas atau Variasi format data
terbatas. Ketika kita berbicara yang cepat. Data dalam Big Data terstruktur dan tidak terstruktur.
tentang Big Data, ukuran atau harus diproses dengan cepat agar Big Data tidak hanya terdiri dari
volume data yang dihasilkan dapat menghasilkan informasi yang satu jenis data, melainkan
sangatlah besar. bermanfaat. berbagai jenis dan variasi.
Teknologi big data
Teknologi Big Data telah membawa dampak revolusioner dalam pengelolaan dan pemanfaatan
data. Dalam dunia yang semakin terhubung dan penuh dengan informasi, Big Data operasional
dan Big Data analitik menjadi tonggak penting dalam menghadapi tantangan yang kompleks
dalam mengolah data dengan skala yang besar.

Big data operasional


adalah aspek penting dari teknologi Big Data yang fokus pada kapabilitas operasional dalam
interaksi pengguna. Dalam dunia yang serba cepat, Big Data operasional memungkinkan
pengguna untuk berinteraksi dengan data secara real-time, memberikan pengalaman yang
responsif dan praktis. Kapabilitas operasional dalam interaksi pengguna memungkinkan
pengguna untuk mencari, menyaring, dan memanipulasi data dengan mudah dan cepat.

Big data analitik


adalah kapabilitas analitik yang mendalam untuk melakukan analisis kompleks dan retrospektif
terhadap data. Kapabilitas analitik dalam Big Data analitik memungkinkan pengguna untuk menggali
wawasan mendalam dari data yang kompleks.
Manfaat Big Data dalam Bisnis
Bagi kalian yang sering berbelanja online di platform toko
online, kalian mungkin menyadari bahwa situs penjualan
online tersebut memberikan rekomendasi barang sesuai
dengan jenis produk yang sering kalian cari sebelumnya.
Big Data sangatlah bermanfaat dalam bidang bisnis.

1.Big Data membantu mengenal 2.Big Data membangun strategi


pelanggan dengan lebih baik. Dengan pemasaran yang lebih efektif. Dengan
mengumpulkan dan menganalisis memiliki akses terhadap data tersebut,
data, para pebisnis dapat para pengusaha bisa dengan mudah
mengumpulkan informasi terkait membangun strategi pemasaran yang
kebiasaan pembelian produk tepat, dan menjawab kebutuhan
mereka. pelanggan dengan lebih akurat.
• Distributed Storage Systems
adalah infrastruktur yang dapat membagi data ke beberapa server
fisik, dan seringkali di lebih dari satu pusat data. Biasanya berbentuk
cluster unit penyimpanan, dengan mekanisme sinkronisasi data dan
koordinasi antar node cluster.
• Distributed Storage Systems

mendorong integrasi komponen yang digabungkan secara longgar (biasanya open source). Misalnya, DBMS NoSQL biasanya mendukung
sistem penyimpanan yang berbeda (misalnya, HDFS, dll.). Sistem ini biasanya digunakan di lingkungan komputasi awan publik atau pribadi.
Distributed Storage Systems dapat menyimpan beberapa jenis data:
File
Penyimpanan blok
Objek

Distributed Storage Systems memiliki beberapa keunggulan:


Skalabilitas
Redundansi
Biaya
kinerja

fitur dan keterbatasan Distributed Storage Systems


Partisi
Replikasi
Toleransi kesalahan
Skalabilitas elastis
Google File System
adalah sistem file yang dikembangkan oleh Google secara khusus
untuk mengakomodir kebutuhan khusus Google. GFS didesain untuk
dapat memenuhi permintaan pemrosesan yang tumbuh semakin
tinggi secara signifikan atau bisa disebut bertui-tubi sebagaimana
Google butuhkan. GFS sebagaimana sistem terdistribusi lainnya
memiliki kualifikasi yang tidak jauh dari:
Memiliki kemampuan yang dapat ditingkatkan (scale out)
Mampu memiliki performa yang bagus
Memiliki reliabilitas yang bagus, dan
Tingkat ketersedian yang tinggi.
Arsitektur GFS

GFS memiliki arsitektur master-slave, satu master yang mengelola beberapa slave (chunk
server). Data yang disimpan di dalam GFS akan di pecah-pecah ke dalam beberapa bagian
(chunk) yang kemudian di replikasi dan di simpan di seluruh chunk server yang tersedia,
sedangkan lokasi dan metadata file yang ditaruh di GFS tersebut akan disimpan oleh server
master dalam bentuk namespace. Ketika ada chunk server yang mati/rusak, maka chunk server
yang lain yang menyimpan data yang sama akan segera mereplikasi ulang, untuk menjaga
ketersediaan data yang disimpan. Sedangkan apabila server Master rusak, maka GFS akan
mendelegasikan peran master tersebut ke master bayangan (shadow master).
Combining Object Storage and File Storage
Menggabungkan penyimpanan objek dan penyimpanan file
mengacu pada pengintegrasian kedua jenis penyimpanan dalam
infrastruktur penyimpanan tunggal untuk memanfaatkan manfaat
masing-masing jenis penyimpanan. Penyimpanan objek ideal untuk
menyimpan data tidak terstruktur dalam jumlah besar, seperti
gambar, video, dan dokumen, sedangkan penyimpanan file sangat
cocok untuk beban kerja dan aplikasi berbasis file tradisional.
Dengan menggabungkan keduanya, organisasi dapat
mengoptimalkan lingkungan penyimpanannya untuk
mengakomodasi berbagai jenis data dan beban kerja secara efisien.
• Big Data Processing Framework
Big Data Processing Framework adalah perangkat lunak yang dirancang untuk mengelola,
memproses, dan menganalisis volume data yang sangat besar atau "big data". Framework ini
menyediakan alat, fungsi, dan infrastruktur yang diperlukan untuk menangani tantangan
terkait big data, seperti penyimpanan data berskalabel, pemrosesan paralel, analisis real-time,
dan integrasi dengan berbagai sumber data.

keuntungan menggunakan big Data Processing


Framework
Fleksibilitas
karena kode untuk fungsi peta dan pengurangan ditulis oleh pengguna, terdapat fleksibilitas
yang cukup besar dalam menentukan pemrosesan tepat yang diperlukan atas data daripada
menentukannya menggunakan Sql.
Skalabilitas
adalah kemampuan untuk melakukan penskalaan seiring dengan peningkatan volume data.
Khususnya, dalam aplikasi cloud, diperlukan skalabilitas elastis, yang mengharuskan sistem
untuk dapat meningkatkan dan menurunkan kinerjanya secara dinamis seiring dengan
perubahan persyaratan komputasi.
efisien
tidak perlu memuat data ke dalam database, sehingga menghindari tingginya biaya
penyerapan data. Oleh karena itu, sangat efisien untuk aplikasi yang memerlukan pemrosesan
data hanya sekali (atau hanya beberapa kali).
MapReduce Data Processing
adalah model analisis data besar yang memproses
kumpulan data menggunakan algoritma paralel pada
klaster komputer.

Bagaimana Cara Kerja MapReduce?


Fungsi peta diterapkan ke setiap catatan dalam kumpulan data masukan untuk menghitung nol atau lebih
pasangan perantara (kunci, nilai). Fungsi pengurangan diterapkan ke semua nilai yang memiliki kunci unik
yang sama untuk menghitung hasil gabungan. Karena keduanya bekerja pada input independen, map dan
pengurangan dapat diproses secara otomatis secara paralel, pada partisi data berbeda menggunakan
banyak node cluster.
Gambar memberikan gambaran umum eksekusi MapReduce dalam sebuah cluster. Input dari fungsi peta
adalah sekumpulan pasangan kunci/nilai. Ketika pekerjaan MapReduce diserahkan ke sistem, tugas peta
(yang merupakan proses yang disebut sebagai pembuat peta) dimulai pada node komputasi dan setiap tugas
peta menerapkan fungsi peta ke setiap pasangan kunci/nilai (k1,v1) yang dialokasikan padanya. Nol atau
lebih perantara
Data Processing Using Spark
mengacu pada penggunaan Apache Spark, Kerangka Pemrosesan Data Besar yang kuat dan
serbaguna, untuk menganalisis dan memanipulasi kumpulan data besar. Spark menyediakan
beragam pustaka dan API untuk melakukan berbagai tugas pemrosesan data secara efisien,
baik dalam mode batch maupun real-time. Beberapa tugas pemrosesan data umum
menggunakan Spark meliputi:

1. peyerapan data
2. tranformasi data
3. pembelajaran mesin
4. pemrosesan grafis
5. visualisasi data
Data Processing Using Spark ini digambarkan pada Gambar Hal
pertama yang dilakukan program ini
adalah membuat RDD dari data
mentah di HDFS. Kemudian,
berdasarkan keputusan pengguna
apakah akan melakukan
cache/mempertahankan RDD, sistem
melakukan persiapan yang tepat.
Kemudian, mungkin ada transformasi
tambahan untuk menghasilkan RDD
lain dan, untuk setiap transformasi,
keputusan cache/persist ditentukan.
Terakhir, pemrosesan dimulai dengan
tindakan yang ditunjukkan dalam
program. Seperti disebutkan di atas,
tindakan pertama pada RDD
mewujudkannya, dan kemudian
menerapkan tindakan tersebut.
Pemrosesan ini mengulangi
beberapa tindakan dan pekerjaan.
Stream Data Management
merupakan proses pengumpulan data secara terus-menerus dan memindahkannya ke tujuan tertentu.
Biasanya, data ini ditangani oleh software stream processing untuk menganalisis, menyimpan, dan
menindaklanjuti informasi pada suatu data.

Manfaat Data Stream


Meminimalisir Kerugian
Manfaat streaming data yang pertama adalah untuk meminimalisir kerugian

Meningkatkan Return of Investment (ROI)


Manfaat streaming data yang selanjutnya adalah meningkatkan ROI.
Kemampuan untuk mengumpulkan, menganalisis, dan menindaklanjuti data yang ada dengan cepat akan
memberikan keunggulan kompetitif bagi suatu perusahaan.

Meningkatkan Kepuasan Pengguna


Feedback dari pengguna adalah metrik yang sangat berharga untuk mengetahui hal-hal apa saja yang sudah
baik, dan hal-hal apa saja yang perlu ditingkatkan oleh perusahaan.
Semakin cepat sebuah perusahaan dalam menanggapi keluhan pelanggan dengan memberikan solusi yang
baik, semakin baik pula kredibilitas perusahaan tersebut.
Stream Models, Languages, and Operators
Stream Models
adalah model komputasi yang digunakan untuk memproses data dalam aliran
berkelanjutan, bukan dalam kumpulan diskrit. Model ini dirancang untuk menangani
pemrosesan data waktu nyata, memungkinkan analisis data streaming secara efisien dan
tepat waktu.

Languages
adalah bahasa pemrograman atau bahasa kueri yang dirancang khusus untuk
mengekspresikan komputasi melalui aliran data. Bahasa-bahasa ini sering kali
menyertakan konstruksi yang disesuaikan untuk pemrosesan aliran, seperti fungsi
windowing, operator berbasis waktu, dan fitur manajemen status.

Operators
adalah fungsi atau operasi yang digunakan untuk memanipulasi dan memproses aliran
data. Operator ini biasanya mencakup operasi untuk memfilter, mentransformasikan,
menggabungkan, dan menggabungkan aliran. Contoh operator aliran termasuk peta, filter,
kurangi, gabung, jendela, dan kelompokkan berdasarkan.

Secara keseluruhan, stream models, languages, dan operators merupakan komponen


penting dalam membangun sistem untuk pemrosesan dan analisis data waktu nyata, yang
biasa digunakan di berbagai domain seperti perdagangan keuangan, jaringan sensor,
analisis media sosial, dan aplikasi IoT (Internet of Things).
Streaming Operators and Their Implementation

menggambarkan implementasi operator seleksi sebagai contoh. Tupel yang masuk hanya disaring
berdasarkan kondisi pemilihan.
Namun, operator stateful (misalnya, gabungan) memiliki perilaku pemblokiran dalam implementasi
relasionalnya yang tidak sesuai dengan DSS. Misalnya, sebelum mengembalikan tupel berikutnya, Nested
Loops Join (NLJ) berpotensi memindai seluruh relasi dalam dan membandingkan setiap tupel di dalamnya
dengan tupel luar saat ini. Mengingat sifat data streaming yang tidak terbatas, pemblokiran seperti itu
menimbulkan masalah. Telah terbukti bahwa suatu kueri bersifat monotonik jika dan hanya jika kueri
tersebut non-pemblokiran, artinya kueri tersebut tidak perlu menunggu hingga penanda akhir masukan
sebelum memberikan hasil.
Query Processing over Data Streams.
melibatkan analisis dan ekstraksi wawasan secara terus-menerus dari aliran data secara real-time atau hampir
real-time. Hal ini penting dalam skenario di mana data terus dihasilkan dan perlu diproses dengan cepat untuk
pengambilan keputusan tepat waktu. Aspek utama pemrosesan kueri melalui aliran data meliputi:

1. Pemrosesan Berkelanjutan
2. Windowing
3. Optimasi Kueri
4. Pemrosesan Peristiwa Kompleks (CEP)
5. Skalabilitas
6. Toleransi Kesalahan
Secara keseluruhan, pemrosesan kueri melalui aliran data memerlukan teknik dan teknologi khusus untuk
menangani tantangan unik yang ditimbulkan oleh sumber data yang terus
DSS Fault-Tolerance
mengacu pada kemampuan sistem untuk terus berfungsi dengan baik bahkan ketika terjadi
kegagalan atau kesalahan. Hal ini melibatkan mekanisme seperti redundansi, deteksi
kesalahan, dan pemulihan kesalahan untuk memastikan operasi tidak terganggu dan
menjaga integritas data. Sistem ini sering kali menggunakan teknik seperti replikasi data,
sistem cadangan, dan mekanisme failover untuk mengurangi dampak kesalahan dan
menjaga keandalan.
Graph Analytics Platforms.
adalah perangkat lunak yang dirancang khusus untuk menganalisis data yang terstruktur dalam bentuk graf atau
jaringan. Mereka memungkinkan pengguna untuk menjelajahi, menganalisis, dan mendapatkan wawasan dari
data yang terhubung, seperti jaringan sosial, jaringan infrastruktur, dan data terkait lainnya. Platform ini biasanya
dilengkapi dengan berbagai fitur, termasuk algoritma analisis graf, visualisasi grafis, integrasi dengan berbagai
sumber data, dan kemampuan untuk mengeksekusi pertanyaan kompleks terhadap graf. Mereka digunakan
dalam berbagai aplikasi, termasuk analisis keamanan, analisis sosial media, pemodelan jaringan transportasi,
dan lain-lain.

ada beberapa hal lain yang dapat dijelaskan tentang Graph Analytics Platforms:
Algoritma Analisis Graf
Visualisasi Grafis
Pengolahan Big Data
Interaksi dengan Berbagai Sumber Data
Analisis Jaringan Sosial
Keamanan Informasi
Pemrosesan Paralel
Pemantauan Jaringan dan Pengelolaan Infrastruktur
Graph Partitioning
proses membagi graf besar menjadi bagian-bagian yang lebih kecil
yang disebut partisi. Tujuan dari pemisahan graf adalah untuk
mengoptimalkan keseimbangan beban dan meminimalkan jumlah
koneksi lintas partisi
Beberapa metode yang umum digunakan untuk pemisahan graf termasuk:
Pendekatan Heuristik
Pendekatan Berbasis Spektral
Algoritma Optimisasi
Pilihan metode pemisahan graf tergantung pada karakteristik graf dan tujuan analisisnya. Beberapa faktor
yang perlu dipertimbangkan meliputi ukuran graf, pola koneksi antar simpul, dan sumber daya komputasi
yang tersedia. Pemisahan graf yang efisien dapat meningkatkan kinerja analisis dan pemrosesan data
pada graf yang besar dan kompleks.
MapReduce and Graph Analytics
map reduce adalah model pemrograman dan infrastruktur komputasi yang digunakan
untuk memproses dan menghasilkan data dalam skala besar di lingkungan
terdistribusi

Graph Analytics, di sisi lain, adalah bidang analisis data yang berfokus pada graf atau
jaringan terhubung, seperti jejaring sosial, jaringan transportasi, atau graf lainnya.
Tujuan dari analisis graf adalah untuk memahami struktur, pola, dan properti jaringan
untuk mendapatkan wawasan yang berharga.

Kegunaan map reduce and grap analytics


MapReduce dapat digunakan untuk menerapkan algoritma analisis graf dalam lingkungan
terdistribusi. Dalam konteks ini, tahap map biasanya digunakan untuk memproses dan
menjelajahi simpul-simpul dalam graf, sementara tahap reduce digunakan untuk
menggabungkan dan menganalisis hasil dari tahap map untuk menghasilkan output yang
diinginkan, seperti penghitungan jumlah tetangga atau mengidentifikasi subgraf yang spesifik.
Special-Purpose Graph Analytics Systems
adalah sistem perangkat lunakng dirancang khusus untuk melakukan analisis graf dengan
fokus pada tugas atau aplikasi tertentu. Berbeda dengan platform analitika graf umum
yang mungkin dapat menangani berbagai jenis analisis graf, sistem khusus ini sering kali
dioptimalkan untuk kinerja dan efisiensi tertentu dalam konteks aplikasi atau domain yang
spesifik.

Contoh dari special-Purpose Graph Analytics Systems


1. Sistem Analitika Graf untuk Jaringan Sosial
2. Sistem Analitika Graf untuk Bioinformatika
3. Sistem Analitika Graf untuk Analisis Jaringan Transportasi

Keuntungan menggunakan special-Purpose Graph Analytics Systems


Keuntungan menggunakan sistem khusus ini termasuk kinerja yang lebih baik, skalabilitas yang
dioptimalkan, dan kemampuan untuk menyediakan solusi yang lebih spesifik untuk kebutuhan
analisis yang kompleks. Namun, mereka mungkin kurang fleksibel daripada platform umum karena
fokusnya yang terbatas pada aplikasi atau domain tertentu.
Vertex-Centric Block Synchronous
Vertex-Centric Block Synchronous adalah salah satu pendekatan untuk mengeksekusi
algoritma pada graf dalam lingkungan pemrosesan terdistribusi. Dalam pendekatan ini,
pemrosesan dilakukan pada tingkat simpul (vertex-centric) dan dilakukan secara sinkron
dalam blok (block synchronous), di mana setiap blok operasi terdiri dari serangkaian iterasi
yang diproses secara bersamaan oleh semua simpul dalam blok tersebut.

Ingatlah bahwa sistem ini melakukan komputasi paralel pada sebuah cluster yang memiliki
node master dan sejumlah node pekerja, dengan masing-masing pekerja menghosting
sekumpulan simpul grafik dan mengimplementasikan fungsi Computer. Di beberapa sistem
(misalnya GPS dan Giraph), terdapat fungsi Master.Computer tambahan yang
memungkinkan beberapa bagian algoritma dieksekusi secara serial di master. Keberadaan
fungsi-fungsi ini memberikan fleksibilitas lebih lanjut untuk implementasi algoritma dan
beberapa optimasi (seperti yang kita bahas di bawah).
Untuk beberapa algoritma, penting untuk menangkap keadaan global grafik. Untuk
memfasilitasi hal ini, agregator dapat diterapkan. Setiap simpul menyumbangkan nilai ke
agregator, dan hasil agregasi tersedia untuk semua simpul pada superstep berikutnya.
Sistem biasanya menyediakan sejumlah agregator dasar seperti min, maks, dan jumlah.
Vertex-Centric Asynchronous
merupakan salah satu pendekatan dalam pemrosesan graf paralel di mana setiap
simpul (vertex) dalam graf memproses informasi secara independen dan asinkron,
tanpa perlu sinkronisasi dengan simpul lain. Pendekatan ini umumnya digunakan
dalam pemrograman model paralel seperti Apache Giraph dan Apache Hama untuk
memproses graf yang sangat besar secara efisien. Dalam konteks ini, "asynchronous"
mengacu pada fakta bahwa setiap simpul dapat memproses informasi tanpa harus
menunggu simpul lainnya, sehingga memungkinkan kinerja yang lebih baik dalam
sistem paralel.

Untuk menyederhanakan masalah, kita asumsikan bahwa semua


pesan antar simpul sampai ke tujuannya dalam superstep yang
sama, dan komputasi pada setiap pekerja juga diselesaikan dalam
superstep yang sama. Selain itu, kami mengasumsikan eksekusi
single-thread di mana setiap pekerja menjalankan Computer pada
simpul satu per satu. ditunjukkan pada Gambar Perhatikan, misalnya,
selama langkah inisialisasi, v1 mendorong id grupnya (1) ke v4, dan
v4 mendorong id grupnya (4) ke v1 dan v7. Karena kita
mengasumsikan eksekusi thread tunggal, v4.Compute dijalankan
untuk mengubah id grup v4 menjadi 1, yang juga didorong ke v7
dalam superstep yang sama (superset 1). Jadi, ketika v7.Computer
dijalankan, id grup v7 disetel ke 1. Akses ke status simpul dalam
superstep yang sama adalah fitur pembeda model AP.
Vertex-Centric Gather-Apply-Scatter
adalah kerangka kerja untuk menjalankan algoritma pada struktur data graf, yang terdiri
dari tiga tahapan utama:
1. Gather: Tahap ini melibatkan pengumpulan informasi dari tetangga-tetangga setiap
simpul graf. Informasi yang dikumpulkan biasanya berupa atribut atau data yang
relevan untuk perhitungan yang akan dilakukan.
2. Apply: Simpul graf kemudian menerapkan fungsi atau operasi tertentu pada
informasi yang telah dikumpulkan pada tahap sebelumnya. Operasi ini dapat
berupa perhitungan, transformasi, atau manipulasi data yang diperlukan untuk
menyelesaikan masalah yang dihadapi.
3. Scatter: Setelah pemrosesan pada simpul graf selesai, tahap terakhir adalah
menyebarkan hasil dari perhitungan tersebut ke tetangga-tetangga yang sesuai. Ini
bisa berarti memperbarui atribut atau mengirim pesan ke simpul-simpul tetangga.
Dengan pendekatan ini, algoritma pada graf dapat dijalankan secara terdistribusi dan
paralel dengan lebih efisien, karena setiap simpul hanya perlu berkomunikasi dengan
tetangganya dan tidak perlu memperhitungkan seluruh graf secara keseluruhan. Model
GAS sering digunakan dalam kerangka kerja pengolahan graf seperti Apache Giraph
dan GraphLab.
Partition-Centric Block Synchronous Processing
digunakan dalam pemrosesan paralel graf di lingkungan terdistribusi. Berikut adalah
penjelasan singkat mengenai setiap elemen dalam model ini:
1. Partition-Centric: Pendekatan ini membagi graf menjadi bagian-bagian yang disebut
partisi. Setiap partisi berisi sekelompok simpul dan tepi yang terkait erat satu sama
lain. Dengan membagi graf menjadi partisi, pemrosesan dapat dilakukan secara
terdistribusi di antara berbagai node atau prosesor.
2. Block Synchronous Processing: Proses pemrosesan dilakukan secara sinkron dan
dalam blok. Artinya, komputasi pada setiap partisi dilakukan secara berurutan
dalam blok-blok tertentu. Setiap blok komputasi mencakup serangkaian operasi
yang diterapkan pada partisi-partisi graf. Sementara itu, proses komunikasi antara
partisi-partisi dapat terjadi secara sinkron setelah setiap blok komputasi.
Melalui PC-BSP, pemrosesan graf dapat dilakukan dengan efisien di lingkungan
terdistribusi dengan memanfaatkan paralelisme dan sinkronisasi yang tepat. Model ini
membantu mengatur aliran komputasi dan komunikasi antara partisi-partisi graf,
memungkinkan penyelesaian masalah yang kompleks dalam skala yang besar.
Partition-Centric Asynchronous
Digunakan dalam pemrosesan paralel graf di lingkungan terdistribusi. Berikut adalah
penjelasan singkat mengenai konsep ini:
1. Partition-Centric: Pendekatan ini melibatkan pembagian graf menjadi bagian-bagian
yang disebut partisi. Setiap partisi berisi sekelompok simpul dan tepi yang
berdekatan. Dengan membagi graf menjadi partisi, pemrosesan dapat dilakukan
secara terdistribusi di antara berbagai node atau prosesor.
2. Asynchronous: Proses pemrosesan dilakukan secara asinkron, yang berarti tidak
ada sinkronisasi tunggal yang mengatur alur komputasi. Dalam konteks PC-A,
setiap partisi graf dapat memproses komputasi dan berinteraksi dengan partisi lain
secara independen, tanpa perlu menunggu partisi lain selesai. Ini memungkinkan
untuk peningkatan paralelisme dan efisiensi, karena tidak ada ketergantungan
antar partisi yang mengharuskan menunggu satu sama lain.
Melalui model PC-A, pemrosesan graf dapat dilakukan secara efisien di lingkungan
terdistribusi dengan memanfaatkan paralelisme yang lebih besar dan mengurangi
overhead sinkronisasi. Ini sangat berguna untuk menangani graf besar dengan skala
yang luas dan meningkatkan kinerja dalam menyelesaikan berbagai tugas pemrosesan
graf.
Partition-Centric Gather-Apply-Scatter
adalah kerangka kerja untuk menjalankan algoritma pada struktur data graf di
lingkungan terdistribusi. Berikut adalah penjelasan singkat tentang setiap komponen
dalam model ini:
1. Partition-Centric: Pendekatan ini membagi graf menjadi bagian-bagian yang
disebut partisi. Setiap partisi berisi sekelompok simpul dan tepi yang terkait erat
satu sama lain. Dengan membagi graf menjadi partisi, pemrosesan dapat dilakukan
secara terdistribusi di antara berbagai node atau prosesor.
2. Gather-Apply-Scatter (GAS): Model GAS pada dasarnya terdiri dari tiga tahap
utama:
Gather: Tiap partisi graf mengumpulkan informasi dari tetangga-tetangganya
yang diperlukan untuk melakukan komputasi.
Apply: Setelah informasi terkumpul, setiap partisi menerapkan fungsi atau
operasi tertentu pada data yang dikumpulkan.
Scatter: Hasil dari operasi yang diterapkan kemudian disebarkan atau
diterapkan kembali ke tetangga-tetangga yang relevan dalam graf.
Dengan menggunakan model PC-GAS, pemrosesan graf dapat dilakukan secara
paralel di berbagai partisi, dan komputasi serta komunikasi dapat diatur secara efisien,
memungkinkan penanganan graf yang sangat besar dan kompleks.
Edge-Centric Block Synchronous Processing
Digunakan dalam pemrosesan paralel graf di lingkungan terdistribusi. Berikut adalah
penjelasan singkat tentang setiap elemen dalam model ini:
1. Edge-Centric: Pendekatan ini memandang tepi (edge) sebagai unit pemrosesan
utama. Dalam konteks EC-BSP, komputasi dilakukan pada level tepi, yang berarti
operasi atau fungsi diterapkan pada setiap tepi dalam graf.
2. Block Synchronous Processing: Proses pemrosesan dilakukan secara sinkron
dan dalam blok. Artinya, komputasi pada setiap blok dilakukan secara bersamaan
dan berurutan dalam unit tepi tertentu. Setelah satu blok komputasi selesai, proses
berikutnya dimulai secara sinkron.
Dengan menggunakan model EC-BSP, pemrosesan graf dapat dilakukan secara
paralel dengan memanfaatkan blok-blok tepi, yang memungkinkan efisiensi dan kontrol
yang lebih baik terhadap alur komputasi. Model ini berguna untuk menangani graf yang
besar dengan skala yang luas dan meningkatkan kinerja dalam menyelesaikan
berbagai tugas pemrosesan graf
Edge-Centric Asynchronous
Diigunakan dalam pemrosesan paralel graf di lingkungan terdistribusi. Berikut adalah penjelasan
singkat tentang konsep ini:
1. Edge-Centric: Pendekatan ini memandang tepi (edge) sebagai unit utama pemrosesan. Dalam
konteks ini, operasi atau fungsi diterapkan pada setiap tepi dalam graf, sehingga pemrosesan
berfokus pada hubungan antara tepi.
2. Asynchronous: Proses pemrosesan dilakukan secara asinkron, yang berarti tidak ada
sinkronisasi tunggal yang mengatur alur komputasi. Dalam model ini, setiap tepi dapat
memproses komputasi dan berinteraksi dengan tepi lain secara independen, tanpa perlu
menunggu proses lain selesai. Ini dapat meningkatkan paralelisme dan efisiensi, karena tidak
ada ketergantungan antara tepi yang mengharuskan menunggu satu sama lain.
Melalui model Edge-Centric Asynchronous, pemrosesan graf dapat dilakukan secara efisien di
lingkungan terdistribusi dengan memanfaatkan paralelisme yang lebih besar dan mengurangi
overhead sinkronisasi. Ini sangat berguna untuk menangani graf besar dengan skala yang luas dan
meningkatkan kinerja dalam menyelesaikan berbagai tugas pemrosesan graf
Edge-Centric Gather-Apply-Scatter
digunakan dalam pemrosesan paralel graf di lingkungan terdistribusi. Berikut adalah
penjelasan singkat tentang setiap elemen dalam model ini:
1. Edge-Centric: Pendekatan ini memandang tepi (edge) sebagai unit utama
pemrosesan. Dalam konteks EC-GAS, pemrosesan fokus pada hubungan antara tepi
dalam graf.
2. Gather-Apply-Scatter (GAS): Model GAS pada dasarnya terdiri dari tiga tahap utama:
Gather: Setiap tepi mengumpulkan informasi dari simpul-simpul yang terhubung
dengannya.
Apply: Informasi yang terkumpul kemudian digunakan untuk menerapkan fungsi
atau operasi tertentu pada tepi itu sendiri.
Scatter: Hasil dari operasi yang diterapkan disebarkan atau diterapkan kembali ke
simpul-simpul yang terhubung dengan tepi itu.
Dengan menggunakan model EC-GAS, pemrosesan graf dapat dilakukan secara paralel
dengan memanfaatkan informasi yang terkumpul dari hubungan tepi, sehingga efisiensi
dan kontrol yang lebih baik terhadap alur komputasi dapat dicapai. Model ini berguna untuk
menangani graf yang besar dengan skala yang luas dan meningkatkan kinerja dalam
menyelesaikan berbagai tugas pemrosesan graf
Data Lakes
Teknologi big data memungkinkan penyimpanan dan analisis berbagai jenis data, yang dapat
terstruktur, semi terstruktur, atau tidak terstruktur, dalam format aslinya. Hal ini memberikan peluang
untuk mengatasi masalah lama integrasi data fisik dengan cara baru yang biasanya diselesaikan
dengan menggunakan gudang data. Gudang data mengintegrasikan data dari sumber data
perusahaan yang berbeda menggunakan format umum, biasanya format model relasional, yang
memerlukan transformasi data. Sebaliknya, data lake menyimpan data dalam format aslinya,
menggunakan penyimpanan data besar, seperti Hadoop HDFS. Setiap elemen data dapat langsung
disimpan, dengan pengidentifikasi unik dan metadata terkait (misalnya, sumber data, format, dll.).
Data Lake Versus Data Warehouse
Data Lake dan Data Warehouse adalah dua konsep yang berbeda dalam pengelolaan data, masing-masing memiliki karakteristik, tujuan, dan pendekatan
yang unik:
1. Data Lake:
Data Lake adalah penyimpanan data yang menyimpan berbagai jenis data mentah dan terstruktur maupun tidak terstruktur dalam jumlah besar dan
format yang bervariasi.
Pendekatan Data Lake lebih fleksibel dan dapat menampung data mentah tanpa perlu transformasi atau pemodelan sebelumnya.
Data Lake biasanya digunakan untuk analisis data lanjutan, seperti analisis prediktif atau machine learning, karena menyediakan akses terhadap data
mentah yang kaya dan beragam.
Data Lake mendorong konsep "schema-on-read", yang berarti skema atau struktur data diterapkan saat data dibaca, bukan saat data dimasukkan ke
dalam penyimpanan.
2. Data Warehouse:
Data Warehouse adalah penyimpanan data terstruktur yang dirancang untuk menyimpan data bisnis yang terintegrasi, bersih, dan terorganisir untuk
analisis dan pelaporan.
Data Warehouse melibatkan proses ekstraksi, transformasi, dan pemrosesan data (ETL) sebelum data dimuat ke dalam penyimpanan, sehingga data
di dalamnya memiliki skema yang konsisten.
Data Warehouse digunakan untuk analisis bisnis yang berorientasi pada kinerja, seperti pelaporan, analisis OLAP (Online Analytical Processing), dan
analisis historis.
Pendekatan Data Warehouse mengikuti konsep "schema-on-write", di mana skema atau struktur data diterapkan saat data dimasukkan ke dalam
penyimpanan.
Perbedaan utama antara Data Lake dan Data Warehouse adalah dalam jenis dan format data yang dapat disimpan, serta pendekatan untuk transformasi
data. Data Lake lebih cocok untuk kasus penggunaan di mana diperlukan fleksibilitas tinggi dan analisis data yang mendalam, sedangkan Data Warehouse
lebih cocok untuk analisis bisnis yang terstruktur dan berorientasi pada kinerja. Dalam beberapa organisasi, Data Lake dan Data Warehouse bisa digunakan
bersamaan untuk memenuhi kebutuhan yang beragam dalam mengelola dan menganalisis data.
~Terimah kasih~

Anda mungkin juga menyukai