Analisis Query Pencarian Data Menggunakan Algortima Hash Join Dan Nested Join

  

ANALISIS QUERY PENCARIAN DATA MENGGUNAKAN

ALGORTIMA HASH JOIN DAN NESTED JOIN

TESIS

JUNUS SINURAYA

117038031

  

PROGRAM STUDI MAGISTER (S2) TEKNIK INFORMATIKA

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

UNIVERSITAS SUMATERA UTARA

MEDAN

  

2013

  

ANALISIS QUERY PENCARIAN DATA MENGGUNAKAN

ALGORITMA HASH JOIN DAN NESTED JOIN

TESIS

Diajukan untuk melengkapi tugas dan memenuhi syarat memperoleh ijazah

Magister Teknik Informatika

  

JUNUS SINURAYA

117038031

PROGRAM STUDI MAGISTER (S2) TEKNIK INFORMATIKA

FAKULTAS ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

  

UNIVERSITAS SUMATERA UTARA

MEDAN

2013

  

PERSETUJUAN

  Judul tesis : ANALISIS QUERY PENCARIAN DATA

MENGGUNAKAN ALGORITMA HASH JOIN

  Kategori : - Nama Mahasiswa : JUNUS SINURAYA Nomor Induk Mahasiswa : 117038031 Program Studi : S2 TEKNIK INFORMATIKA Fakultas : ILMU KOMPUTER DAN TEKNOLOGI INFORMASI

  UNIVERSITAS SUMATERA UTARA Komisi Pembimbing : Pembimbing 2

  Pembimbing 1

  Dr.Erna Budhiarti Nababan,M.IT Prof. Dr. Muhammad Zarlis

  Diketahui/disetujui oleh Program Studi S2 Teknik Informatika Ketua,

  Prof. Dr. Muhammad Zarlis

  NIP. 19570701 198601 1 003

  

PERNYATAAN

ANALISIS QUERY PENCARIAN DATA MENGGUNAKAN ALGORITMA

HASH JOIN DAN NESTED JOIN

TESIS

  Saya mengakui bahwa tesis ini adalah hasil karya saya sendiri, kecuali beberapa kutipan dan ringkasan yang masing-masing telah disebutkan sumbernya.

  Medan, 28 Agustus 2013

JUNUS SINURAYA

  NIM. 117038013

  

PERNYATAAN PERSETUJUAN PUBLIKASI KARYA ILMIAH UNTUK

KEPENTINGAN AKADEMIS

  Sebagai sivitas akademika Universitas Sumatera Utara, Saya yang bertanda tangan di bawah ini : Nama : JUNUS SINURAYA NIM : 117038031 Program Studi : S2 TEKNIK INFORMATIKA Jenis Karya Ilmiah : TESIS

  Demi pengembangan ilmu pengetahuan, menyetujui untuk memberikan kepada Universitas Sumatera Utara Hak Bebas Royalti Non-Eksklusif (Non-Exclusive Royalty

  ) atas tesis saya yang berjudul :

  Free Right

ANALISIS QUERY PENCARIAN DATA MENGGUNAKAN ALGORITMA

HASH JOIN DAN NESTED JOIN

  Beserta perangkat yang ada (jika diperlukan). Dengan hak Bebas Royalti Non-Eksklusif ini, Universitas Sumatera Utara Berhak menyimpan, mengalih media, menformat, mengelola dalam bentuk database, merawat dan mempublikasikan tesis saya tanpa meminta izin dari saya selama tetap mencantumkan nama saya sebagai penulis dan sebagai pemegang dan/atau sebagai pemilik hak cipta. Demikian pernyataan ini dibuat dengan sebenarnya.

  Medan, Agustus 2013

  Junus Sinuraya

  NIM. 117038031

  Telah diuji pada Tanggal : 28 Agustus 2013 PANITIA PENGUJI TESIS Ketua : Prof. Dr. Muhammad Zarlis Anggota : 1. Dr.Erna Budhiarti Nababan,M.IT

   2. Dr. Poltak Sihombing,M.Kom

   3. Dr. Sutarman, M.Sc

   4. Dr. Zakarias Situmorang,MT

  

RIWAYAT HIDUP

DATA PRIBADI

  Nama Lengkap (berikut gelar) : Junus Sinuraya, ST Tempat dan Tangal Lahir : Guru benua, 10 Maret 1981 Alamat Rumah : Jl.B.Katamso Gg Perbatasan Medan Telepon/Fax/HP : 081370203112 Email : Junus.Sinuraya2012@gmail.com Instansi Tempat Bekerja : Politeknik LP3I Medan Alamat Kantor : Jl.SM.Raja/Jl.Gajah Mada Medan

DATA PENDIDIKAN

  SD : SD NEGERI GURU BENUA Tamat : 1991 SLTP : MTs NEGERI KABAN JAHE Tamat : 1994 SLTA : MA NEGERI 3 MEDAN Tamat : 2000 D3 : ILMU KOMPUTER FMIPA USU Tamat : 2003 S1 : T INFORMATIKA STT HARAPAN Tamat : 2010 S2 : TEKNIK INFORMATIKA USU Tamat : 2013

KATA PENGANTAR

  Puji Syukur Penulis ucapkan kepada Tuhan Yang Maha Esa atas segala limpahan dan karunia-Nya sehingga penulis dapat menyelesaikan tesis ini dengan judul :

  

ANALISIS QUERY PENCARIAN DATA MENGGUNAKAN ALGORITMA

HASH JOIN DAN NESTED JOIN.

  Dengan selesainya tesis ini, penulis menyampaikan terimakasih sebesar-besarnya kepada :

  1. Prof. Dr. dr. Syahril Pasaribu, D.T.M.&H., M.Sc. (C.T.M.), Sp.A.(K.) selaku Rektor Universitas Sumatera Utara yang telah memberikan kesempatan kepada penulis untuk mengikuti dan menyelesaikan pendidikan Program Magister.

  2. Prof. Dr. Muhammad Zarlis selaku Dekan FASILKOM Dan TI Universitas Sumatera Utara.

  3. M. Andri Budiman , ST., M.Comp Sc., M.E.M selaku Sekretaris Program Studi S2 Teknik Informatika.

  4. Prof. Dr. Muhammad Zarlis, selaku Pembimbing Utama yang telah banyak memberikan bimbingan dan arahan serta motivasi kepada penulis.

  5. Dr.Erna Budhiarti Nababan,M.IT, selaku Pembimbing Kedua yang telah banyak memberikan bimbingan dan arahan serta motivasi kepada penulis.

  6. Dr. Poltak Sihombing,M.Kom, selaku Pembanding yang telah banyak memberikan kritikan serta saran kepada penulis.

  7. Dr. Sutarman, M.Sc, selaku Pembanding yang telah banyak memberikan kritikan serta saran kepada penulis.

  8. Dr. Zakarias Situmorang, MT, selaku Pembanding yang telah banyak memberikan kritikan serta saran kepada penulis..

  9. Seluruh Staff Pengajar yang telah banyak memberikan ilmu pengetahuan selama masa perkuliahan serta Seluruh Staff Pegawai pada Program Studi S2 Teknik Informatika Universitas Sumatera Utara.

  Teristimewa kepada kepada kedua Orang Tuaku (Alm) Rakut Sinuraya, Bage. Br. Ginting dan Lina Br Pinem serta keluarga dipangkalan Susu dan Kaban Jahe yang telah memberikan doa dan dukungan. Ucapan terimaksih juga penulis ucapkan kepada sahabat-sahabat seperjuangan angkatan 2011 Program Studi S2 Teknik Informatika, serta ketua, rekan-rekan dan seluruh staff pegawai Politeknik LP3I Medan yang telah memberikan semangat kepada penulis.

  Akhir kata penulis hanya berdoa kepada Tuhan Yang Maha Esa semoga Tuhan memberikan limpahan karunia kepada semua pihak yang telah memberikan bantuan, perhatian, serta kerjasamanya kepada penulis dalam menyelesaikan tesis ini.

  Medan, 28 Agustus 2013

  Junus Sinuraya

  NIM. 117038031

  

ABSTRAK

Pengaksesan data atau pencarian data dengan menggunakan Query atau Join pada aplikasi

yang terhubung dengan sebuah database perlu memperhatikan ketepatgunaan implementasi

dari data itu sendiri serta waktu prosesnya. Ada banyak cara yang dapat dilakukan oleh

database manajemen sistem dalam memproses dan menghasilkan jawaban sebuah query.

Semua cara pada akhirnya akan menghasilkan jawaban (output) yang sama tetapi pasti

mempunyai harga yang berbeda-beda, seperti misalnya kecepatan waktu untuk merespon

data. Beberapa query yang sering digunakan untuk pemrosesan data yaitu Query Hash Join

dan Query Nested Join, kedua query memiliki algoritma yang berbeda tapi menghasilkan

output yang sama. Dengan menggunakan aplikasi yang dirancang menggunakan Microsoft

Visual Studi 2010 dan Microsoft SQL Server 2008 berbasis jaringan untuk melakukan

pengujian kedua algoritma atau query dengan paramter running time atau kecepatan waktu

merespon data. Pengujian dilakukan dengan jumlah tabel yang dihubungkan dan jumlah

baris/record. Hasil dari penelitian adalah kecepatan waktu query untuk merespon data untuk

jumlah data yang kecil query hash join lebih baik sedangkan jumlah data yang besar query

nested join lebih baik.

  Kata Kunci : Query, Hash Join, Nested Join.

  

QUERY ANALISIS DATA SEARCH USING, ALGORITMA HASH

JOINAND NESTED JOIN

ABSTRACT

  Data access or data retrieval using Query or Join in applications that connect to a database need to consider the efficiency of implementation of the data itself and the process time. There are many ways that can be done by the database management system to process and produce answers a query. All the way in the end will produce an answer (output) the same but certainly have different prices, such as the speed of time to respond to the data Some frequently used queries for data processing, namely Query Join and Hash Join Nested Queries, both have a query algorithms different but produces the same output. By using an application designed using Microsoft Visual Studies 2010 and Microsoft SQL Server 2008-based network to perform a second test or query algorithm with running time parameter or speed response time data. Testing is done with a number of tables are connected and the number of rows / records. Results of the study is to speed query response time data for the small amount of data that a better hash join query large amounts of data while the nested join query better Key Wors : Query, Hash Join, Nested Join.

DAFTAR ISI

  Halaman HALAMAN JUDUL PENGESAHAN PERNYATAAN ORISINALITAS PERSETUJUAN PUBLIKASI PANITIA PENGUJI RIWAYAT HIDUP KATA PENGANTAR i

  ABSTRAK iii

  ABSTRACT iv

  DAFTAR ISI v

  DAFTAR GAMBAR ix

  DAFTAR TABEL x

BAB 1 PENDAHULUAN

  1.2 Rumusan Masalah

  2.2.2 Konsep Model Relasional

  1.1 Latar Belakang

  8

  2.4 Konsep SQL

  8

  2.3 Basis Data Terdistribusi

  7

  2.2.4 Istilah-istilah Basis data Relasional

  6

  2.2.3 Fungsi-Fungsi Basis Data Relasional

  6

  5

  2

  2.2.1 Konsep Basis Data Relasional

  5

  2.2 Sistem Basis Data

  1

  2.1 Pengertian DBMS

  3 BAB 2 LANDASAN TEORI

  1.5 Manfaat Penelitian

  3

  1.4 Tujuan Penelitian

  3

  1.3 Batasan Masalah

  5

  2.4.1 Data Manipulation

  8

  2.4.2 Konsep Query

  12

  2.5 Optimasi Query

  13

  2.6 Algoritma Hash Join

  13

  2.7 Algoritma Nested Join

  14

  2.7 RisetTerkait

  15

  2.8 Perbedaan dengan Riset lain

  17

  2.9 Kontribusi Riset

  17 BAB 3 METODOLOGI PENELITIAN

  3.1 Deskripsi Basis Data

  19

  3.1.1 Struktur Fisik Database

  19

  3.1.2 Relasi Antar Tabel

  22

  3.1.3 Skenario Pengujian Query

  23

  3.2 Query Algoritma

  26

  3.2.1 Query Algoritma Hash Join

  26

  3.2.2 Query Algoritma Nested Join

  29

  3.3 Parameter Pengujian

  34

  3.3.1 Rancangan Aplikasi

  34

  3.3.2 Alat Penelitian

  35 BAB 4 HASIL DAN PEMBAHASAN

  4.1 Hasil Penelitian

  36

  4.2 Hasil Pengujian Query

  36

  4.2.1 Hasil Pengujian 1 Relasi

  37

  4.2.2 Hasil Pengujian 2 Relasi

  39

  4.2.3 Hasil Pengujian 3 Relasi

  41

  4.2.4 Hasil Pengujian 4 Relasi

  43

  4.2.5 Hasil Pengujian 5 Relasi

  44

  4.3 Pembahasan Penelitian

  46

  4.3.1 Analisis Hasil Pengujian 1 Relasi

  46

  4.3.2 Analisis Hasil Pengujian 2 Relasi

  49

  4.3.3 Analisis Hasil Pengujian 3 Relasi

  52

  4.3.4 Analisis Hasil Pengujian 4 Relasi

  55

  4.3.5 Analisis Hasil Pengujian 5 Relasi

  57

BAB 5 KESIMPULAN DAN SARAN

  5.1 Kesimpulan

  60

  5.2 Saran

  60 DAFTAR PUSTAKA

  DAFTAR GAMBAR

  50

  4.12 Display Estimated Execution Plan query hash join 1 relasi

  47

  4.13 Display Estimated Execution Plan query nested join 1 relasi

  48

  4.14 Display Estimated Execution Plan query nested join Correlated 1 relasi

  48

  4.15 Relasi antar 3 tabel

  49

  4.16 Display Estimated Execution Plan query hash join 1 relasi

  50

  4.17 Display Estimated Execution Plan query nested join Scalar 2 relasi

  4.18 Display Estimated Execution Plan query nested join correlated 2 relasi

  4.11 Relasi antara 2 tabel

  51

  4.19 Relasi antar 4 tabel

  52

  4.20 Display Estimated Execution Plan query hash join 3 relasi

  53

  4.21 Display Estimated Execution Plan query Nested join Scalar 3 relasi

  53

  4.22 Display Estimated Execution Plan query Nested join Correlated 3 relasi

  54

  4.23 Relasi antar 5 tabel

  55

  4.24 Relasi antar 6 tabel

  47

  46

  Nomor Gambar

  4.3 Perbandingan Running Time Query 2 Relasi

  Judul Halaman

  3.1 Relasi Antar Tabel

  23

  3.2 Flowchart Skenario Pengujian Query

  25

  3.18 Rancangan Aplikasi

  34

  4.1 Perbandingan Running Time 1 Relasi

  37

  4.2 Grafik Perbandingan Running Time Query 1 Relasi

  38

  39

  4.10 Grafik Perbandingan Pengujian Running Time Query 5 Relasi

  4.4 Grafik Perbandingan Running Time Query 2 Relasi

  40

  4.5 Perbandingan Running Time Query 3 Relasi

  41

  4.6 Grafik Perbandingan Query Pencarian Data 3 Relasi

  42

  4.7 Perbandingan Query PencarianData Relasi 3 Tabel

  43

  4.8 Grafik Perbandingan Query Pencarian Data Relasi 3 Tabel

  44

  4.9 Hasil Perbandingan Pengujian Running Time Query 5 Relasi

  45

  57

  DAFTAR TABEL

  3.4 Tabel TBMOby

  3.8 Tabel Group dan Uji Penelitian

  24

  3.7 Tahapan Relasi

  22

  3.6 Tabel TBMSubRoby

  21

  3.5 Tabel TBMRoby

  21

  20

  Nomor Tabel

  3.3 Tabel TBMJen

  20

  3.2 Tabel TBMKEl

  19

  15

  3.1 Tabel Riset Terkait Tabel TBMStruk

  2.1

  Judul Halaman

  24