Anda di halaman 1dari 31

Maju Mundur

Organisasi
Berkas Langsung
dan Metode
Hashing
Oleh :
Tri handoko, S.Kom.
Maju Mundur

Organisasi Berkas Langsung


• Dengan organisasi berkas langsung, untuk menemukan
suatu rekaman tidak melalui proses pencarian, namun bisa
langsung menuju alamat yang ditempati rekaman
• Pada awalnya, untuk tujuan tersebut maka digunakan cara
dengan menyimpan rekaman pada alamat yang sama
dengan nilai kunci rekaman tersebut
• Contohnya : rekaman dengan kunci 100 akan disimpan di
alamat 100
• Sehingga untuk menemukan sebuah rekaman cukup
melihat nilai kunci dan menuju ke alamat yang ditunjuk
oleh kunci rekaman tersebut
• Contoh : untuk membaca rekaman dengan kunci 55
langsung saja menuju alamat 55
 Dalam hal ini akan dibahas berbagai teknik yang dapat digunakan
sebagai alternatif dalam merancang sistem
 Khususnya dalam menentukan lokasi rekaman yang akan disimpan
serta pembacaan rekaman tersebut.
 Hal tersebut hanya mungkin terjadi bila bila kunci rekaman juga
merupakan alamat lokasi rekaman.
 Dengan demikian waktu pencarian akan sangat baik, yaitu 1 probe
untuk setiap rekaman yang dicari.
 Harus dimengerti harus tersedia 1 lokasi untuk setiap kemungkinan
kunci rekaman.
 Meskipun Universitas bisa memiliki puluhan ribu mhs,pastilah ada beberapa
bbrp nmr mhs yang kosong, karena beberapa alasan

misal : sudah lulus, mengundurkan diri, DO, cuti, dll…SEHINGGA TIDAK SEMUA
RUANG DIMANFAATKAN.

Ini merupakan contoh dari implementasi daripada Korespodensi Satu-satu


0 0

kunci Ruang alamat

9999.9999.99999 9999.9999.99999
Maju Mundur

Kerugian Korespondensi Satu-


Satu
• Dengan menerjemahkan langsung dari kunci
rekaman ke alamat rekaman, maka akan berlaku
suatu hubungan korespondensi satu-satu antara
kunci dengan alamat rekaman
• Hal ini menyebabkan harus disediakannya ruang
yang sangat besar untuk menampung setiap
kemungkinan nilai kunci yang ada
• Contohnya : untuk menyimpan data PNS yang
kuncinya adalah NIP (terdiri dari 9 digit)
dibutuhkan sebanyak satu milyar alamat, karena
kemungkinan yang dapat muncul dari kode 9
digit adalah mulai dari angka 000000000 hingga
999999999)
Maju Mundur

Kerugian Korespondensi Satu-


Satu
• Selain itu dari cara korespondensi satu-satu juga
akan mengakibatkan banyaknya pemborosan
ruang penyimpan, atau terjadi banyak alamat
yang tidak dipergunakan alias kosong
• Contohnya : Kode NIP diawali dengan tiga digit
kode departemen, yang tidak mungkin ada kode
departemen 000. Sehingga alamat 000000000
sampai 000999999 (sebanyak sejuta alamat)
tidak akan terpakai karena tidak ada rekaman
dengan NIP di antara range tersebut
Maju Mundur

Metode Hashing
• Untuk mengatasi kerugian yang timbul
dari cara korespondensi satu-satu yang
telah disebutkan itu, digunakan metode
lain yang dinamakan Metode Hashing
• Metode Hashing intinya digunakan untuk
mengurangi banyaknya ruang alamat yang
digunakan serta melakukan pemetaaan
(melakukan konversi) dari kunci rekaman
yang memiliki cakupan nilai yang luas ke
nilai alamat yang memiliki cakupan yang
telah dipersempit
Maju Mundur

Fungsi Hash
• Untuk melakukan pemetaan (konversi) dari kunci
rekaman ke alamat rekaman digunakan suatu
fungsi yang dinamakan Fungsi Hash
• Output dari fungsi hash dinamakan sebagai home
address dari rekaman yang kuncinya diproses
• Bentuk fungsi hash :

f (key)  address
Maju Mundur

Macam-Macam Fungsi Hash


• Fungsi Modulo
Home address dicari dengan cara mencari sisa
hasil bagi nilai kunci dengan suatu nilai tertentu

f (key)  key mod n


Dengan nilai n dapat berupa 2 kemungkinan,
yaitu :
– Banyaknya ruang alamat yang tersedia
– Bilangan prima terdekat yang berada di atas
nilai banyaknya data, setelah itu banyaknya
ruang alamat disesuaikan dengan n
Maju Mundur

Macam-Macam Fungsi Hash


• Metode Pemotongan
Home address dicari dengan memotong
nilai kunci ke jumlah digit tertentu yang
lebih pendek

Contoh : Nilai NIP yang tadinya 9 digit


dipotong menjadi hanya 3 digit dengan
mengambil 3 nomor terakhir. Misalnya :
NIP 132312090 akan memiliki home
address 090 atau 90
Maju Mundur

Macam-Macam Fungsi Hash


• Metode Pelipatan
Diandaikan kunci rekaman ditulis di atas
kertas dan dilipat ke dalam bagian-bagian
yang sama panjang, lalu setiap bagian
dijumlahkan
• Contoh, Nilai NIP yang 9 digit dibagi ke
dalam 3 bagian masing-masing 3 digit,
terus dilipat pada bagian-bagian tersebut.
NIP 132312090 akan menjadi 3 bagian
yaitu 132, 213, dan 090 yang dijumlahkan
dan menghasilkan 435 (dengan carrier)
atau 335 (tanpa carrier)
Maju Mundur

Macam-Macam Fungsi Hash


• Metode Pengkuadratan
Home address dicari dengan
mengkuadratkan setiap digit pembentuk
kunci, lalu semua hasilnya dijumlahkan

Contohnya : NIP 132312090 memiliki


home address =
12+32+22+32+12+22+02+92+02 =
1+9+4+9+1+4+0+81+0 = 104
Maju Mundur

Macam-Macam Fungsi Hash


• Penambahan Kode ASCII
Metode ini dapat digunakan jika kunci
bukan berupa kode numerik. Home
address dicari dengan menjumlahkan
kode ASCII setiap huruf pembentuk
kunci.

Contoh : Rekaman dengan kunci ADE


memiliki home address 65+68+69 = 192
Maju Mundur

Kriteria Fungsi Hash yang


Baik
• Dapat mendistribusikan setiap
rekaman secara merata, sehingga
dapat meminimalkan terjadinya
collision
• Dapat dieksekusi dengan efisien,
sehingga waktu tidak habis hanya
untuk menghitung home address
saja
Maju Mundur

Collision (Tabrakan)
• Dengan menggunakan metode hashing, maka
secara otomatis hubungan korespondensi satu-
satu antara kunci rekaman dengan alamat
rekaman menjadi hilang
• Selalu ada kemungkinan terjadinya peristiwa
dimana terdapat dua buah rekaman dengan
kunci yang berbeda namun memiliki home
address yang sama
• Kejadian ini dinamakan sebagai Collision atau
Tabrakan atau Tumbukan
Manajemen Kolisi
• Makin sedikit jumlah kolisi, maka makin baik
fungsi hashing tersebut karena makin sedikit
jumlah waktu yang diperlukan untuk melihat
tempat yang berbeda dalam menemukan
rekaman yang diinginkan.
• Beberapa cara untuk mengantisipasi kolisi adalah
mengganti fungsi hashing, atau
mengkombinasikan faktor-packing. Faktor
packing suatu berkas adalah perbandingan (atau
rasio) antara jumlah rekaman yang disimpan
dalam berkas dengan kapasitas berkas, atau
dapat dinyatakan sbb :
Jumlah rekaman yang disimpan
Factor packing 
Jumlah total lokasi penyimpanan
Resolusi Kolisi
• Yang menjadi tujuan utama metoda
resolusi adalah menempatkan rekaman
sinonim pada suatu lokasi yang
membutuhkan probes tambahan yang
minimum dari home-address rekaman
tersebut.
Synonim adalah dua atau lebih nilai key
yang berbeda pada hash ke home-address
yang sama
 Salah satu penyelesaian yang dapat
dilakukan adalah memberikan petunjuk
pada lokasi rekaman sinonim.
Maju Mundur

Collision Resolution
• Karena collision dapat dipastikan akan selalu
terjadi, maka dikatakan bahwa output dari fungsi
hash (home address) bukanlah merupakan
alamat unik yang pasti ditempati oleh rekaman
yang diproses, namun hanya berupa
kemungkinan alamat yang bisa ditempati
• Jika home address dari suatu rekaman ternyata
sudah ditempati rekaman lain, maka harus
dicarikan alamat lain untuk ditempati rekaman
tersebut
• Proses pencarian alamat lain ini dinamakan
sebagai Collision Resolution
Metode Coalesced Hashing
•Bila terjadi tumbukan dalam pemasukan kunci rekaman maka dicari
alamat yang paling besar/paling akhir
Contoh : misalkan akan dilakukan penyisipan rekaman-rekaman
dengan kunci 38,51,40,61,83,24, dan 60
Langkah I : Hash semua kunci dengan kunci modulus 11 (11 adalah kapasitas
berkas), maka akan dihasilkan :

Kunci Key mod 11


38 5

51 7
40 7

61 6
83 6
24 2
60 5
II. Masukkan ke alamat :

alamat Rekaman Medan Penghubung


0
1
2 24
3
4
5 38 8
6 61 9
7 51 10
8 60
9 83
10 40

Untuk membaca masing-masing rekaman 1 kali diperlukan rata-rata probe


1.4 diperoleh dari total jumlah probe dibagi jumlah rekaman.
Kunci Kunci mod 11 probe

38 5 1

51 7 1

40 7 2

61 6 1

83 6 2

24 2 1

60 5 2

Probe total 10
Jadi probe rata-rata 10/9

Rumus Probe rata-rata = probe total


jumlah rekaman
Maju Mundur

Metode Collision Resolution


• Metode Open Addressing
• Metode Chaining
• Metode Coalesced Hashing
• Metode Chained Progressive
Overflow(Linier Probing)
• Metode Bucket
Maju Mundur

Metode Open Addressing


(Metode Untuk mengatasi Kolisi
/tubrukan)

• Alamat alternatif dicari pada alamat-alamat


selanjutnya yang masih kosong
• Cara mencari alamat alternatif ada 2 macam,
yaitu :
– Linear Probing
pencarian dilakukan dengan jarak pencarian yang fix
(tetap), biasanya satu satu
– Quadratic Probing
pencarian dilakukan dengan jarak pencarian berubah
dengan perubahan yang tetap
Maju Mundur

Contoh Soal Linear Probing


Sesuai namanya, bila lokasi yang akan
ditempati telah terisi, maka dilihat lokasi
selanjutnya apakah msh belum terisi.
• Fungsi hash yang dipakai adalah :
f(key) = key mod 10
• Ruang alamat yang tersedia : 10 alamat
• Metode Collision Resolution yang dipakai
adalah Open Addressing dengan Linear
Probing jarak 3
• Urutan kunci yang masuk adalah : 20, 31,
33, 40, 10, 12, 30, dan 15
Maju Mundur

Jawaban Linear Probing


Key f Proses Addr 0 20
20 0 0 0 1 31
31 1 1 1 2 12
33 3 3 3 3 33
40 0 0, 3, 6 6 4
10 0 0, 3, 6, 9 9 5 30
12 2 2 2 6 40
30 0 0, 3, 6, 9, 2, 5 5 7
15 5 5, 8 8 8 15
Probe total = 19 9 10
Probe rata-rata = 19/8
Penggunaan Buckets
• Jmlh pengaksesan dapat direduksi dengan
meletakkan lebih dari satu rekaman pada
satu alamat penyimpan. Kemungkinan
tersebut dpt direalisir bila digunakan
sistem buckets disebut juga blok atau
halaman.
• Disediakan 2 alamat kunci yaitu kunci 1
dan kunci 2
• Sama seperti linier probing,bila
terjadi kolisi(tubrukan) jika lokasi
yang ditempati telah terisi,maka
dilihat lokasi selanjutnya apakah
belum terisi.
Contoh : rekaman-rekaman dengan kunci 38,51,40,61,83,24,60,20 dan 94

Alamat Kunci 1 Kunci 2 Kunci Home- Probe


Addres
0
38 5 1
1
51 7 1
2 24
40 7 1
3
61 6 1
4
83 6 1
5 38 60
24 2 1
6 61 83
60 5 1
7 51 40
20 9 1
8 94
94 6 3
9 20
10 Probe total 11
Membaca rekaman dalam buckets

Kunci Home Address Proses Probe


38 5 5 1
51 7 7 1
40 7 7 1
61 6 6 1
83 6 6 1
24 2 2 1
60 5 5 1
20 9 9 1
94 6 6,7,8 3

Probe total 11

Jadi probe rata-rata = 11/9


Maju Mundur

Metode Chaining
• Dengan metode ini, harus disediakan
ruang ekstra untuk menyimpan rekaman-
rekaman yang mengalami tabrakan
(terpisah dari tabel hash)
• Pada setiap ruang alamat yang ada, tidak
hanya menyimpan data rekaman namun
juga menyimpan suatu nilai yang
menunjukkan alamat rekaman selanjutnya
yang harusnya menempati ruang tersebut
• Setiap sinonim (nilai-nilai yang memiliki
home address sama) akan membentuk
rantai (chain)
Maju Mundur

Metode Coalesced Hashing


• Hampir sama dengan Chaining,
namun tidak menyediakan ruangan
ekstra
• Bila terjadi tumbukan/kolisi dalam
pemasukan alamat/rekaman, maka
cari lokasi paling akhir/memiliki
alamat paling besar
Maju Mundur

Metode Progressive
Overflow
• Metode Open Addressing dengan Linear Probing
disebut juga sebagai Metode Progressive
Overflow
• Metode ini jika didesain dengan salah bisa
menimbulkan infinite loop, dimana alamat
alternatif tidak dapat ditemukan karena
pencarian hanya memutar-mutar di tempat yang
sama
• Kelemahan ini dapat diatasi dengan cara :
– Jarak pencarian diambil suatu nilai yang bukan
merupakan faktor dari jumlah ruang alamat (n)
– Banyaknya ruang alamat diambil suatu bilangan
prima, misalkan ada 10 data, maka disediakan
ruang alamat sebanyak 11

Anda mungkin juga menyukai

  • Presentasi Jarkom2
    Presentasi Jarkom2
    Dokumen21 halaman
    Presentasi Jarkom2
    ayuza ira
    Belum ada peringkat
  • Makalah Generasi Komputer
    Makalah Generasi Komputer
    Dokumen8 halaman
    Makalah Generasi Komputer
    ayuza ira
    Belum ada peringkat
  • Makalah Generasi Komputer
    Makalah Generasi Komputer
    Dokumen8 halaman
    Makalah Generasi Komputer
    ayuza ira
    Belum ada peringkat
  • T. Klompok
    T. Klompok
    Dokumen31 halaman
    T. Klompok
    ayuza ira
    Belum ada peringkat
  • m6PerbandinganSO
    m6PerbandinganSO
    Dokumen15 halaman
    m6PerbandinganSO
    ayuza ira
    Belum ada peringkat
  • Uses Wincrt
    Uses Wincrt
    Dokumen2 halaman
    Uses Wincrt
    ayuza ira
    Belum ada peringkat
  • Oa 7
    Oa 7
    Dokumen11 halaman
    Oa 7
    ayuza ira
    Belum ada peringkat
  • Cpu 1
    Cpu 1
    Dokumen20 halaman
    Cpu 1
    ayuza ira
    Belum ada peringkat
  • Oa 1
    Oa 1
    Dokumen13 halaman
    Oa 1
    ayuza ira
    Belum ada peringkat
  • Oa 6
    Oa 6
    Dokumen17 halaman
    Oa 6
    ayuza ira
    Belum ada peringkat
  • Oa 3
    Oa 3
    Dokumen24 halaman
    Oa 3
    ayuza ira
    Belum ada peringkat
  • Oa 3
    Oa 3
    Dokumen24 halaman
    Oa 3
    ayuza ira
    Belum ada peringkat
  • Oa 4
    Oa 4
    Dokumen18 halaman
    Oa 4
    ayuza ira
    Belum ada peringkat
  • Oa 2
    Oa 2
    Dokumen17 halaman
    Oa 2
    ayuza ira
    Belum ada peringkat
  • Oa 5
    Oa 5
    Dokumen38 halaman
    Oa 5
    ayuza ira
    Belum ada peringkat
  • Oa 5
    Oa 5
    Dokumen38 halaman
    Oa 5
    ayuza ira
    Belum ada peringkat
  • Excel Tugas
    Excel Tugas
    Dokumen2 halaman
    Excel Tugas
    ayuza ira
    Belum ada peringkat
  • Oa 3
    Oa 3
    Dokumen24 halaman
    Oa 3
    ayuza ira
    Belum ada peringkat
  • Oa 4
    Oa 4
    Dokumen18 halaman
    Oa 4
    ayuza ira
    Belum ada peringkat
  • Modul Teknologi Jaringan Luas (Wan)
    Modul Teknologi Jaringan Luas (Wan)
    Dokumen139 halaman
    Modul Teknologi Jaringan Luas (Wan)
    ayuza ira
    Belum ada peringkat
  • Oa 1
    Oa 1
    Dokumen13 halaman
    Oa 1
    ayuza ira
    Belum ada peringkat
  • Oa 2
    Oa 2
    Dokumen17 halaman
    Oa 2
    ayuza ira
    Belum ada peringkat
  • Makalah Generasi Komputer
    Makalah Generasi Komputer
    Dokumen8 halaman
    Makalah Generasi Komputer
    ayuza ira
    Belum ada peringkat
  • Makalah Generasi Komputer
    Makalah Generasi Komputer
    Dokumen8 halaman
    Makalah Generasi Komputer
    ayuza ira
    Belum ada peringkat
  • Makalah Pendidikan Islam
    Makalah Pendidikan Islam
    Dokumen12 halaman
    Makalah Pendidikan Islam
    ayuza ira
    Belum ada peringkat
  • Presentasi Jarkom2
    Presentasi Jarkom2
    Dokumen21 halaman
    Presentasi Jarkom2
    ayuza ira
    Belum ada peringkat
  • RPP C34 XII TKJ (Teknologi Layanan Jaringan)
    RPP C34 XII TKJ (Teknologi Layanan Jaringan)
    Dokumen27 halaman
    RPP C34 XII TKJ (Teknologi Layanan Jaringan)
    ayuza ira
    Belum ada peringkat
  • RPP C34 XII TKJ (Teknologi Layanan Jaringan)
    RPP C34 XII TKJ (Teknologi Layanan Jaringan)
    Dokumen27 halaman
    RPP C34 XII TKJ (Teknologi Layanan Jaringan)
    ayuza ira
    Belum ada peringkat