Langsung ke konten utama

Hadoop Distributed File System - HDFS

Rangkuman dari HDFS

Nama : Muhammad Daffa Abiyyu Rahman

NRP : 6022211015


HDFS, singkatan dari Hadoop Distributed File System, adalah sebuah desain DFS yang ditujukan pada hardware komoditas dan memiliki banyak keserupaan dengan DFS lainnya. Tentunya, ada beberapa perbedaan seperti fault tolerance yang tinggi dan ditujukan pada hardware dengan biaya rendah. HDFS adalah bagian dari proyek Apache Hadoop Core dan awalnya dibuat untuk keperluan mesin pencari web bernama Apache Nutch.


HDFS dibuat dengan beberapa tujuan dan asumsi sebagai berikut:

1. Selalu beranggapan bahwasanya kegagalan hardware adalah normal, dan selalu memprioritaskan fault tolerance untuk menyesuaikan dengan bagian yang gagal.

2. Menggunakan stream untuk mengakses data, dan mengurangi batasan POSIX di beberapa tempat untuk memaksimalkan data yang diproses.

3. Selalu berasumsi bahwa himpunan data yang diproses berskala sangat besar dan sangat banyak, berukuran GB hingga TB dan satu instance bisa memproses jutaan file.

4. Menggunakan simple coherence model yang berdasarkan konsep WORM (Write-Once-Read-Many).

5. Menggerakkan proses komputasi, bukan data yang akan diproses.

6. Bersifat portabel, sehingga bisa dipindahkan dan digunakan oleh beberapa sistem yang berbeda.


Arsitektur yang digunakan dalam HDFS adalah master/slave. Untuk master sendiri menggunakan NameNode, sedangkan slave dalam arsitektur ini dinamakan DataNode. HDFS dibangun dengan bahasa Java dan memiliki Java API serta C wrapper. Penggunaan NameNode tunggal menyederhanakan arsitektur dimana NameNode bertugas menjadi arbitrator dan penyimpanan seluruh metadata di HDFS.


Namespace sistem disimpan di NameNode. Secara garis besar, Namespace yang digunakan di HDFS serupa dengan DFS tradisional. Fasilitas juga serupa dengan DFS lain seperti read, write, open, dan close. Satu hal yang menarik di HDFS adalah kemampuan replication dimana HDFS bisa menentukan berapa salinan dari sebuah file disimpan dalam sistem.


HDFS di desain dengan mempertimbangkan cluster data dengan ukuran besar. Dalam hal ini, HDFS membagi data-data ini menjadi blok dalam bentuk sequential. Blok-blok ini dapat direplikasikan untuk keperluan fault tolerance. NameNode dapat mengetahui lokasi yang bisa digunakan untuk keperluan replikasi melalui heartbeat dan block report, dimana yang pertama menginfokan apakah DataNode berfungsi normal atau tidak, sedangkan block report merincikan isi dari DataNode.


Untuk komunikasi, HDFS menggunakan TCP/IP. Klien terhubung ke port TCP milik NameNode, dan berkomunikasi dengan NameNode lewat ClientProtocol. DataNode menggunakan DataNodeProtocol untuk berkomunikasi dengan NameNode. Kedua protokol itu disimpan dalam bentuk RPC (Remote Procedure Call). NameNode tidak pernah membuat RPC dan hanya merespons ke permintaan RPC.


Untuk keselamatan sistem terhadap kegagalan, 5 hal berikut menjadi perhatian HDFS:

1. Kegagalan Disket Data, Heartbeat, dan Re-Replication

2. Cluster Rebalancing

3. Metadata Disk Failure

4. Integritas Data

5. Snapshot

Komentar

Postingan populer dari blog ini

Preparing Anaconda with Tensorflow [ACTUALLY WORKED FOR ME 2024]

Make sure to follow this with perfect order: 1. conda create -n tf_gpu tensorflow-gpu 2. conda activate tf_gpu 3. pip install numpy==1.23.4 [EXECUTE GPU TEST CODE] ==> CODE MUST RETURN GPU NUMBER > 0 [#CONFIRMED] 4. pip install tensorflow-gpu==2.10 [EXECUTE GPU TEST CODE] ==> CODE MUST RETURN GPU NUMBER > 0 [#CONFIRMED] 5. pip install tensorflow==2.10 [EXECUTE GPU TEST CODE] ==> CODE MUST RETURN GPU NUMBER > 0 [#CONFIRMED] (You may skip the first two test, but it helps ensure your environment is set up right)   TRIVIA: - There's no 2.11 version of Tensorflow GPU on pip as shown below: ERROR: Could not find a version that satisfies the requirement tensorflow-gpu==2.11 (from versions: 2.5.0, 2.5.1, 2.5.2, 2.5.3, 2.6.0, 2.6.1, 2.6.2, 2.6.3, 2.6.4, 2.6.5, 2.7.0rc0, 2.7.0rc1, 2.7.0, 2.7.1, 2.7.2, 2.7.3, 2.7.4, 2.8.0rc0, 2.8.0rc1, 2.8.0, 2.8.1, 2.8.2, 2.8.3, 2.8.4, 2.9.0rc0, 2.9.0rc1, 2.9.0rc2, 2.9.0, 2.9.1, 2.9.2, 2.9.3, 2.10.0rc0, 2.10.0rc1, 2.10.0rc2, 2.10.0rc3, 2.1...

Prof Ashari, Tangan Dingin Sang Rektor Visioner

Tulisan ini dipersembahkan kepada Prof  Dr Ir. Mochamad Ashari, M.Eng, IPU,  AEng. yang merupakan rektor ke-12 ITS, periode 2019-2024. Seluruh tulisan ini berupa pandangan saya pribadi, sebagai ucapan terima kasih, meski disajikan seakan penuh kritikan pada bagian awalnya. Pertama saya mengenal nama ini, saya ingat dari salah satu dosen saya sewaktu saya masih menempuh sarjana. Saya lupa persis kapan, tetapi saya diperkenalkan tentang bagaimana visionernya Prof Ashari dan sedikit cuplikan peran beliau membangun Telkom University di Bandung. Ya, sebelum beliau dinobatkan sebagai rektor, saya berpikir bahwa 'apabila beliau jadi, sepertinya akan berpotensi revolusioner, atau bakal agak ekstrem dalam kebijakan'. Bagi saya, itu cukup menarik, tetapi ada ketakutan di benak saya dengan potensi ekstrem kebijakan beliau. Kala beliau dinobatkan sebagai rektor terpilih, Prof Ashari langsung bergerak cepat yang tidak membutuhkan waktu lama untuk melihat langkah beliau. Saya masih ingat, d...

Kenapa Sekarang?

Years ago, I seek it. Dulu, aku berjuang untuk bisa melewati batas teman, trying to be someone that you consider as dearest. Yes, that's back then. As I said, had it been years ago, I would have straight out say YES out of sheer dumbness, or tenacity, or both. Tabun. I used to be full of desire to get you to acknowledge me, then. Sungguh lucu sekali, I would circumvent and try to just get any chance to meet with you. Aku menginginkan lebih, dulu. But no, it has always been someone else. Someone else get to be your priority, your attention. Berharap lebih adalah kesalahanku, dan aku selalu menganggapnya demikian. Why chase over the skies you cannot reach? I almost burned the entire bridge, truly. Only one more step and I know the entire relationship will turn into nothing more than smoldering ashes in the seas of lost time. You know, had you not talk to me within the short time of me settling my almost 9-years long illusion, perhaps the bridge had been burned completely, as I had wi...