Database System 8 Hash-Based Indexing

dokumen-dokumen yang mirip
Collision Resolution

Organisasi File Semester Ganjil 2014 Fak. Teknik Jurusan Teknik Informatika. Caca E. Supriana, S.Si.,MT. Si

Organisasi File Multi Key y( (Index)

ORGANISASI FILE. Alif Finandhita, S.Kom

ORGANISASI BERKAS RELATIF

Bab 1 Pengantar Struktur Data

BEBERAPA METODE PENYELESAIAN COLLISION PADA ORGANISASI BERKAS SECARA HASHING

ORGANISASI BERKAS RELATIF

ORGANISASI FILE BASIS DATA I - DIAN DHARMAYANTI

sistem basis data ti ti ukdw Indexing Materi Minggu ke-10 Teknik Informatika Universitas Kristen Duta Wacana Yogyakarta 04/07/13 budi susanto 1

Sekumpulan field yang bergambung sebagai sebuah unit yang memiliki ukuran tertentu

TUGAS BASIS DATA FILE ORGANIZATION IF2250 SEMESTER GENAP 2013/2014

BAB 4 ORGANISASI BERKAS RELATIF

BAB 2 LANDASAN TEORI. 2.1 Pengertian Text Mining

List Linear (Linked List) Farah Zakiyah Rahmanti 2014

SEARCHING (PENCARIAN)

IMPLEMENTASI PERANGKAT LUNAK DENGAN PENERAPAN PENCARIAN RELATIF (HASH SEARCH)

ORGANISASI BERKAS INDEX SEQUENTIAL STRUKTUR & ORGANISASI DATA 1

Topic Complexity of Hashing Search & Binary Search Tree Algorithm

Fungsi Hash dan Metode Collision Resolution

STRUKTUR DATA. Literatur

Operating System. File System. Fak. Teknik Jurusan Teknik Informatika Universitas Pasundan. Dosen : Caca E. Supriana, S.Si

FILE BERKAS LANGSUNG. Rudi Susanto

BAB IX LINKED LIST (SENARAI BERANTAI)

Garis-Garis Besar Program Pembelajaran Berbasis Kompetensi

SILABUS MATAKULIAH. Indikator Pokok Bahasan/Materi Aktivitas Pembelajaran

3. Apa kekurangan paging sederhana dibandingkan dengan paging pada virtual memory?

File Sequensial Berindeks

Materi 7 ORGANISASI BERKAS RELATIF

Buku Ajar Struktur Data

File Organization. IKI20410 Basis Data Aniati Murni Fakultas Ilmu Komputer Universitas Indonesia

OPTIMALITAS CELLAR DALAM COALESCED HASHING UNTUK MENDUKUNG PROSES SEARCHING PADA BASIS DATA

ORGANISASI BERKAS RELATIF STRUKTUR & ORGANISASI DATA 1

FILE SEKUEN BERINDEKS

DASAR DASAR MICROSOFT ACCESS

Sistem Basis Data BAB 8 MODEL DATA DAN ENTITY RELATIONSHIP MODEL. Komponen model data dapat dikategorikan menjadi 3 (tiga) bagian yang meliputi:

JURNAL ILMIAH FIFO P-ISSN / E-ISSN

Pengenalan Trie dan Aplikasinya

ORGANISASI BERKAS INDEKS SEKUENSIAL

P14 Hash Function TIF42/SIF42

Praktikum Algoritma dan Struktur Data 2010

bergantung pada keberadaan entitas lainnya[9]. relasi yang merekatkan dua entitas adalah bersifat

BAB IX LINKED LIST (SENARAI BERANTAI)

Data Structure STRUKTUR DATA QUEUE. Chapter 3. Dahlia Widhyaestoeti, S.Kom

ORGANISASI FILE. Pendahuluan Sasaran Manajemen File Fungsi Manajemen File Arsitektur File Performansi File Parameter Performansi File Struktur File

Pengenalan Algoritma & Struktur Data. Pertemuan ke-1

GARIS-GARIS BESAR PROGRAM PENGAJARAN PROGRAM STUDI : S1 KOMPUTERISASI AKUNTANSI Semester : 2

Ahmad Zidni, S.T. SMK Gondang 2011

Data Structure SORTING. Chapter 11. Dahlia Widhyaestoeti, S.Kom

ADI RACHMANTO, S.KOM., M.KOM REKAYASA DESAIN SYSTEM PROGRAM STUDI AKUNTANSI UNIKOM

Jadi satu simpul di double linked list adalah sebagai berikut : Info. Kiri. Kanan

Aplikasi Pohon dalam Pencarian dan Penempatan Buku di Perpustakaan

Struktur file dasar. Pembahasan struktur file meliputi :

ARSITEKTUR DAN ORGANISASI KOMPUTER

=il= ''#i&kwi. ' "*-ttt-{ut%:* lj %"q:dlrulrfi iil fl RENCANA PROGRAM DAN KEGIATAN PEMBELAJARAN SEMESTER (RPKPS) STRUKTUR DATA DISUSUN OLEH:

GARIS-GARIS BESAR PROGRAM PENGAJARAN PROGRAM STUDI : S1 SISTEM INFORMASI Semester : 2

1. Address Binding. Sebuah program ditempatkan dalam disk dalam bentuk berkas biner Sebelum dieksekusi, sebuah program harus ditempatkan di memori.

Jurnal Ilmiah ILKOM Volume 8 Nomor 3 (Desember 2016)

Database System 4 Normalization

IKI 20100: Struktur Data & Algoritma

SQL Data Definition Language (DDL)

MANAJEMEN MEMORI SISTEM OPERASI

Lab. Teknik Informatika Struktur Data 1

TUGAS 4 Makalah Organisasi Berkas Indexed Sequential

Single Linked List (1)

Struktur Data dan Analisa Algoritma

BAB III ANALISA DAN DESAIN SISTEM

Struktur Data. PDE - Struktur Data 1

BAB III ANALISA DAN DESAIN SISTEM

STMIK AMIKOM YOGYAKARTA

Program Studi Pendidikan Ilmu Komputer Fakultas Ilmu Pendidikan Universitas Ubudiyah Indonesia

APLIKASI KOMPUTER. Pokok Bahasan : MS. Access 2010 (Bagian 1) Anggun Puspita Dewi, S.Kom., MM. Modul ke: Fakultas MKCU

Penerapan Teknik Binary Search Tree Sebagai Alternatif Penyimpanan Data

4. SISTEM OPERASI TERDISTRIBUSI

A. TUJUAN PEMBELAJARAN

Pengertian Berkas Sequential Adalah merupakan cara yang paling dasar untuk mengorganisasikan kumpulan record-record dalam sebuah berkas.

FILE SEKUEN. Karakteristik file sekuen

ORGANISASI FILE. PDF Compressor Pro. Sistem Berkas HO-04 Organisasi File Sudirman S.Kom

GARIS-GARIS BESAR PROGRAM PENGAJARAN PROGRAM STUDI : DIII MANAJEMEN INFORMATIKA Semester : 2

BAB III ANALISA DAN DESAIN SISTEM

POHON CARI BINER (Binary Search Tree)

STRUKTUR DATA TIPE DATA DNA-STRUKTURDATA 1

Buku Ajar Struktur Data

Bab 10: Antar Muka Sistem File. Konsep File

BAB III QUEUE (ANTRIAN)

GARIS-GARIS BESAR PROGRAM PENGAJARAN (GBPP)

KONSEP DASAR SISTEM BERKAS. Nila Feby Puspitasari

Organisasi Sequential. Rudi Susanto

SATUAN ACARA PERKULIAHAN MATA KULIAH SISTEM BERKAS KODE / SKS : KK /3 SKS

BAB II LANDASAN TEORI

BAB 2 LANDASAN TEORI Pengertian DBMS (Database Management System)

IMPLEMENTASI ALGORITMA HASH BASED TERHADAP ATURAN ASOSIASI UNTUK MENENTUKAN FREQUENT ITEMSET STUDY KASUS RUMAH MAKAN SEAFOOD KITA

ALGORITMA DAN STRUKTUR DATA

FILE BERINDEKS MAJEMUK

PEMERIKSAAN KEANGGOTAAN ELEMEN PADA HIMPUNAN DENGAN BLOOM FILTER ADI RISWANTO

Cursor. M. Saefudin SKom, MMSI

1. Mempersiapkan data yang akan dikelola dalam DBMS 2. Memperoleh efisiensi dalam pemrosesan data

DESAIN DATABASE. Pertemuan 06 3 SKS

Modul ke: Aplikasi Komputer 13TEKNIK. Pengantar Ms. Access Lanjutan. Fakultas. Hendri, ST. MT. Program Studi

Transkripsi:

Database System 8 Hash-Based Indexing Dahlia Widhyaestoeti, S.Kom Powered by www.redoffice.com

Pustaka Sistem Manajemen Database Edisi ketiga, Raghu Ramakrishnan & Johannes Gehrke, McGrawHill 3

Hash-Based Indexing Hash-Based Indexing adalah organisasi file yang baik digunakan pada equality selection. Pemikiran dasarnya adalah menggunakan fungsi Hashing, yang memetakan nilai dalam field search ke dalam rentang dari bucket number untuk menemukan halaman di mana terdapat entri data yang di inginkan. Skema dalam Hash-Based Indexing : Static Hashing Extendible Hashing Linear Hashing

Static Hashing h(key) mod N key h 0 N-1 Primary bucket pages Overflow pages Halaman yang berisi data dapat dianggap sebagai kumpulan bucket, dengan sebuah halaman primer dan mungkin sebuah halaman overflow tambahan per bucket. Sebuah file terdiri dari bucket 0 sampai N-1, dengan satu halaman primer per bucket pada awalnya. Bucket berisi entri data. Jika kita mempunyai N bucket, yang diberi nomor 0 sampai N-1, fungsi hash h dari bentuk h(nilai) = (a*nilai+b) berjalan dengan baik dalam praktiknya (bucket teridentifikasi adalah h (nilai) mod N). Konstanta a dan b dapat dipilih untuk men-tune fungsi hash.

Extendible Hashing Dengan mempertimbangkan file Static Hashing: Jika harus menyisipkan entri baru ke dalam bucket yang penuh, maka perlu menambah halaman overflow. Jika tidak ingin menambahkan halaman overflow, solusinya adalah mereorganisasi file pada titik ini dengan menggandakan jumlah bucket dan meredistribusi entri pada pada kumpulan bucket baru. Solusi menimbulkan masalah : Seluruh file harus dibaca Dua kali sebanyak halaman yang harus ditulis untuk melakukan reorganisasi. Cara mengatasi : Gunakan direktori dari pointer pada bucket Gandakan ukuran dari jumlah bucket dengan hanya menggandakan direktori dan memisahkan hanya bucket yang overflow

Extendible Hashing Direktori terdiri dari array yang besarnya 4, yang masingmasing elemennya menjadi pointer pada bucket. Untuk menemukan entri data r, aplikasikan fungsi hash pada field search (Global Depth) dan mengambil bits terakhir dari representasi biner. Jika h(r) = 5 = 101, berada pada bucket 01. Untuk menyisipkan entri data, lakukan pencarian untuk menemukan bucket yang tepat. Jika bucket penuh maka split (dibagi alokasikan pada halaman baru) LOCAL DEPTH GLOBAL DEPTH 0 0 0 1 1 0 1 1 D I R E C T O R Y 4 * 1 * 3 * 1 6 * 1 * 5 * 1 * 1 0 * 1 5 * 7 * 1 9 * 1 3 * B u c k e t A Data entri r Maka h(r)=3 B u c k e t B B u c k e t C B u c k e t D D A T A P A G E S

Extendible Hashing Contoh : sisipkan 13* dan 0* LOCAL DEPTH GLOBAL DEPTH 3 * 1 6 * B u c k e t A LOCAL DEPTH GLOBAL DEPTH 3 3 * 1 6 * B u c k e t A 0 0 0 1 1 0 1 1 1 * 5 * 1 * 1 3 * 1 0 * B u c k e t B B u c k e t C 0 0 0 0 0 1 0 1 0 0 1 1 3 1 * 5 * 1 * 1 3 * 1 0 * B u c k e t B B u c k e t C D I R E C T O R Y 1 5 * 7 * 1 9 * B u c k e t D 1 0 0 1 0 1 1 1 0 1 5 * 7 * 1 9 * B u c k e t D 4 * 1 * 0 * B u c k e t A ( ` s p l i t i m a g e ' o f B u c k e t A ) 1 1 1 D I R E C T O R Y 3 4 * 1 * 0 * B u c k e t A ( ` s p l i t i m a g e ' o f B u c k e t A )

Extendible Hashing Hal penting yang muncul adalah Apakah memisahkan bucket mengharuskan penggandaan direktori? LOCAL DEPTH GLOBAL DEPTH 0 0 0 0 0 1 0 1 0 0 1 1 1 0 0 1 0 1 1 1 0 1 1 1 3 D I R E C T O R Y 3 3 1 * 9 * 1 0 * 1 5 * 7 * 3 3 * 1 9 * 4 * 1 * 0 * 3 1 6 * 5 * 1 * 1 3 * B u c k e t A B u c k e t B B u c k e t C B u c k e t D B u c k e t A ( ` s p l i t i m a g e ' o f B u c k e t A ) B u c k e t B ( ` s p l i t i m a g e ' o f B u c k e t B ) Jika kita meyisipkan 9*? Bucket B penuh Pisahkan Bucket dan gunakan elemen direktori 1 dan 101 Bucket Split tidak perlu menggandakan direktori Jika semua bucket telah terisi penuh, maka baru gandakan direktori.

Linear Hashing Adalah teknik dinamik hashing Mengatur penyisipan dan penghapusan Berbeda dengan static hashing, Linear Hashing tidak memerlukan direktori Fleksibilitas dengan waktu dari bucket split Skema menggunakan famili dari fungsi hash h 0,h 1,h,.. dengan sifat bahwa setiap rentang fungsi sebesar kali rentang sebelumnya. Jika h memetakan entri data ke dalam satu M bucket, maka h i+1 memetakan entri data ke dalam salah satu dari M bucket. Misal sejumlah N dari bucket sebesar 3, h 0 adalah h mod 3 (rentang 0 sampai 31).

Linear Hashing Bucket untuk di split Next Bucket yang ada pada permulaan putaran : Ini adalah rentang h level Split bucket dalam putaran ini Jika h level (nilai search key) adalah rentang ini, harus menggunakan h level+1 (nilai search key) untuk memutuskan jika entri adalah dalam bucket split image. Bucket 'split image': tercipta (melalui mensplit bucket lain) dalam putaran ini.

Linear Hashing h 1 0 1 h 0 01 Level=0, N=4 PRIMARY Next=0 3* 44* 36* 9* 5* 5* with h(r)=5 Counter level digunakan untuk mengindikasi jumlah putaran terbaru dan diawali dengan 0. Bucket yang akan dipisahkan ditandai dengan Next dan pada awalnya adalah bucket 0 (bucket pertama). Jumlah bucket pada permulaan putaran 0, ditandai N 0, menjadi N. 010 10 14* 18* 10* 30* Primary bucket page 011 11 31* 35* 7* 11* Informasi ini hanya untuk ilustrasi Isi aktual file linear hashed

Linear Hashing h 1 0 1 010 h 0 01 10 Level=0 3* PRIMARY Next=1 9* 5* 5* 14* 18* 10* 30* OVERFLOW Penyisipan Entri 43* Membentuk halaman overflow. Kapanpun pemisahan terpicu, bucket Next akan dipisahkan, dan fungsi hash h level+1 mendistribusi entri diantara bucket ini. Setelah memisahkan bucket, nilai next ditambah 1. 011 11 31* 35* 7* 11* 43* 1 44* 36*

Linear Hashing Level=0 h 1 h 0 PRIMARY OVERFLOW 0 1 01 3* Next=1 9* 5* 5* Sisipkan record r dengan h(r) = 37 010 10 14* 18* 10* 30* 011 11 31* 35* 7* 11* 43* 1 44* 36*

Linear Hashing h 1 h 0 Level=0 PRIMARY OVERFLOW 0 3* 1 010 01 10 9* 5* Next= 14* 18* 10* 30* Sisipkan record r dengan h(r) = 9 011 1 11 31* 35* 7* 11* 43* 44* 36* 101 01 5* 37* 9*

Linear Hashing h 1 h 0 Level=0 PRIMARY OVERFLOW 0 1 010 011 01 10 11 3* 9* 5* 66* 18* 10* 34* Next=3 31* 35* 7* 11* 43* Sisipkan record r dengan h(r) =, 66 dan 34 1 101 01 44* 36* 5* 37* 9* Sisipkan record r dengan h(r) = 50? 110 10 14* 30* *

Linear Hashing h 1 0 h 0 Next=0 PRIMARY 3* OVERFLOW 1 01 9* 5* 010 10 66* 18* 10* 34* 50* 011 11 43* 35* 11* 1 44* 36* 101 11 5* 37* 9* 110 10 14* 30* * 111 11 31* 7*

Thank you!