tugas basisdata gangga

Upload: gangga

Post on 06-Jan-2016

42 views

Category:

Documents


0 download

TRANSCRIPT

Kmmm

KmmmOrganisasi sequensial adalah merupakan cara yang paling dasar untuk mengorganisasikan kumpulan record-record dalam sebuah berkas.File dapat dipengaruhi oleh 3 faktor yaitu:Karekteristik dari media penyimpananVolume dan frekuensi ditransaksi yang diproses.Respone time yang diperlukan.KONSEP DASAR ORGANISASI SEQUENSIAL1.RecordDalam organisasi sequensial, pada waktu record dibuat, record-record direkam secara berurutan. Record pertama ditempatkan pada posisi pertama dalam berkas, record kedua ditempatkan pada posisi kedua dalam berkas dan seterusnya. Begitu pula pada waktu pengaksesan dan pada waktu berkas ini digunakan sebagai input, record-record harus diakses secara berurutan.Dalam organisasi berkas sequential, bukan berarti bahwa record-recordtersebut disimpan dalam urutan numerik. Jika kita ingin menambahkan suatu record pada berkas sequential, maka record tersebut akan terletak pada akhir berkas. Jika kita ingin menambahkan suatu record pada berkas sekuensial, maka record tersebut akan tercetak pada akhir berkas.Organisasi berkas sequential dapat terdiri dari record-record yang berbeda jenis.Contoh:Pada gambar, dalam sistem penggajian terpadu (Intergrated personnel-payroll system) mempunyai sebuah berkas pegawai (Employee file) yang terdiri dari dua jenis record, yaitu:Personnel RecordRec typeempnonameaddressmaritalstatussexHome logMil codeeducso

Payroll RecordRec typeempnoEmpno typeaccounBase salrate% timerespdeptDate startDate chnge

Record-record pada berkas tersebut tidak memerlukan format dan ukuran yang sama.Pada contoh tersebut, berkas disortir berdasarkan : EMP-NO, REC-TYPEProsesKarena record-record dalam organisasi berkas sequential harus diakses secara berurutan, maka berkas sekuensial lebih sering menggunakan batch processing dari pada interactive processing.KeuntunganAdapun keuntungan utama dari teknik organisasi berkas sequential adalahkemampuan untuk mengakses record berikutnya secara tepat.karena recod tersusun secara berurutanPola AksesPola Akses adalah penentuan akses berdasarkan field tertentu. Selama pola akses, berkas sequential dapat dipasangkan dengan record-record yang sudah diurut pada berkas, maka waktu aksesnya sangat baik. kita harus menentukan pola akses terlebih dahulu, kemudian menentukan organisasi berkas sequential berdasarkan urutan yang sesuai dengan pola aksesnya.Media Penyimpanan Berkas SequensialBerkas sequential dapat disimpan dalam SASD, seperti magnetic tape atau pada DASD, seperti magnetic disk.Beberapa alasan kenapa menyimpan berkas sequensial pada DASD:a. Pada umumnya komputer dihubungkan dengan sedikit tape drive, sehingga tidak cukup untuk menunjang program aplikasi yang banyak membutuhkan berkas sekuensial.Contoh : Jika 3 berkas sequential seperti master file, transaction file dan updata master file yang digunakan oleh sebuah program, karena hanya ada 2 tape drive, maka salah satu dari ketiga berkas tersebut disimpan dalam disk .b. Sistem yang dikonfigurasikan untuk fungsi berkas tertentu, selalu disimpan dalam disk.Contoh Sebuah sistem akan dikonfigurasikan dengan 2 tape drive pada satu saluran dan 2 disk drive pada saluran lain. Jika volume data besar yang dihasilkan oleh sebuah program dari 2 berkas sequential maka akan menguntungkan bila berkas berkas tersebut diletakan pada peralatan yang salurannya digunakan bersama sama.c. Karakteristik lalu lintas saluran dan kapasitas saluran pada sistem dapat dibuat menguntungkan dengan cara memisahkan berkas-berkas dalam media penyimpanan.Operasi-operasi dasarPembuatan Berkas Sequential Pembuatan berkas sequential meliputi penulisan record-record dalam serangkaian yang diinginkan pada media penyimpanan .Pembuatan berkas transaksi sequential meliputi tugas-tugas: Pengumpulan data Perubahan data dalam bentuk bahasa yang dapat dibaca oleh mesin Pengeditan data Pemeriksaan transaksi yang ditolak Penyortiran edit dataPembuatan Berkas LaporanDalam pembuatan berkas laporan sequential dikenal 3 jenis record :1) Header Record;Mencakup report header, page header dan group header. Dikenal sebagai informasi pengenal (Identifying Information).2) Detail Record;Mencakup isi laporan yang umumnya disusun dalam kolom.3) Footer Record;Mencakup report footer, page footer dan group footer. Dikenal sebagai informasi ringkasan (Summary Information).Retrieval Terhadap Berkas SequentialRecord pada berkas sequential di retrieve secara berurutan. Dimana recordtersebut ditulis pada berkas menentukan urutan dimana record tersebut di dapat kembali.Retrieve dari sebuah berkas dapat dibagi 2, yaitu : Report Generation dan Inquiry,yang bergantung pada jumlah data yang dihasilkan.Pada umumnya berkas sequential diakses dalam model report generation. Karena record-record harus diakses secara berurutan, tentunya lebih efisien mengakses setiap record dari berkas tersebut.Inquiry dari berkas sequential mengalami hambatan, karena organisasi berkas ini memerlukan pengaksesan record secara satu persatu. Namun ada inquiry yang memerlukan pengaksesan semua record dari berkas.Hit RatioBanyaknya record yang harus diakses untuk mendapatkan informasi yang diinginkan dibagi dengan banyaknya record dalam berkas tersebut .Contoh :Inquiry NPM = 0029207 memerlukan pengaksesan record sebanyak 10 dari 100 record yang ada dalam berkas mahasiswa.Hit Ratio = 10/100 = 0.1a. Semakin rendah hit ratio, semakin tidak baik bila menggunakan organisasi sequential.b. tinggi hit ratio, semakin baik bila menggunakan organisasi sequential. Kinerja system berkas sequensialUpdate Terhadap Berkas SequentialTelah kita ketahui bahwa master file berisi data yang relatif tetap. Tetapi kadangkadang kita perlu mengadakan perubahan pada berkas tersebut. Hal ini kita sebut sebagai proses Update.Frekuensi dimana sebuah master file harus di-update bergantung pada factor-faktor : Tingkat perubahan data Ukuran dari master file Kebutuhan yang mendesak dari data yang sedang berjalan pada master file File activity ratioFile Activity RatioBanyaknya record pada master file yang di-update dibagi dengan banyaknya record padamaster file.Contoh : Transaction file Master File 101 Bimo 75 101 Bimo je.A 50102 Amalia 70 103 seno je.C 30103 Seno 60 104 Henni je Z 50 105 Pandu je.D 70File Activity Ratio : 1+1= 0.5 4 Semakin tinggi file activity ratio, semakin lama proses peng-update-an master file Semakin tinggi kebutuhan akan data yang baru pada master file, maka semakin sering file tersebut diakses. Semakin sering master file diupdate, semakin tinggi biaya pemrosesannya. Kebanyakan berkas sequential tidak dapat di-update langsung di tempat, karena untuk meng-update biasanya diperlukan berkas baru sebagai pengganti berkas lama.Di bawah ini akan ditunjukkan gambar system flow diagram untuk meng-update sebuah berkas sequential.

Generation FileSelama next cycle pada proses update, new master file yang sekarang akanmenjadi old master file. Menjadi banyaknya master file inilah yang disebut sebagai Generation File. File yang mempunyai nama yang sama, tetapi berbeda nomor generasinya. Jika old master sekarang merupakan generasi 1, maka new master berikutnyamerupakan generasi 2, new master pada next cycle menjadi generasi 3, dan seterusnyaJenis update Ada 3 jenis update yang dapat dilaksanakan pada master file : Insert a new record Delete an existing record Modify an existing record Kinerja Sitem berkas sequensialMenangani Kesalahan Dalam pelaksanaan update dapat ditemukan beberapa kesalahan ,seperti : Insert record that already exists Delete a record that does not exist Modify a record that does not existContoh : Master File Trans Type 101 101 1102 103 2 1 : Delete103 105 1 2 : Insert104 107 3 3 : Modify101 21File activity ratio : 4Contoh Sebuah master file berisi 10 record. Transaksi yang akan diproses adalah sebagai berikut :Rec-IdTrans Type

1112

1111

963

40011 : Insert

9612 : Delete

11123 : Modify

4003

3423

962

4 File activity ratio = 10DEKLARASI BERKAS SEQUENTIAL DALAM BAHASA COBOL

INCLUDEPICTURE \d "C:\\Users\\prasida\\AppData\\Local\\Temp\\msohtmlclip1\\01\\clip_image008.gif" \* MERGEFORMAT SELECT [OPTIONAL] filename ASSIGN TO [implementor-name] [ RESERVE integer AREAS ] AREA [ ORGANIZATION is SEQUENTIAL ] [ ACCESS MODE is SEQUENTIAL ] [ FILE STATUS is data-name ]. ORGANISASI BERKAS INDEKS SEQUENTIALPengertian organisasi berkas Index SequensialOrganisasi berkas indeks sequential adalah Berkas/file yang disusun sedemikian rupa sehingga dapat diakses secara sequential maupun secara direct (langsung) atau kombinasi keduanya, direct dan sequential Data merupakan segala sesuatu yang masih dalam bentuk bahan mentah yang akan diprosesKonsep Dasar ORGANISASI BERKAS INDEKS SEQUENTIALStruktur PohonSebuah pohon adalah struktur dari sekumpulan elemen, dengan salah satu elemennya merupakan akarnya dan sisanya yang lain merupakan bagian-bagian pohon yang terorganisasi dalam susunan berhirarki dengan akar sebagai puncaknya.Contoh umumnya adalah pada penyusunan silsilah keluarga, hirarki suatu organisasi, daftar isi suatu buku dan lain sebagainya.Secara rekursif suatu struktur pohon dapat didefinisikan sebagai berikut :1. Sebuah simpul tunggal adalah sebuah pohon.2. Bila terdapat simpul n, dan beberapa sub pohon T1, T2, ..., Tk, yang tidak saling berhubungan, yang masing-masing akarnya adalah n1, n2, ..., nk, dari simpul / sub pohon ini dapat dibuat sebuah pohon baru dengan n sebagai akar dari simpul-simpul n1,n2, ..., nk.Pohon BinerPohonBiner adalah pohon yang setiap simpulnya memiliki paling banyak dua buah cabang / anak. Adapun jenis akses yang diperbolehkan, yaitu : Akses Sekuensial Akses DirectSedangkan jenis prosesnya adalah : Batch InteractiveStruktur Berkas Indeks sekuensial Indeks Binary Search Tree Data SekuensialModel operasi file :A. CreationB. UpdateC. Retrieval ( pengaksesan file ) Comprehensip : mendapatkan semua informasi pada file Selektifer : mendapatkan informasi pada record record dengan suatu persyaratan tertentuD. Maintenance ( perubahan untuk memperbaiki tampila program ) Restructuring ReorganizationIndeks disusun berdasarkan binary search tree dan digunakan untuk melayani sebuah permintaan untuk mengakses sebuah record tertentu . Berkas data sequential digunakan untuk mendukung akses sequential terhadap seluruh kumpulan record-record.Implementasi Organisasi Berkas Indeks SequentialAda 2 pendekatan dasar untuk mengimplementasikan konsep dari organisasi berkas indeks sequential :_ Blok Indeks dan Data (Dinamik)_ Prime dan Overflow Data Area (Statik)Kedua pendekatan tersebut menggunakan sebuah bagian indeks dan sebuah bagian data,dimana masing-masing menempati berkas yang terpisah.Blok Indeks Dan DataPada pendekatan ini berkas indeks dan berkas data diorganisasikan dalam blok. Berkas indeks mempunyai struktur tree, sedangkan berkas data mempunyai struktur sequential dengan ruang bebas yang didistribusikan antar populasi record. Setiap entry pada indeks mempunyai bentuk (nilai key terendah, pointer), dimana pointer menunjuk pada blok yang lain, dengan nilai key-nya sebagai nilai key terendah. Setiap tingkat dari blok indeks menunjuk seluruh blok, kecuali blok indeks pada tingkat terendah yang menunjuk ke blok data.Jika sebuah permintaan untuk mengakses record tertentu, misal kita inginmengakses dengan nilai key BAT, indeks dengan tingkat tertinggi (dalam hal ini blok indeks 3-1) yang pertama yang akan dicari pada contoh ini, pointer dari AARDVARK menunjuk blok indeks 2-1. Pointer yang ditunjuk pada kotak tersebut adalah pointer yang berisikan AARDVARK, yang akan menunjuk ke blok indeks 1-1. POinter berikutnya yang akan ditunjuk adalah pointer yang berisi BABOON, yang selanjutnya akan menunjuk blokBlok data ini akan mencari untuk record dengan key tujuan, yaitu BAT, dimanapada blok ini record tersebut ditemukan.Permintaan untuk akses data dalam urutan sequential dilayani dengan mengakses blok data dalam urutan sequential. Sebagai catatan blok data merupakan consecutive secara logik dan bukan consecutive secara fisik. Dalam hal ini, blok data harus dihubungkan secara bersama dalam urutan secara logik, seperti terlihat pada gambar.Misal :Setiap blok data mempunyai ruang yang cukup untuk menampung 5 record dansetiap blok indeks mempunyai ruang yang cukup untuk menyimpan 4 pasang (nilai key,pointer).Parameter ini biasanya sudah dilengkapi dengan rutin dukungan sistem manajemen data, pada saat berkas binatang ini dibentuk.Jika kita menginginkan penyisipan maupun penghapusan terhadap isi berkas, maka blok indeks dan blok data akan dibuat dengan sejumlah ruang bebas, yang biasanya disebut sebagai padding dan pada gambar ditunjukkan sebagai irisan.Permintaan : INSERT APE INSERT AIREDALEPRIME DAN OVERLOW AREA Pendekatan lain untuk mengimplementasikan berkas indeks sequential adalah berdasarkan struktur indeks dimana struktur indeks ini lebih ditekankan pada karakteristik hardware (fisik) dari penyimpanan, dibandingkan dengan distribusi secara logik dari nilai key. Indeksnya ada beberapa tingkat, misalnya tingkat cylinder indeks dan tingkat track indeks. Berkas datanya secara umum diimplementasikan sebagai 2 berkas, yaitu prime area dan overflow area. Misalnya setiap cylinder dari alat penyimpanan mempunyai 4 track. Pada berkas binatang ada 6 cylinder yang dialokasikan pada prime data area. Track pertama (nomor 0) dari setiap cylinder berisi sebuah indeks pada record key dalam cylinder tersebut.KkjioSistem Berkas Organisasi BerkasRelatif

ORGANISASI BERKAS RELATIFSuatu berkas yang mengidentifikasikan record dengan key yang diperlukan.

Record tidak perlu tersortir secara fisik menurut nilai key.

Organisasi berkas relatif paling sering digunakan dalam proses interaktif.

Tidak perlu mengakses record secara berurutan (consecutive).

Sebaiknya disimpan dalam Direct Access Storage Device (DASD) seperti magnetic disk/drum.

Kemampuan Berkas RelatifKemampuan mengakses record secara langsung.

Record dapat di retrieve, insert, modifikasi dan delete tanpa mempengaruhi record lain dalam berkas yang sama.

Tiga teknik dasar fungsi Pemetaan RPemetaan langsung (Direct Mapping)

Pencarian Tabel (Directory Look-up)

Kalkulasi (Calculating)

Teknik Pencarian TabelDasar pemikirannya adalah direktori dari nilai key dan address.

Lebih cepat menggunakan binary search dibanding dengan sequential search.

Keuntungan :

1. Dapat meng-akses record dengan cepat bila diketahui nilai key.

2. Nilai key berupa field, dapat diterjemahkan menjadi alamat. (select nama, where nama = ??????). (select * from tmhs order by npm)

3. Nilai key adalah address space indepedent.

Teknik Kalkulasi AlamatR (Nilai key) address

Nilai key = dengan melakukan kalkulasi terhadap nilai key.

Benturan (collision) dapat terjadi apabila terdapat alamat relatif yang sama untuk nilai key yang berbeda.

Cara mengatasi benturan, antara lain :

Scatter diagram techniques

Randomizing techniques

Key to address transformation methods

Direct addressing techniques

Hash tables methods

Hashing

Keuntungan Hashing :

Nilai key dapat digunakan langsung.

Nilai key adalah address space berubah.

Kelemahan Hashing :

Membutuhkan waktu proses untuk implementasi dan mengatasi benturan.

Teknik Pemetaan LangsungDua cara Peetaan Langsung :1. Pengalamatan Mutlak (Absolut Addressing) ;R (Nilai key) Address

Nilai key = alamat mutlak

Nilai key = alamat sebenarnya dimana record tersimpan. Pada saat penyimpanan dan pemakaian record, harus diketahui dan diberikan pemakai.

Keuntungan :1) Fungsi Pemetaan R sangat sederhana.

2) Retrieve lebih cepat.

Kelemahan :1) Harus diketahui penyimapanan record secara fisik.

2) Nilai key tidak boleh hasil perhitungan.

3) Alamat mutlak adalah device independent.

4) Alamat mutlak adalah address space dependent.

2. Pengalamatan Relatif (Relative Addressing) ;R (Nilai key) Address

Nilai key = alamat relatif.

Nilai key = urutan record tersebut dalam berkas.

Keuntungan :1) Fungsi Pemetaan R sangat sederhana.

2) Penetuan nilai key tidak perlu waktu proses yang lama.

Kelemahan :1) Alamat relatif adalah address space dependent.

2) Terjadinya pemborosan ruangan.

Contoh :

4 digit untuk jenis barang (9999).

Padahal hanya ada 2000 jenis barang.

Pemborosan 80% ruang penyimpanan.

Tujuan Utama Hashing :Agar dua buah kunci yang berbeda tidak mempunyai nilai relative address yang sama.

Perbandingan fungsi hash :Division Remainder ;Menggunakan metode pembagian.

Untuk distribusi nilai key yang tidak diketahui.

Mid Square ;Menggunakan metode perpangkatan.

Untuk file dengan faktor cukup rendah.

Folding ;Menggunakan metode penjumlahan.

Mudah dalam perhitungan, baik bila panjang nilai key = panjang address.

Pendekatan masalah Collision :Open Addressing ;Menemukan address yang bukan home address untuk K2.

Separate Overflow ;Menemukan address untuuk K2 di luar primary area yakni di overflow area.

Teknik Mengatasi Collision :Linier Probing (Pendekatan Open Addressing) ;Proses pencarian secara sequential dari home address sampai lokasi yang kosong.

Harus ada penentuan apakah address kosong.

Addressing (Pendekatan Separate Overflow) ;Menggunakan double hashing.

Memakai fungsi hash kedua terhadap hasil dari fungsi hash pertama.

Hasilnya bisa di primary area atau separate overflow area.

Perbandingan kedua teknik :

Linier ProbingDouble hashing

* menghasilkan synonim berkelompok

* cocok untuk faktor muat rendah* menghasilkan synonim berpencar

* cocok untuk faktor muat tinggi

Fungsi hash yang umum digunakan :Division Remainder

Mid Square

Folding

Division RemainderR(nilai key) address

Nomor relatif dari suatu nilai key merupakan sisa dari hasil pembagian nilai key tersebut denga suatu bilangan.

Mid SquareR (Nilai key) Address

Nilai key dikuadratkan kemudian beberapa digit diambil dari tengah. Alamt relatif, diambil mulai dari digit

FoldingNilai key dibagi menjadi beberapa bagian.

Setiap bagian (kecuali bagian terakhir) mempunyai digit sama dengan digit alamat relative.

Bagian-bagian ini dilipat dan dijumlah.

Hasil penjumlahan adalah alamat relatif (digit tertinggi dibuang bila diperlukan).

Synonim Chaining (Penggandengan)

Menggabung synonim bersama-sama.

Tidak mengurangi jumlah collision tetapi mengurangi waktu akses untuk meretrieve.

Bucket Addressing

Hash ke dalam blok yang memberikan tempat bagi sejumlah record.

LkjjiiORGANISASI BERKAS RELATIF

PENGERTIAN BERKAS RELATIFSuatu cara yang efektif dalam mengorganisasi sekumpulan record yang membutuhkan akses sebuah record dengan cepat. dalam berkas relative ada hubungan antara key yang dipakai untuk mengidetifikasi record dengan lokasi record dalam penyimpanan sekunder. urutan record secara logic tidak ada hubungannya dengan urutan secara fisik menurut nilai key.PROSESpada waktu sebuah record ditulis kedalam berkas relative. fungsi pemetaan R digunakan untuk menerjemahkan NILAI KEY DARI RECORD menjadi ADDRESS, dimana record tersebut disimpan. Begitu pula pada waktu akan me-retrieve record dengan nilai key tertentu, fungsi pemetaan R digunakan terhadap nilai key tersebut, untuk menerjemahkan nilai key itu menjadi sebuah address dalam penyimpanan sekunder, dimana record tersebut ditemukan. Organisasi berkas relatif ini tidak menguntungkan bila penyimpanan sekundernya berupa media SASD, seperti magnetic tape. Berkas relative harus disimpan didalam media SASD, seperti disk atau Drum. dimungkinkan untuk mengakses record-record dalam berkas relatif secara consecutive, tetati perlu diketahui bahwa nilai key tidak terurut secara logic.Ada3 teknik dasar yang digunakan untuk menyatakan fungsi pemetaan R, dimana R(NILAI KEY) ADDRESS:Direct Mapping (Pemetaan Langsung)Directory Lookup (Pencarian Tabel)Calculation (Kalkulasi)Penjelasan:Teknik Direct Mapping (Pemetaan Langsung)teknik ini merupakan teknik yang sederhana untuk menerjemahkan nilai record key menjadi address.Ada2 cara dalam pemetaan langsung, yaitu:- Absolute Addressing (Pengalamatan Mutlak).R (NILAI KEY) ADDRESSNILAI KEY = ALAMAT MUTLAKNilai key yang diberikan oleh pemakai program sama dengan ADDRESS sebenarnya dari record tersebut pada penyimpanan sekunder. pada waktu record disimpan, lokasi penyimpanan record (nomor silinder, nomor permukaan, nomor record) bila dipakai Cylinder Addressing bila dipakai Sector Addressing harus ditentukan oleh pemakai.Untuk teknik pengalamatan mutlak ini kita tidak perlu mempermasalahkan kunci atribut karena kita diminta lansung menuliskan dimana alamat record yang akan kita masukkan . jika kita menggunakan hard disk atau macnetic drum, ada dua cara dalam menentukan alamat memorinya, yaitu:Cylinder AddressingSector Addressingjika kita menggunakan Cylinder Addressing , maka kita harus menetapkan nomor-nomor dari silinder (Sylinder), permukaan (Surface), dan Record. Sedangkan bila kita menggunakan Secto Addresing, maka kita harus menetapkan nomor-nomor dari sektor (Sector), lintasan (Track), dan permukaan (Surface). teknik ini mudah dalam pemetaan (pemberian alamat memorinya).Keuntungan dari Pengalamatan Mutlak:Fungsi Pemetaan R sanant sederhana.tidak membutuhkan waktu yang lama dalam menentukan lokasi record pada penyimpanan sekunder.Kelemahan dari Pengalamatan Mutlak:Pemakai harus mengetahui dengan pasti record-record yang disimpan secara fisikalamat mutlak adalah device dependent. perbaikan atau pengubahan device, dimana berkas berada akan mengubah nilai key.Alamat mutlak adalah address spase dependent. Reorganisasi berkas relative akan menyebabkan nilai key berubah.- Relatif Addressing (Pengalamatan Relatif).Teknik ini menjadi atribut kunci sebagai alamat memorinya, jadi data dari NIM dijadikan bertipe numeric (Integer) dan dijadikan alamat dari record yang bersangkutan. cara ini memang sangat efektif untuk menemukan kembali record yang sudah disimpan, tetapi sangat boros pengunaan memorinya. tentu alamat memorinya mulai dari 1 higga alamat ke sekian juta tidak digunakan karena nilai dari NIM tidak ada yang kecil. pelajari keuntungan dan kerugian lainnya. teknik ini termasuk dalam katagori address space dependent.Keuntungan dari Pengalamatan Relatif:Fungsi pemetaan R sangat sederhana.Nilai Key dari sebuah record dapat ditentukan lokasi recordnya dalam sebauh penyimpanan sekunder tanpa memerlukan waktu proses yang berarti.Kelemahan dari Pengalamatan Relatif:Alamat Relatif adalah bukan device dependendent.Alamat Relatif adalah address space dependent.Terjadinya pemborosan ruangan.Directory Lookup (Pencarian Tabel)dalam pencarian tabel adalah sebuah table atau direktori dari nilai key dan address. Teknik ini dilakukan dengan cara, mengambil seluruh kunci atribut dan alamat memori yang ada dan dimasukkan ke dalam tabel tersendiri. jadi tabel misalnya disebut dengan tabel index hanya berisi kunci atribut misalkan NIM yang telah disorting/urut dan alamat memorinya. Sewaktu dilakukan pencarian data, tabel yang pertama dibaca adalah tabel yang diberi nama tabel index. setelah ditemukan atribur kuncinya, maka data alamat yang ada disana digunakan untuk meraih alamat record dari data(berkas,file atau tabel) yang sebenarnya. pencarian yang dilakukan di tabel index akan lebih cepat dilakukan dengan teknik pencarian melaui binary search daripada dilakukan dengan cara sequential.Nilai key field (kunci atribut) bersifat address space independent (tidak terpengaruh terhadap perubahan organisasi file-nya), yang berubah hanyalah alamat yang ada indexnya.Keuntungan dari Pencarian Tabel:Sebuah record dapat diakses dengan cepat, setelah nilai key dalam direktori ditentukan.Nilai key dapat berupa field yang mudah dimengerti.Nilai key adalah Address Space Independent, dimana reorganisasi berkas tak akan mempengaruhi nilai key, yang berubah adalah alamat direktori.Calculation (Kalkulasi)pada teknik pencarian tabel kita harus menydiakan ruang memori untuk menyimpan tabel indexnya, tapi dalam teknik kalkulasi tidak diperlukan lagi hal itu. yang dilakukan adalah membuat hitungan sedemikian rupa sehingga dengan memasukkan kunci atribut recordnya, alamatnya sudah dapat diketahui, masalahnya bagaimana membuat hitungan dari kunci atribut itu sehingga hasilnya dapat lebih efisien dan tidak berbenturan dengan nilainya.keadaan dimana:R(K1) = R(K2)K1 .K2(DISEBUT BENTURAN/COLIISION).Teknik-teknik yang terdapat pada kalkulasi alamat:Scatter Storage Technique.Randomizing Technique.Key-to-address Transformation Methods.Direct Addressing Technique.Hash Table Technique.Hashing.Salah satu contoh penjelasan tentang teknik kalkulasi pengalamatan yaitu pemakaian Scatter Storage Technique, Randomizing Teqhnique, Key-to-address Transformation Methods, Direct Addressing Technique, Hash Table Technique & teknik Hashing antara lain:-Scatter Storage TechniqueSebuah metode baru untuk memasukkan dan mengambil informasi yang digambarkan dalam tabel hash.Metode ini bakal menjadi efisien jika lebih banyak bagian yang sering dilihat . Jumlahyang diharapkan dari kemungkinan untuk mencari entri, diperkirakan secara teoritis dan diverifikasi oleh percobaanMonte Carlo, adalahkurang dari untuk metode sebanding lain jika tabelhampir penuh.-Randomizing TeqhniqueSebuah metode yang digunakan untuk pengambilan data dan informasi secara random (acak).

- Key-To-Address Tranformation MethodsTeknik yang digunakan dalam teori mengkoreksi kesalahan kode. hal ini diterapkan untuk dapat menyelesaikan masalah dalam menangani file besar. dalam pendekatan baru, file menangani masalah yang digambarkan dengan desain khusus untuk menampilkan kelayakan.

- Direct Addressing TechniqueSemua instruksi lain yang diperlihatkan menggunakan pengalamatan langsung yang berarti, bahwa data yang telah direfensikan sebenarnay dan disimpan dalam struktur lain, baik sebuah register atau lokasi memori.

- Hash Table TechniqueMerupakan struktur yang menggunakan fungsi hash untuk efisien peta pengdentifikasi tertentu atau kunci/key (misalkan nama-nama orang) untuk dihubungkan nilai (misalkan nomor telepon mereka). funsi dari hash digunakan untuk mengubah kunci ke indeks (hash) dari array elemen (dalam slot/ember) dimana nilai yang sesuai akan dicari. dalam banyak situasi, hash table technique atau yang sering disebut teknik tabel hash ternyata lebih efisien daripada pohon pencarian atau struktur lookup. Biasanya banyak digunakan diberbagai jenis komputer perangkat lunak terutama untuk array asosiatif, pengideksan database, cache dan set.

Keuntungan menggunakan tenik tabel hash:Keuntungan utamanya dalah kecepatannya. keuntungan ini lebih jelas ketika jumlah entri yang besar (ribuan atau lebih). tabel hash dapat sangat efisien ketika jumlah maksimum entri dapat diprediksi dari sebelumnya, sehingga ember array dapat dialokasikan sekali dengan ukuran optimal dan tidak pernah diubah ukurannya.Jika himpunan pasangan kunci-nilai adalah tetap dan dikenal lebih dulu sehingga insersi serta penghapusan tidak diijinkan. yang dapat mengurangi biaya rata-rata lookup pilihan hati-hati dari fungsi hash, ember ukuran meja dan struktur data internal. Secara khusus, ada kemungkinan dapat menyusun fungsi hash yang tabrakan (bebas ) atau bahkan sempurna.Kelemahan menggunakan teknik tabel hash:Untuk aplikasi pengolahan string tertentu, seperti spell-checking. tebel hash mungkin kurang efisien. jika setiap tombol diwakili oleh sejumlah kecil bit yang cukup, maka bukan sebuah tabel hash yang dapat menggunakan tombol langsung sebagai indeks ke array nilai.Meskipun rata-rata biaya per operasi adalah konstan dan cukup kecil dengan biaya operasi tunggal dapat cukup tinggi. secara khusus, jiak tabel hash menggunakan ukuran dinamis, penyisipan atau penghapusan operasi yang memerlukan waktu sebanding dengan jumlah entri. hal ini dapat dilkatakan kelemahan yang serius secara realtime atau interaktif.tabel hash biasanya, dalam pameran umumnya miskin pemukiman referensi artinya data yang akan deakses didistribusikan tampaknya secara acak di memori. hal ini dikarenakan tabel hash menyebabkan pola akses berupa lompat-lompatm ini dapat memicu cache mikroprosesor yang menyebabkan penundaan yang lama.tabel hash menjadi sangat tidak efisien bila ada banyak tabrakan.

-HashingHashing merupakan teknik mengindeks pada menajemendatabasedimana nilaikunci(yang mengindentifikasikanrecord) dimanipulasi secaranumerikuntuk menghitung langsunglokasirecord yang berkaitan atautitiktolak untuk mencari record yang terkait.Teknik mengindeks pada menajemendatabasedimana nilaikunci(yang mengindentifikasikanrecord) dimanipulasi secaranumerikuntuk menghitung langsunglokasirecord yang berkaitan atautitiktolak untuk mencari record yang terkait.

Keuntungan menggunakan teknik Hashing:Nilai key yang sebenarnya dapat dipakai karena diterjemahkan ke dalam sebuah alamat.nilai key adalah address space independent bila berkas direorganisasi, funsi hash dapat beruabah tetapi nilai key akan tetap.kelemahan menggunakan teknik Hashing:Distribusi nilai key yang dipakai.Banyaknya nilai key yang dipakai relative terhadap ukuran dari ruang alamat.Banyaknya record yang dapat disimpan pada alamat tertentu tanpa menyebabkan benturan.teknik yang dipakai untuk mengatasi benturan.FILE HASHKarakteristik File HashPerbandingan Hash dan File BerindeksPersamaan :Pengaksesan menurut satu atribut tunggalPerbedaan :Record-rekord di file hash tidak mempunyai keterhubungan dengan penerus dan pendahulu.File hash menggunakan komputasi untuk memperoleh alamat record, sedangkan file berindeks mencari di indeks untuk menentukan alamat record.IndeksB-treememerlukan ruangan ekstra untuk mereduksi penyisipan dan menghindari reorganisasi. File hash menggunakan ruang ekstra pada file utama untuk menyederhanakan penyisipan record ke file dan menghindari reorganisasi.File hash disebut juga sebagai direct file karena kemampuan yang ditonjolkan file ini adalah kemampuan operasi pengaksesan secara langsung (direct access).Kelemahanstruktur file ini adalah memaksakan rekord ditempatkan mengikuti satu atibut tunggal, sehingga tidak cocok pengambilan record yang berdasarkan pada field yang bukan merupakan kunci pada fungsi hash.Kji