Anda di halaman 1dari 9

Praktikum 8

Mekanisme Metode Partition pada Hive

1. Tujuan

Setelah menyelesaikan jobsheet ini, praktikan diharapkan mampu:


1. Membuat dan memahami mekaniseme metode partition pada Hive.
2. Memahami performansi response time query metode partition.

2. Dasar Teori

Hive menggantikan teknik pemrosesan tradisional RDBMS yang tidak dapat


digunakan pada big data. Hive adalah sebuah solusi platform open-source data
warehousing untuk pengguna mampu mengelola big data yang ada pada Hadoop
Distributed File System (HDFS). Data warehousing merupakan sistem yang
mengambil (retrieve) dan mengkonsolidasikan (consolidate) data secara periodik
(periodically) dari sumber data ke dalam penyimpanan dimensional dan ternormalisasi.
Hive sebagai data warehousing yang andal saat ini menyederhanakan pengelolaan
dataset pada Hadoop cluster karena mendukung bahasa yang familiar dengan
Structured Query Language (SQL) yang disebut dengan istilah HiveQL. Hive menjadi
sangat populer di kalangan non-programmer karena menghilangkan kebutuhan untuk
menulis program Mapreduce yang kompleks (Mariam, 2019).
Eksekusi query yang sederhana pada Hive membutuhkan membaca seluruh
dataset meskipun dengan filter clause Where. Hal ini menjadi bottlenect untuk
menjalankan Mapreduce job pada file dataset yang besar jika pada kondisi default. Isu
ini bisa diselesaikan dengan mengimplementasi metode partition. Hive mengatur tabel
dalam bentuk partition untuk mengelompokkan data yang sama menjadi beberapa
bagian berdasarkan atribut atau partition key. Tiap tabel pada Hive bisa menerapkan
satu atau beberapa partition key untuk mengelompokkan data (DataFlair, 2020).
Dengan metode partition, file dataset dipecah menjadi beberapa bagian dan
dimasukkan kedalam folder berdasarkan value atribut tertentu pada HDFS.

Gambar Metode Partition pada Hive

Hasil dari proses pembuatan tabel partition akan tersimpan dalam bentuk sub-
direktori dibawah direktori tabel di sistem penyimpanan HDFS. Tiap partition yang
dibuat terkait dengan folder di HDFS dan merupakan bagian metadata. Jumlah sub-
direktori yang akan terbuat berdasarkan unique value dari partition key. Tiap unique
value pada partition key mendefiniskan sebuah partition dalam tabel. Dan tiap isian
sub-direktori akan berisikan file data didalamnya.
Sebelum melakukan pembuatan model tabel dengan metode partition,
konfigurasi parameter yang diberikan dibawah harus di set pada Hive shell :
set hive.exec.dynamic.partition = true;
set hive.exec.dynamic.partition.mode = nonstrict;

3. Daftar Alat dan Bahan


1. Personal Computer 1 unit
2. Software (Sistem Operasi Windows, Sistem Operasi Ubuntu Server, Oracle
VirtualBox, Winscp, Putty, Java versi 8, Hadoop 2.8.0, Hive 1.2.1)
3. Dataset file userid5.csv
4. Keselematan Kerja
1. Sebelum melakukan langkah percobaan, pastikan kabel power terhubung ke
Power Supply.
2. Matikan komputer setelah praktikum selesai.

5. Langkah Kerja
Untuk melihat mekanisme metode partition dari Hive pada Hadoop, hal yang
dilakukan yakni mempersiapkan file dataset yang akan di eksekusi.
1. Transfer file dataset dari client ke local master dengan menggunakan WinsCp
Setelah file masuk di lokal master, maka tahapan selanjutnya mengimport dataset
dari lokal master ke dalam HDFS. Pastikan lokasi file yang diterima dari client,
dalam percobaan ini, file disimpan dalam folder /home/hduser/.

2. Jalankan Hadoop pada Master dengan mengetik perintah start-all.sh.

3. Dataset kemudian disalin kedalam sistem Hadoop cluster yang telah dibuat dengan
menjalankan perintah berikut pada komputer master:
hadoop fs -put /home/hduser/userid5.csv /data

Pada praktikum ini, Gambar diatas dilakukan penyalinan file dataset kedalam
folder “/data” yang telah dibuat di HDFS dengan cara hadoop fs mkdir /data.
4. Jika dilakukan pengaksesan pada alamat URL master (192.168.11.3) :
http://192.168.11.3:50070/explorer.html#/data, akan muncul tampilan pada
website seperti pada Gambar dibawah:

Gambar isi folder “/data” pada HDFS

Pada Gambar diatas merupakan file dataset yang telah berhasil dilakukan

penyalinan ke sistem Hadoop cluster. Oleh karena dataset telah disalin pada sistem

Hadoop cluster, selanjutnya dataset ini sudah bisa dikelola oleh sistem Hive

sebagai data warehousing.

5. Jalankan Hive pada Master dengan mengetik perintah:


hive;

Gambar Menjalankan Hive


6. Buat database menggunakan statement berikut:
create database movielens;
Kemudian untuk menggunakan database, dilakukan dengan mengetik perintah use
movielens;
7. Buat Tabel Default dengan perintah:
CREATE TABLE userid5 (
userid INT,
movieid INT,
rating INT,
tstamp STRING,
title STRING,
genres STRING,
gender STRING,
age INT,
occupation INT,
zipcode STRING
) ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
COLLECTION ITEMS TERMINATED BY "|"
STORED AS TEXTFILE;

Gambar Buat Tabel Default


Pada Gambar diatas telah dibuat tabel default dengan nama tabel “userid5” yang
terdiri atas 10 atribut dengan nama atribut yaitu userid, movieid, userid, tstamp,
title, genres, gender, age, occupation, dan zipcode. Keberhasilan dalam membuat
sebuah tabel adalah dibuktikan dengan konfirmasi “OK”.

8. Lakukan Load Data pada Tabel Default


load data inpath '/data/userid5.csv' into table userid5;

Gambar load data ke tabel default


Load data pada Gambar dilakukan untuk menginput data kedalam tabel dimana
data yang diinput berasal dari sebuah file dataset yang ada di folder “/data” pada
HDFS. Keberhasilan dalam melakukan load data menuju ke tabel userid5 adalah
dibuktikan dengan konfirmasi “OK”.

9. Buat Tabel partition dengan perintah:


CREATE TABLE userid5p (
movieid INT,
rating INT,
tstamp STRING,
title STRING,
genres STRING,
gender STRING,
age INT,
occupation INT,
zipcode STRING
) PARTITIONED BY (userid INT)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
COLLECTION ITEMS TERMINATED BY "|"
STORED AS TEXTFILE;

Gambar Buat Tabel Partition


Pada Gambar diatas dibuat tabel partition dengan nama tabel “userid5p” yang
terdiri atas 9 atribut dengan nama atribut yaitu movieid, rating, tstamp, title, genres,
gender, age, occupation, dan zipcode. Atribut partition key yang digunakan adalah
atribut “userid” yang dijadikan dasar untuk mengatur data. Keberhasilan dalam
membuat sebuah tabel adalah dibuktikan dengan konfirmasi “OK”.

10. Lakukan set parameter sebelum menerapkan metode partition:


set hive.exec.dynamic.partition = true;
set hive.exec.dynamic.partition.mode = nonstrict;

11. Lakukan insert data ke tabel partition:


INSERT INTO TABLE userid5p PARTITION(userid)
SELECT movieid,rating,tstamp,title,genres,gender,age,occupation,zipcode,userid
from userid5;
Gambar Insert Data kedalam Tabel Partition
Keberhasilan dalam melakukan insert data ke tabel partition adalah dibuktikan
dengan konfirmasi “OK”. Selain itu, bisa juga dibuktikan pada tampilan website HDFS
berikut:
12. Lakukan pengujian performansi response time query dengan mencoba
mengeksekusi query pada tabel default sebanyak lima kali percobaan kemudian
mencoba mengeksekusi query pada tabel partition sebanyak lima kali percobaan.
Pada praktikum ini, menggunakan query filter where dibawah ini:

select count(*) from userid5 where userid=1; (default)


select count(*) from userid5p where userid=1; (partition)
select count(*) from userid5 where userid=2; (default)
select count(*) from userid5p where userid=2; (partition)
select count(*) from userid5 where userid=3; (default)
select count(*) from userid5p where userid=3; (partition)
select count(*) from userid5 where userid=4; (default)
select count(*) from userid5p where userid=4; (partition)
select count(*) from userid5 where userid=5; (default)
select count(*) from userid5p where userid=5; (partition)

Anda mungkin juga menyukai