Anda di halaman 1dari 29

Sistem Berkas

I.

PENDAHULUAN

Sistem Berkas I. PENDAHULUAN Data merupakan asset penting dalam organisa si. Berbagai pendapat yang berkaitan dengan

Data merupakan asset penting dalam organisasi. Berbagai pendapat yang berkaitan dengan

sistem computer yang fontemporer adalah : perangkat keras memiliki umur yang singkat,

perangkat lunak memiliki umur yang lebih panjang, sedangkan data memiliki umur yang

paling panjang.

Disk pada umumnya adalah peralatan yang diakses secara random yang memungkinkan

pembacaan kembali sejumlah rekaman dengan waktu pembacaan yang tidak bergantung

pada posisi dimana rekaman disimpan.

Hal yang paling penting berkaitan dengan rekaman dan berkas adalah kinerja berkas.

Pertama, bisa diasumsikan bahwa berkas memiliki sifat dinamis. Sekali berkas diciptakan,

berkas tersebut akan di-update secara berkelanjutan; rekaman baru ditambahkan dan

rekaman yang sudah ada dimodifikasi atau dihapus. Asumsi berikutnya adalah rekaman

disimpan hanya dengan tujuan untuk dibaca kembali pada masa mendatang.

Pengertian Berkas dan Akses

Sistem berkas atau pengarsipan adalah :kembali pada masa mendatang. Pengertian Berkas dan Akses Suatu sistem untuk mengetahui bagaimana cara me nyimpan

Suatu sistem untuk mengetahui bagaimana cara menyimpan data dari suatu file tertentu dan organisasi file yang digunakan.

Sistem akses adalah :suatu file tertentu dan organisasi file yang digunakan. Cara untuk mengambil informasi dari suatu file. Jadi

Cara untuk mengambil informasi dari suatu file.

Jadi pengarsipan dan akses adalah :

suatu

dari suatu file. Jadi pengarsipan dan akses adalah : suatu “Cara kembali.” untuk membentuk arsip /

“Cara

kembali.”

untuk

membentuk

arsip

/

file

dan

cara

pencarian

record-recordnya

1

Prind Triajeng Pungkasanti, S.Kom.

Sistem Berkas

“Sistem berkas dan akses adalah sistem pengoperasian, pengelolaan dan penyimpanan data pada alat penyimpanan eksterna l dengan organisasi file tertentu.” pengoperasian, pengelolaan dan penyimpanan data pada alat penyimpanan eksternal dengan organisasi file tertentu.”

“Teknik yang digunakan untuk menggambarkan dan menyimpan record pada file disebut organisasi file.” disebut organisasi file.”

Pengarsipan dan akses berhubungan dengan :dan menyimpan record pada file disebut organisasi file.” a. Insert : Menyisipkan data baru at au

a. Insert : Menyisipkan data baru atau tambahan kedalan tumpukan data lama.

b. Up-date : Mengubah data lama dengan data baru, perubahan ini bias sebagian atau keseluruhan.

c. Reorganisasi : Penyusunan kembali record-record dari suatu file (untuk jumlah data tetap).

Algoritma

Algoritma untuk pengolahan data selalu dikaitkan dengan struktur untuk mengorganisasikan data. Terdapat dua bentuk algoritma, yaitu : bentuk kalimat-kalimat sederhana seperti resep masakan dalam buku-buku tata boga, dan yang kedua, dalam bentuk pseudo-code.

Contoh algoritma yang berbentuk kalimat untuk menghitung total bayar penjualan : untuk menghitung total bayar penjualan :

1. Mulai.

2. Definisi tipe-tipe data untuk ; H, J, dan Total = Integer.

3. Masukkan harga barang.

4. Masukkan jumlah barang.

5. Hitung Total = H x J.

6. Tampilkan Total Bayar.

7. Selesai.

2

Prind Triajeng Pungkasanti, S.Kom.

Sistem Berkas

Contoh algoritma yang berbentuk pseudo-code dengan menggunakan pascal : udo-code dengan menggunakan pascal :

Var H, J, Total : Integer; Begin

:’); Readln (H);

Write (‘Masukkan Jumlah :’); Readln (J); Total := H*J;

Write (‘Masukkan Harga

Write (‘Total Bayar Readln End.

Media Penyimpanan

:’, Total);

Agar suatu data dan berkas dapat diakses, maka dibutuhkan sebuah media penyimpanan. Media seperti pita magnetis hanya dapat digunakan secara sekuensial, sementara disk magnetis memiliki kemampuan akses baik secara sekuensial, random, maupun langsung. Teknologi media penyimpanan dapat dikelompokkan menjadi dua tipe, yaitu :

1. Penyimpanan primer (primary memory / storage).

2. Penyimpanan pendukung (auxiliary memory / storage) atau penyimpanan sekunder (secondary storage).

Ada beberapa faktor yang berkaitan dengan keberadaan tipe-tipe media penyimpanan, yaitu:

Tidak semua informasi dapat ditampung dalam penyimpanan primer berkecepatan tinggi. tinggi.

Keterbatasan secara fisik dan ekonomi.ditampung dalam penyimpanan primer berkecepatan tinggi. • Fisik : besarnya kapasitas penyi mpanan primer

Fisik : besarnya kapasitas penyimpanan primer ditentukan oleh skema pengamatan oleh sistem komputer.

Ekonomis : harga murah, tetapi masih belum menyamai penyimpanan sekunder.

3

Prind Triajeng Pungkasanti, S.Kom.

Sistem Berkas

Penyimpanan Primer : akses sangat cepat, tetapi harga per bitnya jauh lebih mahal dibandingkan penyimpanan sekunder dan kapasitasnya lebih kecil.

Penyimpanan Sekunder : kecepatan akses lebih murah, kapasitas lebih besar tetapi lebih lambat.

1. Penyimpanan Primer Penyimpanan primer biasanya diimplementasikan dengan menggunakan teknologi semikonduktor. Teknologi lain yang digunakan sebagai penyimpanan primer adalah komponen yang diberi muatan, seperti kapasitor. Property dari penyimpanan primer antara lain adalah dapat diakses dengan cepat, harga mahal, dan kapasitas yang kecil, namun penyimpanan primer memiliki keistimewaan yaitu, sembarang alamat dapat diakses dari sembarang alamat lainnya dalam waktu yang konstan.

2. Penyimpanan Sekunder Akses terhadap informasi yang disimpan dalam penyimpanan primerbersifat elektronis dan terjadi hamir mendekati kecepatan sinar. Sementara itu, penyimpanan sekunder bersifat nonvolatile (tidak membutuhkan tenaga listrik) dan tetap menyimpan data meskipun computer dalam keadaan OFF.

Media penyimpanan ini dibedakan menjadi 3, yaitu :

Mechanical Storage (penyimpanan mekanis). (penyimpanan mekanis).

Magnetic Tape (tape magnetic). (tape magnetic).

Magnetic Disk (disk magnetic). (disk magnetic).

Penyimpanan mekanis, jenisnya seperti punch card (Hollerith Card) dan paper tape. Teknologi card digunakan awal tahun 1890, digunakan untuk menyusun table dalam perhitungan komersil. Karakteristik dari penyimpanan mekanis adalah :

Penulisan data dilakukan pelubangan kartu untuk menyandikan satu karakter per kolom.

4

Prind Triajeng Pungkasanti, S.Kom.

Sistem Berkas

Paper tape digunakan untuk menyimpan pesan komunikasi dan untuk merekam baris data dari instrument pengukur. Hanya sekali digunakan untuk perekaman data. Secara ekonomis mahal.

Posisi card adalah 80 kolom dan 12 bit.

Tape magnetic merupakan media penyimpanan utama pada pemakaian computer generasi pertama tahun 1950an. Media ini dibuat dari satu pita tape tipis dengan material lapisan magnetic yang sangat halus yang digunakan untuk merekam data

analog atau data digital. Media ini digunakan untuk mengakses secara serial. Seperti pada kaset tape, informasi yang disimpan bisa diproses kembali atau diulang kembali setiap waktu, informasi tersebut juga dapat dihapus atau digunakan kembali. Karakteristik dari media ini adalah :

1. Lebar pita 0,5 inchi.

2. Tebal pitanya 0,15 inchi dengan panjang 300, 600, 1200, 2400 feet.

3. Kapasitas dinyatakan dengan bpi (bit per inchi) yang diukur setiap track.

Disk magnetic merupakan piranti masukkan / keluaranyang paling banyak digunakan saat ini. Kelebihan dari tape magnetic yang lain adalah mudah dipelihara, tidak terlalu sensitive serta organisasi file yang digunakan adalah organisasi langsung. Contoh, disket.

5

Prind Triajeng Pungkasanti, S.Kom.

Sistem Berkas

II. ORGANISASI FILE

Sistem Berkas II. ORGANISASI FILE Pengertian Organisasi Berkas Organisasi berkas adalah teknik yang di gunakan untuk

Pengertian Organisasi Berkas

Organisasi berkas adalah teknik yang digunakan untuk menyimpan dan mengakses file/ berkas. Fungsi dari mengorganisasikan berkas adalah agar data yang disimpan dalam memori/ storage menjadi terstruktur sehingga efisien dan efektif bila dilakukan pengaksesan. System operasi menyediakan system berkas agar data mudah disimpan, diletakkan, dan diambil kembali dengan mudah. Terdapat dua masalah desain dalam membangun suatu system berkas, yaitu :

Definisi dari system berkas, Mencakup definisi berkas da n atributnya, operasi ke berk as, dan struktur direktori dalam mengorganisasi Mencakup definisi berkas dan atributnya, operasi ke berkas, dan struktur direktori dalam mengorganisasikan berkas-berkas.

Membuat algoritma dan struktur data, Yang memetakan strukturlogikal system berkas ketempat penyimpanan sekunder. Yang memetakan strukturlogikal system berkas ketempat penyimpanan sekunder.

Pada dasarnya system berkas tersusun atas beberapa tingkatan, yaitu (dari yang terendah) :

I/O Control, terdiri atas driver device dan interrupt handler. Driver device adalah perantara komunikasi antara system operasi dengan perangkat keras. Basic File System, diperlukan untuk mengeluarkan perintah generic ke device driver untuk baca dan tulis pada suatu blok dalam disk. File – Organization Module, informasi tentang alamat logika dan alamat fisik dari system berkas tersebut. Modul ini juga mengatur sisa disk dengan melacak alamat yang belum dialokasikan dan menyediakan alamat tersebut saat user ingin menulis berkas dalam disk. Logical File System, tingkat ini berisi informasi tentang symbol nama berkas, struktur dari direktori, dan proteksi dan sekuriti dari berkas.

6

Prind Triajeng Pungkasanti, S.Kom.

Sistem Berkas

Application Program

Sistem Berkas Application Program Logical File System File – Organization Module Basic File System I /

Logical File System

Sistem Berkas Application Program Logical File System File – Organization Module Basic File System I /

File – Organization Module

Program Logical File System File – Organization Module Basic File System I / O Control Device

Basic File System

File System File – Organization Module Basic File System I / O Control Device Asumsi Organisasi

I / O Control

File – Organization Module Basic File System I / O Control Device Asumsi Organisasi Berkas Dalam

Device

Asumsi Organisasi Berkas

Dalam organisasi berkas, digunakan beberapa asumsi seperti :

Divisualisasi sebagai array yang berisi data.

Memori berukuran P mempunyai nilai 0 … P-1, disajikan dengan M (0 … P-1).

Data yang disimpan berupa record dalam basis data.

Setiap record diwakili dengan kunci.

Aspek Organisasi Berkas

Aspek dalam organisasi berkas terdiri dari :

1. Ukuran Memori, yaitu menentukan prediksi / perkiraan besarnya ukuran memori.

2. Metode Simpanan, metode yang digunakan untuk menyimpan data dalam penyimpanan / storage.

3. Metode Cari, metode yang digunakan untuk mengakses data dalam storage.

7

Prind Triajeng Pungkasanti, S.Kom.

Sistem Berkas

Penentuan Besar Memori

Aspek organisasi berkas yang pertama adalah penentuan besar atau ukuran memori. Hal ini disebabkan agar ukuran memori yang digunakan atau disediakan oleh system menjadi efisien dan efektif. Kriteria yang harus diperhatikan adalah :

Penentuan ukuran memori jika dimisalkan banyak data yang disimpan adalah n maka :

Banyak data yang harus disimpan diketahui/ diprediksi.

Wajib

: p > n

Pilihan

: - p bilangan prima terdekat dari n.

Contoh :

- Faktor muatan yaitu : f = n/p, dengan n = volume data, p = volume memori.

Jika terdapat 50 kursi, dengan penumpang 40, maka :

F = n/p => 40/50 = 80%

1.

Jika jumlah tiket yang terjual 30, sedangkan jumlah tiket yang disediakan 70, berapa % tiket tersebut terjual?

2.

Suatu flash disk telah digunakan sebanyak 30% dari kapasitas sebesar 256.

3.

Berapa besar kapasitas sebuah pesawat terbang apabila jumlah penumpang 81 orang, merupakan 75% dari kapasitas yang seharusnya.

4.

Berapa % tempat yang digunakan untuk beasiswa, dimana sudah 215 orang yang mendaftar, sedangkan beasiswa digunakan untuk 264 orang.

8

Prind Triajeng Pungkasanti, S.Kom.

Sistem Berkas

III. BERKAS SECARA SEKUENSIAL

Sistem Berkas III. BERKAS SECARA SEKUENSIAL Berkas Sekuensial Penyimpanan berkas secara sekuensial dilakukan secara

Berkas Sekuensial

Berkas III. BERKAS SECARA SEKUENSIAL Berkas Sekuensial Penyimpanan berkas secara sekuensial dilakukan secara

Penyimpanan berkas secara sekuensial dilakukan secara berurutan. Data yang disimpan,

diurutkan berdasarkan urutan pemasukan data (urut berdasarkan nomor record). Melakukan akses secara sekuensial, berarti proses akan berpindah dari satu record ke record berikutnya secara langsung. Dalam berkas sekuensial, rekaman yang ke i + 1 akan diletakkan tepat sesudah rekaman ke i, sebagai contoh :

1

2

3

i

i + 1

i + 2

……

n + 1

n

Gambar 3.1. Susunan berkas sekuensial

Berikut ini merupakan contoh penyimpanan dan pengaksesan berkas sekuensial, dengan mengambil contoh nama mahasiswa, nim dan jurusan masing-masing.

Tabel 3.1. Berkas mahasiswa

Nama

Nim

Jurusan

Mieke

0124

Sistem Informasi

Indra P.

0110

Teknik Informatika

Yuliana

0134

Teknik Informatika

Ardhi

0257

Sistem Informasi

Mira

0549

Teknik Informatika

Dian W.

0212

Sistem Informasi

Angky

0145

Sistem Informasi

Bila diinginkan nama mahasiswa Yuliana untuk ditampilkan, maka sistem akan membaca rekaman dengan nama mahasiswa = Yuliana. Maka diperlukan probe (akses terhadap lokasi yang berbeda) sejumlah 3 kali. Dalam metode sekuensial, agar kinerja pembacaan rekaman lebih baik, maka rekaman- rekaman tersebut harus diurutkan berdasrkan kunci tertentu. Dalam contoh ini, yang

9

Prind Triajeng Pungkasanti, S.Kom.

Sistem Berkas

digunakan dalam bentuk pengurutan adalah nim. Karena nim bersifat unik. Sehingga tabel mahasiswa menjadi :

Tabel 3.2. Berkas mahasiswa urut

Nama

Nim

Jurusan

Indra P.

0110

Teknik Informatika

Mieke

0124

Sistem Informasi

Yuliana

0134

Teknik Informatika

Angky

0145

Sistem Informasi

Dian W.

0212

Sistem Informasi

Ardhi

0257

Sistem Informasi

Mira

0549

Teknik Informatika

Dari tabel 3.2 terlihat bahwa data telah diurutkan dari kecil ke besar berdasarkan nim. Dengan demikian, hanya n/2 rekaman yang perlu diperiksa untuk menentukan rekaman yang diinginkan. Karena kalau pembacaan diteruskan sampai melewati posisi dimana rekaman seharusnya berlokasi (karena sudah diurutkan), maka proses pencarian dihentikan. Namun teknik ini dirasa kurang memuaskan, untuk berkas dengan jumlah rekaman yang sangat besar.

Pencarian Biner

Jumlah probe (yang diperlukan untuk membaca sebuah rekaman) pada sebuah berkas dengan rekaman yang sudah diurutkan, dapat diperkecil dengan menggunakan teknik pencarian biner.

Jika

diperkecil dengan menggunakan teknik pencarian biner. Jika kunci c a r i < kunci t e

kunci cari < kunci tengah, maka

bagian berkas dimulai dari kunci tengah sampai akhir berkas

dimulai dari kunci t e n g a h sampai akhir berkas dieliminasi. Sebaiknya, jika kunci

dieliminasi. Sebaiknya, jika

kunci cari > kunci tengah

, maka

bagian berkas dimulai dari depan

t e n g a h , maka bagian berkas dimulai dari depan sampai dengan kunci

sampai dengan kunci tengah dieliminasi. Dengan mengulang proses perbandingan terhadap

rekaman tengah, maka lokasi rekaman yang diinginkan akan ditemukan atau diketahui bahwa rekaman yang diinginkan tersebut tidak berada dalam berkas.

10

Prind Triajeng Pungkasanti, S.Kom.

Sistem Berkas

Pencarian Interpolasi

Berbeda dengan

pencarian biner yang memilih posisi rekaman yang akan diperbandingkan

berikutnya sebagai tepat berada di tengah sisa berkas yang belum diperiksa, pencarian

interpolasi menentukan posisi yang akan diperbandingkan berikutnya berdasarkan posisi

yang akan di perbandingkan berikutnya berdasarkan posisi yang diestimasi dari sisa rekaman yang belu m diperiksa.

yang diestimasi dari sisa rekaman yang belum diperiksa. Pencarian

dari sisa rekaman yang belu m diperiksa. Pencarian mencari posisi TENGAH, namun me nentukan posisi berikutnya.

mencari posisi TENGAH, namun menentukan posisi berikutnya.

interpolasi tidak

Meskipun pencarian interpolasi memiliki kerumitan dalam perhitungan, namun pencarian interpolasi memiliki unjuk kerja yang baik untuk rekaman-rekaman yang memiliki kunci yang mendekati seragam.

Latihan Soal

1. Simpanlah data 40, 5, 20, 50, 100 berikut ini ke dalam memori komputer.

2. Carilah data 40, 50, dan 100 dengan menggunakan metode sekuensial serta hitung pula rata-ratanya.

3. Carilah data 40, 50, dan 100 dengan menggunakan metode biner serta hitung pula rata- ratanya.

4. Carilah data 40, 50, dan 100 dengan menggunakan metode interpolasi serta hitung pula rata-ratanya.

Jawaban no. 1 Seperti yang telah dijelaskan pada awal pembahasan bab 3, data 40, 5, 20, 50, dan 100 disimpan ke dalam memori komputer secara berurutan/sekuensial (gambar 3.1) sehingga, dalam visualisasi komputer menjadi :

40

5

20

50

100

Sebelum diurutkan

menjadi : 40 5 20 50 100 Sebelum diurutkan 5 20 40 50 100 Setelah diurutkan

5

20

40

50

100

Setelah diurutkan

Untuk menjawab soal no 2, 3 dan 4, maka yang digunakan adalah tabel setelah diurutkan. Sehingga visualisasi tabel menjadi seperti di bawah ini (Anda boleh menggunakan visualisasi memori secara horisontal atau vertikal), dengan address dimulai dari 0!.

11

Prind Triajeng Pungkasanti, S.Kom.

Sistem Berkas

Data

5

20

40

50

100

0

1

2

3

4

Jawaban no. 2 (Metode Sekuensial)

50 100 0 1 2 3 4 Jawaban no. 2 (Metode Sekuensial) Address dimulai dari 0

Address dimulai dari 0

Data

Langkah

Address

Data M

Data : M (Address)

Keterangan

(Address)

40

1

0

5

> 40

: 5

>40 1 0 5 > 40 : 5

 

2

1

20

> 40

: 20

>  2 1 20 > 40 : 20

 

3

2

40

= 40

: 40

=  3 2 40 = 40 : 40

50

1

0

5

> 50

: 5

>50 1 0 5 > 50 : 5

 

2

1

20

> 50

: 20

>  2 1 20 > 50 : 20

 

3

2

40

> 50

: 40

>  3 2 40 > 50 : 40

 

4

3

50

= 50

: 50

=  4 3 50 = 50 : 50

100

1

0

5

> 100

: 5

>100 1 0 5 > 100 : 5

 

2

1

20

> 100

: 20

>  2 1 20 > 100 : 20

 

3

2

40

> 100

: 40

>  3 2 40 > 100 : 40

 

4

3

50

> 100

: 50

>  4 3 50 > 100 : 50

 

5

4

100

= 100

: 100

=  5 4 100 = 100 : 100

>   5 4 100 = 100 : 100 = Rata-rata = langkah 40 + langkah

Rata-rata

= langkah 40 + langkah 50 + langkah 60

= 3 + 4 + 5

3

3

= 4 langkah.

Prind Triajeng Pungkasanti, S.Kom.

12

Sistem Berkas

Jawaban no. 3 (Metode Biner)

Data

Langkah

Lower

Upper

M (t)

Data : M (Address)

Keterangan

40

1

 

0

4

40

 

= : 40

40

== : 40 40

50

1

 

0

4

40

 

50

> : 40

>50 > : 40

 

2

2

+ 1= 3

4

50

 

= : 50

50

== : 50 50

100

1

 

0

4

40

 

> : 40

100

>> : 40 100

 

2

2

+ 1 = 3

4

50

 

> : 50

100

>> : 50 100

 

3

3

+ 1 = 4

4

100

 

= : 100

100

== : 100 100

Rata-rata = 1 + 2 + 3   = 2 langkah.  

Rata-rata

= 1 + 2 + 3

 

= 2 langkah.

 

3

Keterangan :

1. Lower adalah address/alamat terendah dalam memori.

2. Upper adalah address/alamat tertinggi dalam memori.

3. Tengah adalah alamat tengah dalam memori, diperoleh dari Lower + Upper.

2

4. Jawaban di atas menggunakan pembulatan ke bawah/round down, tapi bisa juga menggunakan pembulatan ke atas/round up (tergantung konsekuensi Anda!!).

5. Untuk mempermudah dalam pencarian, ingatlah dengan aturan pencarian biner pada subbab 3.2, yaitu mengeliminasi kunci-kunci yang tidak terpakai, terutama untuk menentukan kunci lower, upper dan tengah.

13

Prind Triajeng Pungkasanti, S.Kom.

Sistem Berkas

Contoh :

Untuk mencari 50, mengapa lower yang ditambah 1 ( 2 + 1 = 3 ) ?

5

20

40

50

100

0

1

2

3

4

1 ( 2 + 1 = 3 ) ? 5 20 40 50 100 0 1

Agar tidak membingungkan, maka address 0 dan 1 dieliminasi atau tidak diperhatikan, sehingga kunci tengah ( 2 ) menjadi lower dengan ditambah 1.

Setelah ditemukan kunci tengah adalah pada address 2, maka untuk mendekati data 50, address harus digeser ke atas (karena 50 terletak pada address 3). Sehingga upper tetap 4 sedangkan lower adalah berasal dari kunci tengah ( 2 ) ditambah 1 (ditambah 1 atau dikurangi 1, sebab metode simpan menggunakan sekuensial).

Jawaban no. 4 (Metode Interpolasi)

Data

Langkah

Lower

Upper

 

Tengah

M (t)

Data :

 

M (t)

40

1

0

4

0

+ (40 – 5) * (4 – 0) = 1,5 = 2 (100 – 5)

40

=

50

1

0

4

0

+ (50 – 5) * (4 – 0) = 1,9 = 2 (100 – 5)

40

>

 

2

2+ 1= 3

4

3

+ (50 – 5) * (4 – 3) = 3 (100 – 5)

50

=

100

1

0

4

0

+ (100 – 5) * (4 – 0) = 4 (100 – 5)

100

=

Rata-rata = 1 + 2 + 1 = 1,3 langkah.  

Rata-rata

= 1 + 2 + 1

= 1,3 langkah.

 

3

14

Prind Triajeng Pungkasanti, S.Kom.

Sistem Berkas

Keterangan :

1. Tengah

= lower + ( data – M ( lower )) * ( upper – lower ) M ( upper) – M (lower)

2. Pembulatan yang digunakan untuk jawaban tersebut adalah pembulatan ke atas.

Soal

1. Simpanlah data 56, 5, 76, 11, 34, 37, 98, 2, 84, 7, 101, 63 berikut ini ke dalam memori

komputer.

2. Carilah data 101, 5, dan 11 dengan menggunakan metode sekuensial serta hitung pula

rata-ratanya!.

3. Carilah data 101, 5, dan 11 dengan menggunakan metode biner serta hitung pula rata-

ratanya!.

4. Carilah data 101, 5, dan 11 dengan menggunakan metode interpolasi serta hitung pula

rata-ratanya!.

15

Prind Triajeng Pungkasanti, S.Kom.

Sistem Berkas

IV. ORGANISASI BERKAS LANGSUNG

Sistem Berkas IV. ORGANISASI BERKAS LANGSUNG Metode pencarian biner maupun interpolasi masih belum dapat mengimbangi

Metode pencarian biner maupun interpolasi masih belum dapat mengimbangi ketidaksabaran manusia terhadap penyediaan informasi yang cepat dan akurat. Perkembangan media perekaman data yang dapat menampung volume data dalam jumlah yang besar harus diimbangi dengan peningkatan teknik pencarian kembali data yang tersimpan. Dalam bab ini akan membahas menganai berbagai teknik yang digunakan untuk merancang suatu sistem yang berhubungan dengan penentuan lokasi rekaman yang akan disimpan serta pembacaan kembali rekaman tersebut.

Kunci Sebagai Alat Rekaman yang Unik

Untuk mendapatkan rekaman yang diasosiasikan dengan suatu kunci primer, sangat diharapkan agar proses langsung menuju ke alamat tempat rekaman dengan kunci tertentu disimpan. Hal tersebut hanya mungkin terjadi bila kunci rekaman juga merupakan alat lokasi rekaman. Keuntungan dari sistem ini adalah waktu yang dibutuhkan untuk mencari data menjadi cepat, namun kerugiannya volume ruang penyimpanan yang dibutuhkan sangat besar. Hal ini terjadi karena harus tersedia 1 lokasi untuk setiap kemungkinan rekaman kunci.

Menentukan Alamat dengan Konversi Kunci

Salah satu usaha yang dilakukan dalam meningkatkan kinerja dalam mengantisipasi kerugian yang ditimbulkan oleh subbab 4.1 adalah dengan melakukan konversi terhadap kunci rekaman menjadi satu alamat yang unik (Wahyuni, 2005). Tidak sebanding antara kunci actual dengan jumlah ruang kunci yang harus disediakan, merupakan alasan untuk menilai bahwa subbab 4.1 tidak efisien, sehingga diperlukan sebuah fungsi untuk mengatasi keadaan tersebut. Fungsi ini diberi nama fungsi hash. Keluaran dari fungsi hashing bukan lagi alamat yang unik, melainkan kemungkinan bagi alamat yang di hash. Alamat untuk menempatkan rekaman yang diperoleh dari fungsi hash

16

Prind Triajeng Pungkasanti, S.Kom.

Sistem Berkas

disebut home address. Diharapkan fungsi tersebut menghasilkan kemungkinan alamat yang:

1. Mampu mendistribusikan kunci secara merata ke dalam cakupan alamat. Maksud dari pendistribusian dalah untuk mengurangi terjadinya kolisi (tabrakan) yang disebabkan hasil hashing dua kunci rekaman yang berbeda menunjukkan alamat yang sama persis.

2. Dapat dieksekusi dengan efisien, dimaksudkan agar waktu pembacaan menjadi ditekan seminimal mungkin.

Dalam bab ini diasumsikan bahwa satu lokasi memiliki kapasitas satu rekaman. Sedangkan untuk mekanisme resolusi kolisi (untuk mencegah terjadinya kolisi) akan dibahas pada bab tersendiri. Berikut ini beberapa fungsi hash, dimulai dari yang paling sering digunakan :

a. Hashing dengan kunci modulus N

F ( kunci ) = kunci mod N

Fungsi ini merupakan fungsi yang paling popular dan peling sering digunakan. Pada rumus tersebut, N merupakan ukuran table atau berkas. Hasil fungsi modulus adalah sisa pembagian kunci dengan N. Keuntungan fungsi ini adalah hanya menghasilkan nilai dalam rentang ruang alamat 0 sampai dengan N-1.

b. Hashing dengan kunci modulus P

F ( kunci ) = kunci mod P

Fungsi hashing ini merupakan variasi dari fungsi hashing kunci modulus N, dengan P merupakan bilangan prima terkecil yang lebih besar atau sama dengan N, dan N adalah ukuran table. P ini kemudian akan menggantikan n sebagai ukuran table yang baru.

c. Hashing dengan pemotongan Hashing dengan pemotongan tidak mempunyai rumus yang pasti, pemotongan dilakukan pada bagian yang memiliki kemiripan saja. Dimisalkan nim seseorang yang terdiri dari 8 digit dengan 4 digit pertama menunjukkan jurusan dan tahun akademik,

17

Prind Triajeng Pungkasanti, S.Kom.

Sistem Berkas

sedangkan 4 digit terakhir adalah nomor yang membedakan mahasiswa yang satu dengan mahasiswa yang lain. Maka akan lebih midah untuk menjadi kunci hashing pemotongan adalah bila dari digit tersebut yang dipotong adalah 4 digit pertama, sebab kemungkinan kemiripannya lebih besar daripada 4 digit terakhir.

Contoh Soal

1. Berapa N bila 25 mod N = 1 ? Diperoleh dari 25 dibagi 24 menghasilkan 1 dengan sisa 1.

Diperoleh dari 25 dibagi 24 me nghasilkan 1 dengan sisa 1. 2. Berapa N bila 30

2. Berapa N bila 30 mod N = 2 ? Diperoleh dari 30 dibagi 14 menghasilkan 2 dengan sisa 2.

3. Berapakah hasil dari 100 mod 9 ? Diperoleh dari 100 dibagi 9 menghasilkan 11 dengan sisa 1.

4. Berapakah hasil dari 5 mod 2 ? Diperoleh dari 5 dibagi 2 menghasilkan 2 dengan sisa 1.

5. Bila N = 21, maka 30 mod P = ? Diperoleh dari 30 dibagi 21 menghasilkan 1 dengan sisa 9.

6. Bila N = 5, maka 25 mod P = ? Diperoleh dari 25 dibagi 5 menghasilkan 5 dengan sisa 0.

N = 5, maka 25 mod P = ? Diperoleh dari 25 dibagi 5 me nghasilkan
N = 5, maka 25 mod P = ? Diperoleh dari 25 dibagi 5 me nghasilkan
N = 5, maka 25 mod P = ? Diperoleh dari 25 dibagi 5 me nghasilkan
N = 5, maka 25 mod P = ? Diperoleh dari 25 dibagi 5 me nghasilkan
N = 5, maka 25 mod P = ? Diperoleh dari 25 dibagi 5 me nghasilkan

Prind Triajeng Pungkasanti, S.Kom.

18

Sistem Berkas

V. MANAJEMEN KOLISI

Sistem Berkas V. MANAJEMEN KOLISI Latar Belakang Mekanisme manajemen kolisi diperlukan untuk me ngatasi terjadinya jumlah

Latar Belakang

Mekanisme manajemen kolisi diperlukan untuk mengatasi terjadinya jumlah rekaman yang dikonversikan ke suatu lokasi melebihi kapasitasnya. Fungsi hash seperti yang telah dijelaskan pada bab sebelumnya adalah mendistribusikan data secara merata ke dalam berkas. Jika tujuan tersebut tidak tercapai maka strategi yang digunakan adalah mengkombinasikan beberapa fungsi sederhana dalam satu aplikasi. Fungsi hash menurut Wahyuni (2005) yang menghasilkan banyak kolisi dikatakan sebagai memiliki kluster primer. Makin sedikit kolisi maka semakin sedikit waktu yang diperlukan untuk mengakses tempat-tempat yang berbeda (probe menjadi sedikit). Beberapa cara untuk mereduksi kolisi adalah dengan mengganti fungsi hashing atau dengan mereduksi packing factor (faktor muatan). Rumus faktor muatan telah dijelaskan pada subbab pada bab 2.

Resolusi Kolisi

Merubah fungsi hashing atau mengurangi faktor muatan akan dapat mengurangi jumlah kolisi tapi tidak akan mengeliminasi kolisi (Wahyuni,2005). Tujuan utama dari resolusi kolisi adalah menempatkan rekaman sinonim pada suatu lakasi yang membutuhkan probe tambahan yang minimum dari home address rekaman tersebut. Penyelesaian yang dilakukan bila terjadi kolisi adalah memberikan penunjuk pada lokasi rekaman yang sinonim. Bila terjadi sinonim jamak pada satu home address tertentu, akan dibentuk rantai rekaman sinonim.

Coalesced Hashing

Adalah metode resolusi yang menggunakan penunjuk untuk menghubungkan elemen- elemen dari sebuah rantai sinonim. Algoritma yang digunakan adalah :

19

Prind Triajeng Pungkasanti, S.Kom.

Sistem Berkas

1. Lakukan hashing pada semua kunci rekaman yang akan disisipkan untuk mendapatkan

home address atau calon address yang mungkin untuk ditempati oleh rekaman-rekaman

tersebut.

2. Jika home address kosong, sisipkan rekaman pada lokasi tersebut, jika rekaman ternyata kembar akhiri program dengan pesan "rekaman kembar”, jika tidak ;

a. Cari lokasi terakhir rantai sinonim dengan mengikuti penunjuk pada medan - penghubung sampai menemukan simbol ^ yang menandakan akhir dari rantai.

b. Cari lokasi paling bawah dalam berkas (atau yang memiliki alamat paling besar). Jika tidak ditemukan, akhiri program dengan pesan "Berkas Penuh".

c. Sisipkan rekaman ke dalam lokasi yang kosong yang teridentifikasi dan atur medan- penghubung rekaman terakhir dalam rantai-sinonim agar menunjuk ke lokasi rekaman yang baru saja disisipkan.

Contoh :

Akan dilakukan penyisipan rekaman-rekaman dengan kunci 38. 51. 40. 61, 83. 24 dan 60 ke dalam berkas dengan kapasitas 11, maka :

Tabel 5.1. Coalesced Hashing

Kunci

Kunci mod 11

38

38

mod 11 = 5

51

51

mod 11 = 7

40

40

mod 11 = 7

61

61

mod 11 = 6

83

83

mod 11 = 6

24

24

mod 11 = 2

60

60

mod 11 = 5

20

Prind Triajeng Pungkasanti, S.Kom.

Sistem Berkas

Tabel 5.2. Langkah Kerja Metode Coalesced Hashing

Almt

0

1

2

3

4

5

6

7

8

9

10

Almt

0

1

2

3

4

5

6

7

8

9

10

Berkas Kosong

Rekam

Penghub

^

^

^

^

^

^

^

^

^

^

^

Penyisipan 40

Rekam

Penghub

^

^

^

^

^

38

^

^

51

10

^

^

40

^

Almt

0

1

2

3

4

5

6

7

8

9

10

Almt

0

1

2

3

4

5

6

7

8

9

10

Penyisipan 38

Rekam

Penghub

^

^

^

^

^

38

^

^

^

^

^

^

Penyisipan 61

Rekam

Penghub

^

^

^

^

^

38

^

61

^

51

10

^

^

40

^

Almt

0

1

2

3

4

5

6

7

8

9

10

Almt

0

1

2

3

4

5

6

7

8

9

10

Penyisipan 51

Rekam

Penghub

 

^

 

^

 

^

 

^

 

^

38

^

 

^

51

^

 

^

 

^

 

^

Penyisipan 83

Rekam

Penghub

 

^

 

^

 

^

 

^

 

^

38

^

61

9

51

10

 

^

83

^

40

^

21

Prind Triajeng Pungkasanti, S.Kom.

Sistem Berkas

Almt

0

1

2

3

4

5

6

7

8

9

10

Penyisipan 24

Rekam

Penghub

^

^

24

^

^

^

38

^

61

9

51

10

^

83

^

40

^

Almt

0

1

2

3

4

5

6

7

8

9

10

Penyisipan 60

Rekam

Penghub

 

^

 

^

24

^

 

^

 

^

38

8

61

9

51

10

60

^

83

^

40

^

Rata-rata = ( 1 + 1 + 2 + 1 + 2 + 1 + 2 ) / 7 = 1,4

Keterangan :

1. Rekaman dengan kunci 38, kunci 51, kunci 61, kunci 24 langsung, ditempatkan di alamat 5, 7, 6 dan 2 sesuai dengan home addressnya.

2. Rekaman dengan kunci 40 tidak dapat ditempatkan di alamat 7 sebab alamat tersebut sudah terisi dengan kunci 51. Lokasi yang masih kosong dengan alamat terbesarlah yang diisi terlebih dahulu, sehingga 40 ditempatkan pada alamat 10. Penunjuk pada medan penghubung yang berada di alamat 7 ditujukan ke 10.

Progressive Overflow

Kerugian penggunaan coalesced-hashing adalah diperlukannya penyimpan tambahan untuk medan-penghubung. Bila penyimpan, tambahan tersebut tidak tersedia, maka penghubung yang sifatnya fisik tidak dapat disediakan, sehingga perlu dipertimbangkan teknik resolusi kolisi yang menggunakan suatu bentuk untuk menentukan kemana selanjutnya rekaman harus dicari.

22

Prind Triajeng Pungkasanti, S.Kom.

Sistem Berkas

Progressive overflow adalah menentukan lokasi di memori dengan melihat apakah lokasi yang dituju sudah ditempati atau belum. Bila sudah maka dilihat lokasi selanjutnya apakah masih kosong/terisi, hal ini dilakukan terus menerus sampai diperoleh lokasi kosong untuk menempatkan rekaman. Progressive overflow menggunakan home address untuk menempatkan kunci ke dalam memori. Fungsi hash yang digunakan :

Hash (x) = x mod p

Dengan x adalah kunci, sedangkan p adalah bilangan prima terdekat dari x.

Contoh :

Akan dilakukan penyisipan rekaman-rekaman dengan kunci 38, 51, 40, 61, 83, 24 dan 60 ke dalam berkas dengan kapasitas 11, maka penyelesaiannya menggunakan metode progressive overflow sehingga ditentukan dahulu fungsi hashnya :

Tabel 5.3. Progressive Overflow

Kunci

Kunci mod 11

38

38

mod 11 = 5

51

51

mod 11 = 7

40

40

mod 11 = 7

61

61

mod 11 = 6

83

83

mod 11 = 6

24

24

mod 11 = 2

60

60

mod 11 = 5

23

Prind Triajeng Pungkasanti, S.Kom.

Sistem Berkas

Tabel 5.4. Langkah Kerja Metode Progressive Overflow

Almt

0

1

2

3

4

5

6

7

8

9

10

Sisip 38

Kunci

38

Almt

0

1

2

3

4

5

6

7

8

9

10

Almt

0

1

2

3

4

5

6

7

8

9

10

Sisip 83

Kunci

38

61

51

40

83

Sisip 51

Kunci

38

51

Almt

0

1

2

3

4

5

6

7

8

9

10

Almt

0

1

2

3

4

5

6

7

8

9

10

Sisip 24

Kunci

24

38

61

51

40

83

Rata-rata = ( 1 + 1 + 2 + 1 + 4 + 1 + 6 ) / 7 = 2,3

Sisip 40

Kunci

38

51

40

Almt

0

1

2

3

4

5

6

7

8

9

10

Almt

0

1

2

3

4

5

6

7

8

9

10

Sisip 60

Kunci

24

38

61

51

40

83

60

Sisip 61

Kunci

38

61

51

40

24

Prind Triajeng Pungkasanti, S.Kom.

Sistem Berkas

Keterangan :

1. Rekaman dengan kunci 38, kunci 51, kunci 61, kunci 24 langsung di tempatkan di alamat 5, 7, 6 dan 2 sesuai dengan home addressnya.

2. Rekaman dengan kunci 40 tidak dapat ditempatkan di alamat 7 sebab alamat tersebut sudah terisi dengan kunci 51. Lokasi yang masih kosong diperoleh dengan menggunakan increament 1 (menaik 1). Lokasi 8 masih kosong sehingga 40 ditempatkan di alamat tersebut. Begitu pula dengan kunci 83 dan 60.

Pembagian Linier

Pembagian Linier atau Linies Quotient adalah merupakan varian dari Progressive Overflow. Untuk Progressive Overflow bisa inkremennya konstan yaitu 1 sedangkan pada pembagian linier inkremennya bersifat variabel. Hal ini bertujuan untuk mengurangi probe. Fungsi hash yang digunakan adalah :

incr (x) = x div p

Tabel 5.5. Linier Quotient

Kunci

Kunci mod 11

Kunci div 11

38

38

mod 11 = 5

38

div 11 = 3

51

51

mod 11 = 7

51

div 11 = 4

40

40

mod 11 = 7

40

div 11 = 3

61

61

mod 11 = 6

61

div 11 = 5

83

83

mod 11 = 6

83

div 11 = 7

24

24

mod 11 = 2

24

div 11 = 2

60

60

mod 11 = 5

60

div 11 = 5

25

Prind Triajeng Pungkasanti, S.Kom.

Sistem Berkas

Tabel 5.6. Langkah Kerja Metode Linier Quotient

Almt

0

1

2

3

4

5

6

7

8

9

10

Sisip 38

Kunci

38

Almt

0

1

2

3

4

5

6

7

8

9

10

Almt

0

1

2

3

4

5

6

7

8

9

10

Sisip 83

Kunci

83

38

61

51

40

Sisip 51

Kunci

38

51

Almt

0

1

2

3

4

5

6

7

8

9

10

Almt

0

1

2

3

4

5

6

7

8

9

10

Sisip 24

Kunci

83

24

38

61

51

40

Rata-rata = ( 1 + 1 + 2 + 1 + 2 + 2 + 4 ) / 7 = 1,9

Sisip 40

Kunci

38

51

40

Almt

0

1

2

3

4

5

6

7

8

9

10

Almt

0

1

2

3

4

5

6

7

8

9

10

Sisip 60

Kunci

83

24

38

61

51

60

40

Sisip 61

Kunci

38

61

51

40

26

Prind Triajeng Pungkasanti, S.Kom.

Sistem Berkas

Keterangan :

1. Rekaman dengan kunci 38, kunci 51, kunci 61 langsung di tempatkan di alamat 5, 7 dan 6 sesuai dengan home addressnya.

2. Rekaman dengan kunci 40 tidak dapat ditempatkan di alamat 7 sebab alamat tersebut sudah terisi dengan kunci 51. Untuk mencari lokasi yang kosong gunakan rumus incr (x), sehingga lokasi yang kosong ditentukan dengan kenaikan (increment) dari fungsi hash (x) sebanyak 3 kenaikan, maka Iokasi yang tepat untuk kunci 40 adalah alamat 10. Begitu pula dengan kunci 83 dan 60.

Soal

1. Sisipkan data dengan menggunakan kunci sebagai berikut 27, 18, 29, 23, 39, 13, 16, 42 dan 17 dengan menggunakan Coalesced Hashing, Progressive Overflow dan Linier Quotient !

2. Tentukan rata-rata probenya untuk nornor 1 !.

3. Diantara ketiga metode probe milik metode yang manakah yang paling sedikit? Mengapa?

27

Prind Triajeng Pungkasanti, S.Kom.

Sistem Berkas

VI. ORGANISASI BERKAS SEKUENSIAL BERINDEKS

Sistem Berkas VI. ORGANISASI BERKAS SEKUENSIAL BERINDEKS Pendahuluan Berkas sekuensial berindeks, menurut Wa hyuni (2005)

Pendahuluan

Berkas sekuensial berindeks, menurut Wahyuni (2005) mempunyai 2 sifat, yaitu : (1) memiliki indeks terhadap berkas sehingga menghasilkan pengaksesan random yang lebih baik dan (2) area overflow untuk menyediakan ruang bila dilakukan penambahan rekaman ke dalam berkas. Hariyanto (2003) mengatakan, bahwa komponen pembentuk file sekuensial berindeks ada 3, yaitu : (1) file utama yang berisi data, (2) indeks, dan (3) overflow. Keunggulan dari file sekuensial berindeks adalah file dapat diproses secara sekuen maupun langsung secara efisien.

Struktur Dasar

Pada umumnya rekaman yang akan disimpan mempunyai volume yang besar daripada penyimpanan primer sehingga diperlukan penyimpan sekunder seperti disk. Struktur dasar pengamatan dengan menggunakan track sebagai unit terkecil untuk mengelompokkan informasi. Unit berikutnya dalah silinder, kemudian tercapai unit tambahan yaitu indeks. Metode yang digunakan adalah ISAM atau Indexed Sequential Access Methods. Contoh berikut akan memberikan gambaran cara penyimpanan berkas sequensial berindeks. Terdapat 3 buah silinder yaitu, silinder 1, silinder 2, dan silinder 3. kunci tertinggi terletak pada silinder 1, yaitu 250. Ilustrasinya adalah sebagai berikut :

1, yaitu 250. Ilustras inya adalah sebagai berikut : Kunci tertinggi pada sili nder 1 Silinder

Kunci tertinggi pada silinder 1

Silinder 1

Silinder 2

Silinder 3

tertinggi pada sili nder 1 Silinder 1 Silinder 2 Silinder 3 Indeks silinder 250 250 250
tertinggi pada sili nder 1 Silinder 1 Silinder 2 Silinder 3 Indeks silinder 250 250 250

Indeks silinder

sili nder 1 Silinder 1 Silinder 2 Silinder 3 Indeks silinder 250 250 250 250 250

250

250 250 250 250 250 250

250

250 250 250 250 250 250

250

250 250 250 250 250 250

250

250 250 250 250 250 250

250

250 250 250 250 250 250

250

250 250 250 250 250 250

Indeks track (untuk silinder = 1)

28

Prind Triajeng Pungkasanti, S.Kom.

Sistem Berkas

Nomor track

0 25 1 25 ^ 70 2 70 ^ 85 3 1 7 9 12

0

25 1
25
1
25 ^
25
^
70 2
70
2
70 ^
70
^
85 3
85
3

1

7
7
9
9
12
12
15
15
20
20
22
22
25
25

2

28
28
38
38
41
41
55
55
57
57
65
65
70
70

3

73
73
75
75
77
77
79
79
80
80
83
83
85
85

Penyimpanan overflow

9

1

2

3

4

79 80 83 85 Penyimpanan overflow 9 1 2 3 4 Gambar 6.1. Struktur awal berkas

Gambar 6.1. Struktur awal berkas sekuensial berindeks

85 ^
85
^

Keterangan :

1-0 menunjukkan notasi x-y, dengan x adalah nomor silinder sedangkan y adalah nomor track. Sehingga 1-0 diartikan sebagai track 0 pada silinder 1. Pada saat ini nilai kunci tertinggi pada area primer sama dengan kunci tertinggi pada area overflow, sebab belum dilakukan penyisipan rekaman yang dialokasikan pada area overflow. Simbol ^ pada penunjuk overflow mengindikasi bahwa tidak ada rekaman dalam area overflow.

Penyimpanan Rekaman

Pada saat melakukan penyisipan, urutan harus tetap dipertahankan untuk mempertahankan mekanisme pembacaan. Hal ini berarti pada saat menyisipkan rekaman, rekaman tersebut dialokasikan pada posisi yang tepat. Pada gambar 6.1 rekaman overflow dialokasikan pada track 9. untuk memperjelas penjelasan di atas, lakukan penyisipan rekaman dengan kunci 13 pada struktur awal gambar 6.1.

29

Prind Triajeng Pungkasanti, S.Kom.