Kamis, 30 Januari 2014

Sistem Berkas

By : Tatang Yogaswara, SE, M. Kom - Jan'14 s/d Mar'14

PERTEMUAN 1 KONSEP DASAR BERKAS
Pengertian Sistem Berkas dan Akses

Sistem Berkas atau Pengarsipan : Suatu sistem untuk mengetahui bagaimana cara menyimpan data dari file tertentu dan organisasi file yang digunakan.

Sistem Akses : Cara untuk mengambil informasi dari suatu file

Pengarsipan dan Akses
  • Cara untuk membentuk suatu arsip / file dan cara pencarian record-recordnya kembali.
  • Sistem Berkas dan Akses adalah sistem pengorganisasian, pengelolaan dan penyimpanan data pada alat penyimpanan eksternal dengan organisasi file tertentu. Pada sistem berkas dan akses penyimpanan data dilakuakan.
  • Teknik yang digunakan untuk menggambarkan dan menyimpan record pada field disebut organisasi file.

Secara lebih spesifik pengrasipan dan akses berhubungan dengan
  •  Insert : Menyisipkan data baru atau tambahan ke  dalam Tumpukan data lama.
  • Up-Date : Mengubah data lama dengan data baru, perubahan ini bisa sebagian besar atau keseluruhan.
  • Reorganisasi : Penyusunan kembali record-record dari suatu file (untuk Jumlah data tetap).

Istilah-istilah dasar yang digunakan
  • Elemen Data : Salah satu nilai tunggal dengan satu petunjuk nama dan deskripsi karakteristik seperti tipe (char, nomor, kode) dan panjang karakter atau digit.
  • Item Data : Referensi nama dan himpunan karakteristik elemen-elemen data yang menggambarkan suatu atribut. Tempat menyimpan setiap atribut dari sebuah entitas. Contoh : item data “ Identifikasi siswa” dapat dikarakteristik dengan nomor digit 4 dengan nilai antara 1 – 1000 
  • Entitas : Sekumpulan obyek yang terbatas / terdefinisikan yang mempunyai karakteristik sama dan bisa dibedakan dari nilainya. Obyek dapat berupa barang, orang, tempat atau suatu kejadian. Contoh : entitas mobil, mahasiswa, nilai ujian, pegawai dan sebagainya.
  • Attribut : Deskripsi data yang bisa mengidentifikasikan entitas. Seluruh attribut harus cukup untuk menyatakan identitas obyek atau dengan kata lain kumpulan attribut dari setiap entitas dapat mengidentifikasikan keunikan suatu individu. Contoh : entitas mobil terdiri dari attribut No.Polisi, No.Registrasi, warna, jenis mobil, tahun, bahan bakar dan sebagainya
  • Field : lokasi penyimpanan untuk salah satu elemen data. Contoh : Ruang penyimpanan untuk identifikasi nomor siswa. Suatu elemen yang memiliki attribut dan harga dan merupakan unit informasi terkecil yang bisa diakses.
  • Record (fisik) : Lokasi penyimpanan yang terbuat dari rangkaian field yang berisi elemen-elemen data yang menggambarkan beberapa entitas. Contoh : Area penyimpanan membutuhkan isi dari identifikasi nomor, nama dan alamat dari salah satu siswa (ketika menggunakan record yang didefinisikan terlebih dahulu).
  • File : Sekumpulan record dari tipe tunggal yang berisi elemen-elemen data yang menggambarkan himpunan entitas. Contoh : file siswa yang berisi satu record untuk tiap siswa dalam sistem.
  • Access Data : Suatu cara dimana suatu program mengakses secara fisik record-record dalam file penyimpan.
PERTEMUAN 2 FUNGSI

Sistem Berkas (File Systems)
Pengaksesan (membaca dan menulis) data file memerlukan aktifitas yang transparan untuk programmer aplikasi.
Sistem berkas menyediakan pendukung yang memungkinkan programmer mengakses file tanpa menyangkut perincian karakteristik penyimpanan dan peralatan pewaktu. Sistem berkas mengubah pernyataan akses file secara relatif menjadi instruksi input/output level rendah.

Tanggung jawab sistem berkas banyak dan beragam yang meliputi :
  1. Pemeliharaan direktori file yang mengidentifikasi dan melokasi informasi.
  2. Menentukan lintasan  aliran data antara memori   utama dan penyimpanan tambahan (secara penyimpanan) Mengkoordinasikan komunikasi antara CPU dan media penyimpanan atau sebaliknya.
Pokok-pokok bahasa meliputi :
  • Jenis-jenis informasi yang diperlukan dalam file harus ditentukan sebelum merancang file.
  • Informasi dapat dinyatakan dalam bentuk kode untuk menghemat ruang penyimpanan file data.
  •  Informasi yang disimpan dalam file sebaiknya hanya informasi yang digunakan sekarang dan kira-kira pasti digunakan pada waktu dekat.
  • Cara penggunaan file akan mempengaruhi apakah file disusun secara acak atau berurutan.
  • Bagian pemrosesan data bertanggung jawab atas pengamanan data dan membatasi siapa-siapa yang berwenang mendapatkan file.

Jenis-jenis File
File data dapat digolongkan menurut cara organisasinya seperti file berurutan atau file acak. Dapat juga menurut jenisnya misal file master, file transaksi dll. File data yang digolongkan menurut jenisnya adalah sebagai berikutnya :
  1. File induk : Sesuatu file yang diperlukan untuk memperlancar operasi sistem dan diperbaharui secara teratur.
  2. File Transaksi : Digunakan untuk memperbaharui file induk dengan informasi yang baru.
  3. File Penunjang : Merupakan kutipan dari file untuk menjaga kemungkinan adanya file asli yang rusak.
  4. File Riwayat hidup : Informasi yang dikumpulkan selama periode waktu tertentu atau tahun yang lalu dan biasanya digunakan untuk menyusun laporan statistik.
  5. File Data Transaksi : Merupakan sebuah rekaman pada pita atau piringan untuk setiap transaksi yang melengkapi file induk.
  6. File Kesalahan : Rekaman tentang kesalahan yang disimpan pada file untuk pembetulan dikemudian hari. 
  7. File Laporan (Pencetak) : Merupakan turunan laporan tercetak yang ditahan pada piringan atau pita menunggu printer siap mencetak.
  8. File Sementara :  File yang disiapkan untuk pemrosesan peralihan.
  9. File Pustaka (Library) :  File yang digunakan untuk menyimpanan program aplikasi, program utiliti, program lain.
  10. File Kerja (Work) :  File ini berisi record-record yang disusun sedemikian rupa sehingga dapat dibuat sebuah program dan dipakai oleh program lain sebagai input. Biasanya berkas ini dibuat pada waktu proses sortir.
  11. File Program : File ini berisi perintah-perintah untuk memproses data. Perintah dapat ditulis dalam bahasa pemrograman tingkat tinggi (COBOL, Fortran, Pascal, BASIC, PL/1, RPG, dan lain-lain), bahasa rakitan atau bahasa mesin.
File Induk : File induk merupakan sebuah file yang terpenting pada suatu sistem. Sebuah file induk merupakan file yang digunakan untuk menyelesaikan tugas pokok tertentu dan dipelihara secara teratur. Contoh : Sistem Rumah Sakit memerlukan file induk tentang catatan pasien, catatan penyakit, disamping file lainnya.
Jenis informasi pada file induk cenderung tetap, tetapi isi informasinya dapat sering berubah. File induk selalu diperbaharui dengan menggunakan file transaksi.
File Transaksi : File transaksi berisi informasi yang digunakan untuk memperbaharui file induk. Contoh : rekaman tentang pelanggaran yang sudah membayar tagihan listrik akan membentuk file transaksi., sekali seminggu catatan pada file transaksi digunakan untuk memperbaharui record pada file master.
File Data Transaksi : Pada umumnya berkas diperbaharui secara “on-line”. Perubahan-perubahan dilakukan segera setelah kejadiannya timbul. Informasi tentang pasien baru dimasukkan melalui terminal. Jika file rusak/hilang dan tidak ada rekaman lain, bila itu terjadi tidak mungkin dapat dibuat kembali file dengan data yang tepat. Alternatif setiap terjadi transaksi suatu catatan sebaiknya ditulis dalam “file data transaksi” yang dapat disimpan pada piringan atau pita.

PERTEMUAN 3 MACAM-MACAM PENYIMPANAN SEKUNDER

Macam-macam penyimpan data :
  • Penyimpan mekanis
  • Magnetic tape
  • Magnetic disk (harddisk)
  • Penyimpan berkapasitas besar
  • Penyimpan alternatif (dalam percobaan, belum dipasarkan secara luas)

Penyimpan Mekanis
Contoh media penyimpan mekanis adalah : Kartu IBM/Hollerith, Pita kertas berlubang
Sifat umum perangkat ini adalah berkecepatan sangat rendah. Perangkat ini sudah ditinggalkan karena teknologi lain yang berkinerja lebih bagus dengan biaya lebih murah telah berhasil dikembangkan manusia.

Magnetic Tape : Magnetic tape terbuat dari plastik dilapisi materi besi sehingga mudah dimagnetkan. Magnetic tape panjangnya dapat beratus-ratus meter dan digulung. Informasi dikodekan karakter per karakter. Terdapat beberapa kanal/track manyatakan satu posisi bit representasi biner. Biasanya terdapat track untuk parity check bits. Track adalah baris-baris parallel pada permukaan tape dimana satu bit informasi direkamkan. Terdapat tape yang berisi 7,9 bahkan 18 track. Pada magnetic tape dimungkinkan mengkodekan beberapa ratus karakter per inci. Jumlah bit yang dapat direkam per inci disebut kepadatan tape. Kepadatan tape yang popular  adalah dari 800 bpi (bit per inch) sampai 6250 bpi. Contoh : Kepadatan simpan adalah 1.600 byte/inci, Panjang tape 3.600 feet, maka : Kapasitas simpan = 1.600 byte/inci x 12 inci/foot x  3.600 feet = 69.120.000 byte = 69 Mbyte
Penyimpan magnetic tape antara lain : 1. Gulungan pita tanpa penutup, dan 2. Kaset
Ukuran : 1. bit per inch (bpi), dan 2. 9 track terdiri dari 8 bit (karakter) + 1 bit (koreksi)
Penggunaan : 1. Backup, dan 2. Pembacaan lambat terutama pengaksesan sekuen
Sifat umum : lambat
Keterangan : masih digunakan tapi mulai ditinggalkan, diganti teknologi optik

Hardisk (Magnetic Disk)
  • Kelemahan utama magnetic tape adalah ketidakadaan kemampuan pengaksesan acak (random acces) lebih tepatnya pengaksesan langsung (direct access). Pengaksesan langsung adalah.
  • Magnetic disk adalah perangkat penyimpan direct-access, yaitu pembacaan/ penulisan record dapat langsung menuju ke record itu tanpa melalui record-rekord sebelumnya. Magnetic disk memberi waktu pengaksesan relatif rendah dan transfer data berkecepatan tinggi.
  • Magnetic disk mulai popular sejak pertengahan tahun 1960. Perangkat ini mengalami penggandaan kapasitas setiap dua tahun. Pada magnetic disk awal hanya dapat menyimpan beberapa mega byte. Saat ini, kapasitas 40 Giga byte merupakan kapasitas yang telah umum dipakai oleh komputer pribadi.
  • Harddisk 3 cakram dengan demikian adalah  6 track per silinder karena kedua permukaan cakram digunakan, dan 1600 silinder silinder, dan 32 sektor berukuran 1 kilo byte.

Maka :
  • Sektor berukuran 1 kilobyte
  • 32 sektor atau 32 kilobyte per track
  • 3 cakram dengan kedua sisi masing-masing cakram digunakan
  • 6 track, 192 sektor, atau 192 kilobyte per silinder
  • 1600 silinder, 307.200 sektor atau 307,2 megabyte per harddisk
  • Pada saat beroperasi, cakram berputar sekitar 3600 sampai 7200 rpm. Misalnya cakram berdiameter 5 inci dan berputar 5400 rpm. Keliling titik terluar cakram adalah x d = 16 inci, sekitar 5/4 kaki. Berputar 5400 rpm berarti titik bergerak 5/4 kaki x 5400 – 6.700 kaki per menit, atau sekitar 1 mil per jam, atau sekitar 100 kilometer per jam pada titik keluar.

      Waktu yang dibutuhkan untuk membaca dan menulis disk dipengaruhi oleh :
  •  Waktu seek (seek time)
  •  Waktu tunda rotasi (rotational latency)
  •  Waktu transfer data (transfer data time)

PERTEMUAN 4 ORGANISASI FILE

Pendahuluan
File diorganisasikan secara logik sebagai barisan record. Record-record dipetakan ke blok-blok disk. File diberikan sebagai bentukan/primitif di sistem operasi. Meski blok berukuran tetap serta ditentukan oleh disk dan sistem operasi, namun record-record dapat beragam ukuran.

Direktori File (File directory)
Direktori file adalah kegiatan dari memory (disk) yang memuat informasi mengenai :
  1. nama file
  2. ruang yang disediakan untuk file tersebut/alokasi tempat
  3. pemilik file tersebut
  4. ruang yang sudah dipakai
  5. posisi dan format file dari record-recordnya
  6. organisasi file (struktur)
  7. informasi lain.
Pengukuran kuantitatif (ukuran performansi dari suatu file)
Untuk mengevaluasi kinerja (performansi) suatu sistem organisasi file, perlu dilakukan pengukuran kuantitatif terhadap hal-hal yang menyangkut waktu pengaksesan sebagai berikut :
R : banyaknya penyimpanan yang diperlukan untuk satu record.
TF : waktu yang dibutuhkan untuk mengambil (fetch) record yang berubah dari  File.
TN : waktu untuk mendapatkan record berikutnya dalam file
TI : waktu untuk memperbaharui file dengan menyisipkan satu record.
TU : waktu untuk memperbaharui file dengan mengubah satu record.
TX : waktu yang diperlukan untuk membaca seluruh file secara lengkap.
TY : waktu yang diperlukan untuk mengorganisasi kembali file.

  1.  Record Size [R] : Yaitu jumlah ruang yang dibutuhkan oleh setiap satu record, ukuran record biasanya lebih besar dari jumlah semua ruang dari setiap field/atribut record tersebut. Contoh: record # 1 NIM: 7 byte,  Nama: 20 byte, Alamat: 30 byte, Pendidikan: 10 byte => Total: 67 byte. Secara matematis (logical) ukuran record dari contoh diatas adalah 67 byte, akan tetapi dalam kenyataan diperlukan ruang yang lebih besar dari 67 byte untuk tiap recordnya.
  2.  Fetch Record (pengambilan record)/ TF : Waktu yang dibutuhkan untuk pengambilan sebuah record dari suatu file, waktu yang dibutuhkan (TF) tergantung 2 hal : 1. Waktu untuk menempatkan head (pembaca disk) pada lokasi dimana record tersebut berada, dan 2. Pembacaan aktual
  3. Get Next Record (TΝ) : Yaitu waktu yang dibutuhkan untuk menemukan record berikutnya (next record). Apabila record berikutnya berada pada blok yang sama dengan record yang sudah diambil, maka waktu yang diperlukan minimal.
  4. Insert Record (TI) : Yaitu waktu yang dibutuhkan untuk menyisipkan suatu record dan nilainya bisa singkat dan bisa juga panjang (besar). TI bernilai besar bila insert yang dilakukan pendek (awal track) kecil. TI bernilai kecil bila insert yang dilakukan di akhir track kecuali bila ada penyediaan tempat khusus pada track. TI   besar : bila penambahan suatu record menyebabkan pergeseran record-record sesudahnya.
  5. Read Entire File (pembacaan semua record pada file)/(TX) : KadaKadang-kadang dalam beberapa file diperlukan pembacaan seluruh file. Waktu pembacaan seluruh file. Waktu pembacaan seluruh file dinyatakan dengan notasi TX, dan nilai TX tergantung pada jenis file yang dibaca.
  6. Reorganisasi (TY) : Adalah penyusunan  kembali record-record dari suatu file. Biasanya reorganisasi dilakukan secara periode (mis : setiap minggu, bulan dll).       Dalam reorganisasi dilakukan :
  • penghapusan record yang diberi tanda *
  • penghapusan record yang tidak valid
Penambahan ruang bebas (Free space) yang siap digunakan untuk menampung record-record baru.

Organisasi File
Agar dapat mengacu pada record-record yang diinginkan pada suatu file maka file-filenya dibentuk dalam aturan-aturan atau organisasi yang teratur dan konsisten. Ada bermacam organisasi dari file yang secara umum dikelompokkan ke dalam sistem pengorganisasian file dasar sebagai berikut :
  1. Pile
  2. Sequential file
  3. Indexed Sequential File
  4. Indexed File
  5. Direct File
  6. Inverted File Dan Multi List

Pile (tumpukan)
  • Record-record pada pile dikumpulkan berdasarkan kedatangannya. Data ini tidak untuk  dianalisis, dikategorikan atau diusahakan untuk ditempatkan pada ukuran field.
  • Panjang record dalam suatu Pile tidak harus tetap atau (variable record length) dan tidak diperlukan atribut-atribut yang sama untuk setiap recordnya.

Contoh :
                        NRP    Nama              Tgl-Lahir                      Pekerjaan
Record#1        0017081          Alvian Dwire    25-10-1966      ********
Record#2        0017201          Udionus Kar.   01-12-1961      Marketing

Maka dalam Pile record-record akan disimpan sebagai berikut :

Pengunaan Pile
File Pile dibuat ketika data dikumpulkan terutama untuk pemrosesan, dimana data tidak mudah untuk diorganisasikan atau disusun.
Pile biasanya digunakan untuk mengumpulkan data sebelum suatu pemrosesan. Banyak pengumpulan data yang dilakukan secara manual, seperti medical record juga memiliki bentuk Pile. Dalam file-file Pile, analisa data dapat menjadi sangat mahal karena waktu yang diperlukan untuk pencarian kembali sejumlah record mampu dengan statistik.

Reorganisasi (TY)
Adalah penyusunan  kembali record-record dari suatu file. Biasanya reorganisasi dilakukan secara periode (mis : setiap minggu, bulan dll).     
Dalam reorganisasi dilakukan :
a.        penghapusan record yang diberi tanda *
b.        penghapusan record yang tidak valid
penambahan ruang bebas (Free space) yang siap digunakan untuk menampung record-record baru.


PERTEMUAN 5 FILE SEQUENSIAL
Struktur dan Manipulasi Sequensial File
  • Sequensial File adalah : File dengan organisasi urut. Data yang disimpan diurutkan berdasarkan urutan pemasukan data (urut berdasarkan nomor record). Data yang ditambahkan selalu menempati urutan berikutnya.
  • Sekumpulan record yang disimpan dalam media penyimpanan sekunder komputer, yang dapat diakses secara berurutan mulai dari record pertama sampai dengan record terakhir. Record per record searah. Record terakhir adalah rekaman fiktif yang menandai akhir dari arsip.

Pemakaian File Sequensial
Sequensial file seringkali digunakan pada tipe pengolahan data yang berorientasi batch. Setiap record strukturnya sama. Elemen dari record disebut field. Setiap record dapat diakses dan dibaca menurut urutannya, dengan pemanggilan primitif akses yang tersedia.
Cara pendefinisian :
Nama Arsip : Type SeqFile
(*) <Rekaman>
<Mark>
Dengan catatan bahwa (*) mungkin kosong, 1 rekaman atau lebih. Domain setiap rekaman adalah sesuai dengan domain masing-masing rekaman. Konstanta adalah sebuah rekaman.

Primitif Akses untuk  Arsip Sequensial
Ket:
(IS: Initial State; FS : Final State)

OPEN: Procedure (Input Nama Arsip, <rekaman>)
Arsip Sequensial siap dibaca, rekaman pertama yang informasinya ada pada rekaman dapat diakses.
IS: sembarang
FS: informasi pada rekaman pertama siap diakses, dengan mengacu pada  rekaman.

READ: Procedure (Input Nama Arsip, <Rekaman>)
Rekaman sesudah rekaman yang sedang berlangsung        yang dapat diakses
IS: <Rekaman> bukan merupakan mark , disebut sebagai Current Rekaman.
FS: Arsip dimajukan satu rekaman.
<Rekaman> berisi informasi yang disimpan pada rekaman sesudah Current-  rekaman.
Mungkin <rekaman> yang baru adalah Mark.

CLOSE: Procedure (Input Nama Arsip)
IS: Sembarang
FS: Arsip tidak dapat diproses lagi

REWRITE: Procedure (input/output Nama Arsip) Arsip Sequensial siap untuk rekam
IS: Sembarang
FS: Arsip Sequensial yang bernama  Nama Arsip siap untuk direkam pada posisi pertamanya.

WRITE  : procedure (Input/output Nama Arsip, <Rekaman>)
Data pada <Rekaman> direkam pada posisi aktual Arsip, kemudian posisi dimajukan satu.
IS: arsip Sequensial berada pada posisi yang telah siap menerima <Rekaman> bukan MARK.
FS: <rekaman> pada posisi yang telah disiapkan, arsip dimajukan satu posisi. Jika <rekaman> yang diisikan ke arsip adalah elemen fiktif yang dimaksudkan sebagai Mark, maka arsip tidak dapat lagi direkam

WRITE dipakai untuk menyimpan data dari variabel ke disket. Variabel dapat berupa 1 atau lebih variabel sesuai dengan tipe komponen var File. Setelah operasi ini dilaksanakan, penunjuk file dimajukan ke komponen berikutnya.
Contoh  : Sebuah arsip Sequensial berisi data Mahasiswa, yang setiap rekamannya memuat data NRP, Nama dan NA mahasiswa.
Maka dapat dituliskan :
Arsip MHS : Type SEQFILE
(*) <NRP: integer,Nama : String,NA : Integer [0..100]>
(1)<99999999,’’,0>
Domain setiap rekaman dengan domain masing-masing rekaman.
Kostanta : sebuah rekaman, misalnya :
<747001,’Juliet,’95>
<8690022,’Laura,’80>

Cara Akses rekaman pertama :
OPEN (Arsip Mhs,<NRP,Nama, Nilai>)
Cara Akses : (NRP = 999999} READ(Arsip Mhs,<NRP,Nama,Nilai>

Cara menyiapkan untuk rekam :
REWRITE(Arsip MHS)

Cara mengisi :
WRITE (Arsip mahasiswa, <NRP, Nama, Nilai> (harga current sedang terjadi)
Write (Arsip Mhs, <7473002, ‘Davil’,96> (Konstanta)
WRITE (Arsip Mhs, <NRP1,Nama 1, Nilai1> (Nama lain, tipe sama)
Cara mengisi akhir rekaman :
WRITE (Arsip Mhs, <999999,’’,0> (Mark)

Pemrosesan Sequensial sebuah Arsip Sequensial
Jika setiap rekaman harus diproses dengan cara sama, pemrosesan arsip sequensial dapat dilakukan dengan memakai skema pemrosesan sequensial dengan mark.
Contoh : Dibaca sebuah arsip Sequensial bernama :
Arsip MHS : Type SEQFILE
 (*)<NRP : Integer,Nilai : Integer[0..100[>
 (1)<999999,99>
Analisa : pemrosesan sequensial dari elemen arsip Sequensial
Model tanpa Mark, jika I adalah deret yang proses, I berharga 1,2,3. . .,N
EOF adalah Nrp = 999999
First_Elmt : OPEN(ArsipMhs,<Nrp,Nilai>)
Next_Elmt : READ(ArsipMhs,<Nrp,Nilai>)
Proses : membaca arsip sambil menghitung nilai rata-rata mahasiswa.
Nilai Rata-rata
{Model proses Sequensial dengan Mark, dengan penanganan kasus kosong}

Kamus :
ArsipMhs : type SEQFILE
(*)<NRP : Integer,Nilai : Integer[0..100[>
(1)<999999,99>
Sum Nilai : Integer {jumlah nilai}.
JumMhs : Integer {Jml Mhs}

Struktur File Serial dan Sequensial
Struktur file serial merupakan  struktur paling sederhana yang tersedia. Urutan record dari file dengan urutan dimana record dimasukkan ketika file dibuat.
Dalam file serial record secara fisik yang pertama yang diakses, diikuti dengan record  yang ke 2,3 dan seterusnya. Struktur ini berguna untuk beberapa file yang memerlukan urutan kronologis, seperti menerima pesan, mengirim pesan, catatan transaksi dalam buku harian atau pengawasan jalan.
Struktur file serial dapat ditransportasikan ke struktur file sequensial dengan mengurutkan rangkaian record dari file yang disesuaikan dengan nilai asending/descending.
Kunci pengurutan (sortkey) dibuat dari field-field yang dipilih untuk menetapkan urutan record. File sequensial diakses dengan cara sama seperti file serial, dimana record secara fisik yang pertama diakses diikuti record berikutnya.

Contoh : file serial/sequensial yang diurutkan berdasarkan nama siswa.
No.Rec
<_ID,
Nama,
Alamat,
Data lain……>
1
2
3
4
5
12001 :
10020 :
90011 :
34500 :
78991 :
ADAM :
BRUCE :
CINDI :
DINDA :
ERIKA :
Jl. Parkit
Jl.A. Yani
Jl. Slamet
Jl. Beo
Jl. Panut
: …
: …
: …
: …
: …

PERTEMUAN 9 FILE BERINDEKS
Konsep Indeks
Suatu indeks bisa dikenali sebagai struktur data yang berisi satu fungsi, dimana argumen dari fungsi merupakan satu kunci dan nilai dari fungsi merupakan satu nomor record. Dengan kata lain, dengan satu indeks memungkinkan untuk menemukan nomor record yang dihubungkan dengan nilai kunci (Key Value) yang diberikan,

Indeks Pohon (tree Indexed)
Indeks pohon merupakan salah satu indeks hierarki yang ada. Akar atau level pertama indeks menunjukkan ke level kedua dari indeks. Setiap level indeks menunjuk ke level-level paling bawah sampai simpul yang paling bawah atau daun dijangkau.

Indeks Pohon diklasifikasikan menjadi dua:
1.    Pohon yang heterogen
2.    Pohon yang homogen
  • Pohon Heterogen adalah setiap simpul dari pohon yang hanya berisi satu macam pointer tetapi pointernya berbeda untuk simpul daun dari simpul dengan level yang lebih tinggi.
  • Pohon Homogen merupakan pohon dimana setiap simpul berisi 2 pointer, data pointer dan pohoin biner. Semua simpul dalam bentuk yang sama.
·         Contoh :
·         Index
Rec #
Social Sec #
Nama
Tgl-Lahir
Jk
Jabatan
1
013-47-1234
Jihan
01-01-1966
P
Sekretaris
2
028-18-2314
Peter
11-05-1967
L
Teknisi
3
128-15-3412
Maria
06-12-1969
P
Kasir

Untuk menemukan karyawan di tentukan suatu Indeks File sebagai berikut :
13-47-1234
1
28-18-2314
2
128-15-3412
3

Suatu file sequential yang terdiri dari 96 record dan menempati 32 block.
Record : NO_KTP, Nama, J_kelamin, Usia, ...dst.
                Field1       Field2      Field 3      Field 4

Misalkan panjang record 200 byte
Field kunci      : NO_KTP
Ukuran Block : 600 byte
Maka:

R1
R2
R3
...
...

1 Rec = 200 byte
               1 block = 600 byte dengan 32 block

Struktur dan Manipulasi File Sequential Berindeks : Organisasi file ini memungkinkan membaca secara serial, mengakses secara sequential ke area record dari file yang asli.

Indeks : Indeks berisi sekumpulan entri. Setiap data record berisi nilai kunci atribut untuk record dan satu pointer yang memungkinkan mengakses dengan cepat record-record yang diinginkan. Seluruh indeks dikumpulkan lebih kecil dari filenya sendiri.
Pengindeksan akan sangat efektif ketika file-file sangat besar, dimana indeks memerlukan banyak blok. Proses penelusuran dalam indeks yang besar itu sendiri dibantu dengan kembali membuat subset indeks.

Primary Index : Indeks untuk file sequentials yang berdasarkan pada kunci atribut yang sama yang digunakan untuk menentukan urutan file itu sendiri. Seperti Primary Index Nomor.

INDEXED SEQUNTIAL ACCESS METHODE (ISAM) : Metode ini merupakan kompromi antara metode akses sequential dan akses direct (random). Di mana record disimpan secara berurutan dengan kunci attribute hingga pengolahan secara sequential dapat dilakukan. Tetapi indesk jugs di pelihara

PERTEMUAN 10 SORT DAN MERGE FILE : Dalam sistem penyortiran dikenal dua metode yaitu metode sort internal dan metode sort ekstenal. Perbedaan yang mendasar dari kedua metode ini adalah pada metode sort internal, semua record yang akan diproses dimuat ke dalam memori komputer lalu diproses sort (sortir). Sedangkan pada metode sort eksternal record-record diproses tidak semuanya dapat dimuat ke dalam memori komputer, karena keterbatasan memori komputer.
Contoh : Sebuah File berisi 2000 record harus disortir ke dalam memori yang hanya menampung 1000 record sekaligus. Untuk itu digunakan metode sort eksternal. Langkah awal dalam penyortiran ini adalah record-record dibagi kedalam beberapa file agar dapat ditampung sekaligus di memori komputer, lalu masing-masing bagian di sortir internal.
Sorted Sublist 1 ( Record 1 – 1000 )
Sorted Sublist 2 ( Record 1001 – 2000 )
Langkah-langkah metode sort eksternal :
  1.  Internal Sort, dimana file dibagi menjadi beberapa bagian file kemudian di Sortir.
  2.  Merge, dimana bagian-bagian file ini (sorted list) digabung menjadi satu atau lebih file gabungan. File-file gabungan ini kemudian digabung lagi sampai akhirnya didapatkan sebuah file gabungan yang berisi semua record-record yang telah di sortir.
  3. Cutput, dimana menyalin file gabungan yang telah tersortir kemudian storage terakhir.
Faktor-faktor yang mempengaruhi metode eksternal sort antara lain :
1.    Jumlah record yang akan disortir
2.    Ukuran record (panjang record)
3.    Jumlah storage yang digunakan
4.    Kapasitas internal memori
5.    Distribusi nilai key dalam input file

Teknik sort/merge file ini berbeda satu dengan yang lainnya dalam hal :
  1. Metode sort internal yang digunakan.
  2. Jumlah main memori yang disediakan untuk sort internal.
  3. Distribusi dari sorted sublist di secondary storage menjadi satu atau lebih file gabungan dalam satu langkah gabungan ( merge pass )
Macam-macam teknik sort/merge file adalah :
a.    Natural Merge
b.    Balanced Merge
c.    Polyphase Merge
d.    Cascade Merge

Natural Merge: Merge yang menangani 2 input file sekaligus disebut 2 way natural merge, merge yang menangani M input file sekaligus disebut M Way Natural Merge. M menunjukkan derajat merge. M Way Natural Merge dapat didefinisikan sebagai merge dengan M input file dan hanya satu output file.

Balance Merge: Keperluan penggunaan tape pada Natural Merge dapat dikurangi dengan menggunakan Balanced Merge. Pada Balanced Merge, tidak ada lagi langkah pendistribusian hasil merge ke dalam beberapa tape. Balanced Merge pada awalnya ada keseimbnagan antra input file dan ouput file, walau pada akhirnya tak ada lagi keseimbangan antara input dan output file

Polyphase Merge: Pada M Way Polyphase Merge digunakan 2M – 1 input file dengan 1 output file sekaligus.

Cascade Merge: Berusaha mengurangi penyalinan dan pembacaan record-record. Cascade Merge dengan derajat M menggunakan input file : 2 M – 1, kemudian 2M – 2 dan 2M 3,----------, ; 2 input file selama tiap tahap merge. 3 Way Cascade menggunakan 3 dan 2 file input selama tiap tahap merge.

INDEXED SEQUNTIAL ACCESS METHODE (ISAM): Metode ini merupakan kompromi antara metode akses sequential dan akses direct (random). Di mana record disimpan secara berurutan dengan kunci attribute hingga pengolahan secara sequential dapat dilakukan. Tetapi indesk jugs di pelihara.

PERTEMUAN 11 PENELUSURAN
Penelusuran Sequential: Teknik penelusuran yang paling sederhana adalah Sequential Search (penelusuran sekuential). Teknik ini dimulai pada head list dan penelusuran record yang diinginkan dengan mengujisetiap urutan record yang diinginkan dengan menguji setiap urutan record sampai salah satu penelusuran berlangsung dengan sukses atau daftar list yang tidak sempurna. Teknik ini menggunakan Sequential List dan Linked List.

Algortima Pencarian (Seaching Algorithm): Merupakan algoritma yang menerima argumen K (sebagai kunci) dan dengan langkah-langkah tertentu akan mencari record yang kuncinya bernilai K. Algoritma tersebut bisa menemukan record secara utuh atau hanya memperoleh pointer yang menunjuk ke record yang dimaksud.

Setelah proses pencarian dilaksanakan akan diperoleh salah satu dari dua kemungkinan yaitu :
·         Data yang dicari ditemukan (Succesfull).
·         Data yang dicari tidak ditemukan (UnSuccesfull)

Algoritma :
  • Data yang dicari dibandingkan satu persatu sampai data tersebut ditemukan atau tidak ditemukan.
  • Pada saat data yang dicari sudah ketemu, maka proses pencarian langsung dihentikan.
  • Tetapi jika data yang dicari belum ketemu, pencarian diteruskan sampai seluruh data dibandingkan.
  • Dalam kasus paling buruk (Worst Case) untuk elemen N elemen harus dilakukan pencarian sebanyak N kali pula.
  • Jika data yang dicari tidak ditemukan maka data tersebut akan ditambahkan pada vektor yang sudah ada dan diletakkan pada elemen paling akhir.
Pengurutan Kunci: Mengurutkan satu daftar yang disesuaikan dengan nilai kunci bisa meningkatkan efisiensi skema penelusuran. Dalam Kasus sequential Search tidak perlu terlalu lama menelusuri daftar bila record tidak ada. Hanya memerlukan penelusuran sampai melalui tempat logikanya dalam daftar yaitu sampai melalui satu record dengan nilai kunci yang lebih besar.

Penelusuran Biner (Binary Search): Pokok pikiran pencarian biner pada struktur file sekuensial adalah :
  1. Argumen pencarian adalah atribut kunci.
  2. Pencarian dimulai mengakses tengah file, membaginya secara berulang sesuai hasil perbandingan nilai kunci record dengan nilai yang dicari.
  3. Saat blok diambil, record pertama dan terakhir diperiksa untuk mengetahui keberadaan record di blok itu.
  4. Jumlah pengambilan (fetch) tidak tergantung jumlah record (n) tetapi tergantung pada jumlah blok (b=n/Bfr).
  5. Jumlah pengaksesan blok yang diharapkan adalah 2log(b).
PERTEMUAN 12 MANAJEMEN BERKAS
Komponen-komponen Sistem Berkas. Ada 4 komponen sistem berkas yaitu :
  1. Disk Management: Menjelaskan bagaimana seharusnya menyusun blok-blok disk ke dalam file.
  2. Naming: Berguna bagi pemakai yang memungkinkan untuk menunjuk file dengan penamaan, yaitu dengan blok disk.
  3. Protection: Satu cara untuk memproteksi pemakai-pemakai file dari pemakai lain.
  4. Reliability: Sistem berkas harus handal. File-file yang diperlukan ada tersedia jika sistem terjadi kerusakan.
Gambaran Sistem Berkas: Gambaran Sistem berkas meliputi :
  1. Gambaran pemakai (User View): Pemakai menggunakan nama-nama file dan melihat bagaimana ukuran filenya dalam byte (see the size of their file in bytes)
  2. Gambaran Sistem (System View): Sistem Operasi melihat sistem berkas sebagai sekumpulan blok (virtual) dan ukuran file dalam sector (fisik). Blok dan sektor tidak perlu berada dalam ukuran yang sama.


Arsitektur Sistem Berkas meliputi :
1.    Organisasi File: - Pile, - Sequential, - Sequential Indexed, - Indexed, - Hashed/Direct
2.    I/O Logik
3.    Supervisor I/O
4.    Sistem Berkas Dasar
5.    Disk Device Driver
6.    Tape Device Driver

Organisasi dari sistem berkas sedikit ditentukan oleh pemakaian poka file-filenya itu sendiri. Ada tiga cara dimana file-file bisa diakses :
  • Sequential Access: File diakses dari awal dan dibaca secara sequential.
  • Random Access: Beberapa data dalam satu file bisa diakses disetiap waktu.
  • Content-based Access: Data dalam file-file diakses berdasarkan isi dari file. Tipe file akses ini biasanya tidak disediakan oleh sistem operasi, tetapi disediakan oleh satu program yang terpisah.
Device Driver
·         Berada pada level paling rendah
·         Berkomunikasi secara langsung dengan device periperal
·         Bertanggung jawab untuk memulai operasi I/O pada device
·         Menyelesaikan permintaan I/O
o   Memulai kembali permintaan dalam kasus adanya kesalahan-kesalahan
o   Kegagalan permintaan dalam kasus terlalu banyaknya gangguan/kerusakan.

Sistem Berkas Dasar
·         Input/Output fisik.
·         Giliran dengan mempertukarkan blok-blok data.
·         Berkenaan dengan penempatan blok-blok.
·         Berkenaan dengan buffering blocks.

Supervisor dasar I/O
·         Bertanggung jawab untuk mengawali dan mengakhiri file I/O.
·         Berkenaan dengan akses penjadwalan untuk oprimasi kinerja.

Metode Akses
·         Merefleksikan perbedaan struktur file
·         Cara yang berbeda untuk menyimpan dan memproses data

Fungsi-fungsi Manajemen File
  • Mengenali dan mengalokasikan satu file yang dipilih
  • Menggunakan satu direktori untuk menggambarkan lokasi semua file ditambah atribut-atributnya.
  • Blocking untuk mengakses file-file
  • Pengalokasian file-file untuk Blok-blok bebas
  • Mengelola penyimpanan bebas utnuk menyediakan blok-blok
Operasi-operasi berkas pada file-file tidak terstruktur
CreateFile(pathname)
DestroyFile(pathname)
OpenFile(pathname, read/write)
ReadFile(FID, byte-range, untuk meletakkan byte ke memori utama)
WriteFile(FID, byte-range to write, untuk mencari bytes di memori utama)
CloseFile(FID)
PositionPointer(FID, posisi untuk pointer dalam byte)

Operasi-operasi berkas pada file-file terstruktur
  • Retrieve_All, Retrieve_Few, Retrieve_One: (misal : di pemrosesan sequential, semua record sudah memenuhi beberapa kriteria)
  • Retrieve_Next, Retrieve_Previous: (misal : Pengisian dalam formulir, pencarian satu file)
  • Insert_One, Delete_One: (misal : untuk menambah pegawai baru)
  • Update_One: (misal : menambah gaji pegawai)
Kriteria Untuk Organisasi File
·         Cepatnya pengaksesan
o   Diperlukan ketika mengakses satu record tunggal
o   Tidak diperlukan untuk modus tumpukan (batch mode)
·         Mudah Untuk Pembaruan (update
·         Penyimpanan yang Ekonomis
o   Sedikitnya kerangkapan data
o   Kerangkapan data bisa digunakan untuk kecepatan akses sebagai satu indeks
o   Mudah Pemeliharaan
o   Handal

Atribut-atribut Berkas: Attribut-atribut Berkas bisa dikumpulkan dalam satu file header (Inode) meliputi :
·         Nama file
·         Tipe file
·         Pemilik
·         Tanggal pembuatan
·         Tanggal terakhir diakses
·         Ukuran sebenarnya
·         Hak pengaksesan
·         Hubungan ke blok-blok data (alamat fisik)
·         Data statistik

Tidak ada komentar:

Posting Komentar