Anda di halaman 1dari 5

Bab 5 Konsep Penyimpanan Big Data

-Data yang diperoleh dari sumber eksternal seringkali tidak dalam format yang dapat langsung
diproses maka dari itu untuk menyiapkan data penyimpanan dan pemrosesan diperlukan data
wrangling dimana data wrangling mencakup langkah-langkah untuk memfilter, membersihkan
dan menyiapkan data untuk analisis hilir.
-Dari perspektif penyimpanan, salinan data disimpan terlebih dahulu dalam format yang
diperoleh dan, setelah data wrangling,data yang telah disiapkan perlu disimpan kembali.
Biasanya, penyimpanan diperlukan setiap kali hal berikut ini terjadi:
• Kumpulan data eksternal diperoleh, atau data internal akan digunakan dalam lingkungan Big
Data
• Data dimanipulasi agar dapat digunakan untuk analisis data
• data diproses melalui aktivitas ETL, atau output yang dihasilkan dipakai sebagai hasil dari
operasi analitik
- Karena kebutuhan untuk menyimpan kumpulan Big Data,dan seringkali dalam banyak salinan
maka strategi penyimpanan inovatif dan teknologi telah diciptakan untuk mencapai biaya yang
efektif dan sangat terukur.Untuk memahami mekanisme yang mendasari teknologi penyimpanan
dalam Big Data, topik berikut diperkenalkan dalam bab ini:
• Clusters
• File systems and distributed files systems
• NoSQL
• Sharding
• Replication
• CAP theorem
• ACID
• BASE
CLUSTER
-Dalam komputasi, cluster adalah kumpulan server atau node yang digabungkan erat. Server ini
biasanya memiliki spesifikasi perangkat keras yang sama dan terhubung bersama melalui
jaringan ke bekerja sebagai satu kesatuan, seperti yang ditunjukkan pada Figure 5.1. Setiap node
di cluster memiliki miliknya sendiri sumber daya khusus, seperti memori, prosesor, dan hard
drive. Sebuah cluster dapat mengeksekusi tugas dengan membaginya menjadi potongan-
potongan kecil dan mendistribusikan eksekusinya ke komputer yang berbeda yang termasuk ke
dalam cluster

FILE SYSTEMS AND DISTRIBUTED FILE SYSTEMS


- Sistem file adalah metode menyimpan dan mengatur data pada perangkat penyimpanan, seperti
flash drive, DVD dan hard drive. File adalah unit penyimpanan atom yang digunakan oleh file
sistem untuk menyimpan data. Sistem file memberikan pandangan logis dari data yang disimpan
di penyimpanan perangkat dan menyajikannya sebagai struktur pohon dari direktori dan file
seperti yang digambarkan pada Figure 5.2.Sistem operasi memakai sistem file untuk menyimpan
dan mengambil data atas nama aplikasi.Setiap sistem operasi menyediakan dukungan untuk satu
atau lebih sistem file, misalnya NTFS di Microsoft Windows dan ext di Linux.
-Sistem file terdistribusi adalah sistem file yang dapat menyimpan file besar yang tersebar di
seluruh node dari sebuah cluster, seperti yang diilustrasikan pada Figure 5.3.Bagi klien, file
tampak seperti lokal namun, ini hanya tampilan logis secara fisik karena filenya didistribusikan
ke seluruh cluster.Tampilan lokal ini disajikan melalui sistem file terdistribusi dan
memungkinkan file diakses dari berbagai lokasi. Contohnya termasuk Google File System (GFS)
dan Sistem File Terdistribusi Hadoop (HDFS)

NoSQL
- NoSQL adalah database non-relasional yang sangat terukur,mentoleransi kesalahan dan
dirancang khusus untuk menampung data semi-terstruktur dan tidak terstruktur.Sebuah database
NoSQL sering menyediakan antarmuka kueri berbasis API yang dapat dipanggil dari dalam
aplikasi.Database NoSQL juga mendukung bahasa kueri selain Structured Query Language
(SQL) karena SQL dirancang untuk membuat kueri data terstruktur disimpan dalam database
relasional. Sebagai contoh, database NoSQL yang dioptimalkan untuk menyimpan file XML
akan sering menggunakan XQuery sebagai bahasa kueri.Karena itu, ada beberapa database
NoSQL yang juga menyediakan seperti antarmuka kueri SQL, seperti yang ditunjukkan pada
Figure 5.4.

SHARDING
- Sharding adalah proses mempartisi secara horizontal kumpulan data besar menjadi kumpulan
set data yang lebih kecil dan lebih mudah dikelola yang disebut shard.Kemudian shard tersebut
didistribusikan di beberapa node,di mana node adalah server atau mesin Figure 5.5. Setiap shard
disimpan didalam node terpisah dan setiap node bertanggung jawab hanya untuk sebuah data
yang disimpan di dalamnya. Setiap shard berbagi skema yang sama, dan semua shard secara
kolektif mewakili kumpulan data lengkap.

-Sharding sering kali transparan bagi klien, tetapi ini bukanlah persyaratan. Sharding memungkinkan
distribusi beban pemrosesan di beberapa node untuk mencapai skalabilitas horizontal.Penskalaan
horizontal adalah metode untuk meningkatkan kapasitas sistem dengan menambahkan sumber daya
serupa atau berkapasitas lebih tinggi di samping sumber daya yang ada. Karena setiap node
bertanggung jawab hanya sebagian dari seluruh kumpulan data, maka waktu read/writenya menjadi
sangat meningkat.Figure 5.6 menyajikan ilustrasi cara kerja sharding dalam praktik:

1. Setiap shard dapat secara independen melayani read dan write untuk sub kumpulan data tertentu
yang menjadi tanggung jawabnya.

2. Bergantung pada kueri, data mungkin perlu diambil dari kedua shard.
- Manfaat sharding adalah memberikan toleransi parsial terhadap kegagalan. Dalam kasus node yang
gagal,hanya data yang disimpan pada node itu yang terpengaruh.Berkenaan dengan partisi data, pola
kueri perlu diperhitungkan sehingga shard itu sendiri tidak menjadi penghambat kinerja yang ada.
Misalnya,kueri yang membutuhkan data dari beberapa shard akan memberlakukan pinalti kinerja.
Lokalitas data menyimpan data yang biasa diakses ditempatkan pada satu shard dan membantu
mengatasi kinerja masalah tersebut.

Anda mungkin juga menyukai