• Tidak ada hasil yang ditemukan

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

N/A
N/A
Protected

Academic year: 2021

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

Copied!
33
0
0

Teks penuh

(1)

Organisasi File

Semester Ganjil 2014

Fak. Teknik Jurusan Teknik Informatika

U i

i

P

d

Universitas Pasundan

Caca E  Supriana  S Si MT

Caca E. Supriana, S.Si.,MT.

(2)

P

d h l

Pendahuluan

DBMS harus menyimpan data di tempat tertentu, yaitu :

M i  t

‐ Memori utama

y Mahal ‐ dibandingkan dengan penyimpanan sekunder dan tersier

y Cepat ‐ dalam operasi memori yang cepat

y Volatile ‐ tidak mungkin untuk menyimpan data dari satu run ke yangg y p y g berikutnya

y Digunakan untuk menyimpan data saat tertentu ‐ Secondary storage ( hard disk )

y Lebih murah ‐ dibandingkan dengan memori utamaLebih murah  dibandingkan dengan memori utama

y lambat ‐ dibandingkan dengan memori utama , lebih cepat dibandingkan  dengan tape y Persistent ‐ data dari satu run dapat disimpan ke disk untuk digunakan dalam  jangka berikutnya jangka berikutnya y Digunakan untuk menyimpan database ‐ Penyimpanan Tersier ( tape) y Termurah l l b k d b y Paling lambat ‐ akses data berurutan y Digunakan untuk data arsip

(3)

• Ini berarti bahwa data harus

‐ Membaca dari hard disk ke dalam memori ( RAM ) Dit li  d i  i k  h d di k

‐ Ditulis dari memori ke hard disk

• Karena operasi I / O disk maka kinerja query menjadi  lambat, tergantung pada bagaimana data disimpan a bat, te ga tu g pada baga a a data d s pa pada hard disk • Komponen terendah dari DBMS melakukan kegiatan  j   i manajemen penyimpanan • Komponen DBMS lain tidak perlu tahu bagaimana  kegiatan tingkat rendah dilakukang g

(4)

y Sebuah disk diatur menjadi beberapa blok atau  halaman (page) S b h h l   d l h  i   k    di k  y Sebuah halaman adalah unit pertukaran antara disk  dan memori utama y Sebuah kumpulan halaman dikenal sebagai file y Sebuah kumpulan halaman dikenal sebagai file y DBMS menyimpan data dalam satu atau lebih file  pada hard disk pada hard disk

(5)

y Tabel database terdiri dari satu atau lebih tupel ( baris )

y Setiap tuple memiliki satu atau lebih atribut

S    l bih  l  d i  b l di li  k  d l  h l  

y Satu atau lebih tuple dari tabel ditulis ke dalam halaman  pada hard disk y Tupel yang lebih besar mungkin membutuhkan lebih dari Tupel yang lebih besar mungkin membutuhkan lebih dari  satu halaman ! y Tuple pada disk dikenal sebagai record y Catatan dipisahkan dengan pembatas record y Atribut pada hard disk dikenal sebagai field Fi ld  di i hk   l h  b  l y Fields dipisahkan oleh pembatas lapangan

(6)

Organisasi File

Susunan fisik data dalam file ke dalam record dan  halaman (page) pada disk. Organisasi file menentukan  metode akses untuk : metode akses untuk : y Menyimpan dan mengambil catatan dari file. y Oleh karena itu   organisasifile identik dengan  y Oleh karena itu , organisasifile identik dengan  ‘metode akses ‘.

(7)

Organisasi File

Unordered atau Heap files

O d

 

i l fil

Ordered atau sequential files

Hash files

Hash files

(8)

Pemilihan Organisasi File

Pemilihan organisasi file berkaitan dengan operasi berikutg g p y Scan : mengambil semua record dalam file. Halaman  dalam sebuah file diambil dari disk ke buffer pool. y Pencarian dengan seleksi yang setara : mengambil  semua record yang memenuhi syarat pencarian y Pencarian dengan seleksi tertentu : mengambil record  y Pencarian dengan seleksi tertentu : mengambil record  yang memenuhi syarat pencarian tertentu y Insert : menyisipkan record tertentu ke dalam file.  Halaman dalam file tempat record disisipkan  diidentifikasi, halaman di ambil dari disk, dimodifikasi  dengan memasukan record baru dan ditulis kembali ke  dengan memasukan record baru dan ditulis kembali ke  disk. y Delete : menghapus record tertentu.   8

(9)

Heap Files

y Heap files adalah daftar dari record yang tidak terurut  (unordered). y Record disimpan dalam urutan yang sama di mana mereka  dibuat (create) dibuat (create).

y Insert : cepat ‐ karena catatan masuk ditulis pada akhir halaman 

terakhir dari file.

y Cari ( search atau memperbarui ) : lambat ‐ karena pencarian 

y Cari ( search atau memperbarui ) : lambat ‐ karena pencarian  linear dilakukan pada halaman. y Hapus (delete) : lambat ‐ karena catatan yang akan. dihapus  terlebih dahulu harus dicari. y Menghapus catatan menciptakan sebuah lubang  (hole) di  halaman. y Pemampatan file secara berkala yang dibutuhkan untuk  d k k b l b mendapatkan kembali ruang terbuang.

(10)

Sequential Files

Sebuah file sekuensial berisi record yang diatur oleh  urutan di mana record tersebut masuk.

R k  di k   d   il i il i d i     l bih  Rekaman diurutkan pada nilai‐nilai dari satu atau lebih  field yaitu : y Ordering field  field di mana catatan diurutkan y Ordering field ‐ field di mana catatan diurutkan. y Ordering key ‐ kunci file ketika digunakan untuk  merekam serta menyortir. merekam serta menyortir.

(11)

S

i l Fil

Sequential Files

y Cari ( atau memperbarui ) : cepat ‐ karena pencarian biner p p p dilakukan pada pengurutan record yaitu pengindeksan. y Hapus : cepat ‐ karena mencari record cepat,  memampatkan File  secara periodik diperlukan. memampatkan File  secara periodik diperlukan. y Insert : kurang baik ‐ karena jika kita memasukkan rekord  baru di posisi yang benar kita perlu menggeser semua  catatan berikutnya dalam file catatan berikutnya dalam file. y Atau sebuah ‘overflow file' dibuat yang berisi semua  catatan baru sebagai tumpukan. y Secara periodik berkas overflow bergabung dengan file  utama. y Jika berkas overflow dibuat pencarian dan operasi Jika berkas overflow dibuat pencarian dan operasi  menghapus untuk record dalam overflow file meluap harus  linier !

(12)

Hash File

y Hash File umumnya digunakan sebagai metode  verifikasi ukuran file. Proses ini disebut check‐sum verifikasi.  verifikasi.  y Ketika sebuah file yang dikirim melalui jaringan, file  tersebut harus dipecah menjadi potongan‐potongan  k il d  di  k b li  l h  i 

kecil dan dipasang kembali setelah mencapai  tujuannya. 

y Dalam situasi ini jumlah hash merupakan ukuran data Dalam situasi ini jumlah hash merupakan ukuran data  dalam file. Hash kemudian dapat digunakan sebagai  alat untuk memvalidasi seluruh file yang berhasil 

ditransmisikan melalui jaringan ditransmisikan melalui jaringan.

(13)

Hash File

Sebuah array dari bucket y sebuah rekord , dimana r a  adalah fungsi hash , h(r) menghitung  indeks bucket di mana terdapat record r  h  k      l bih fi ld  d l   d   di b   y h menggunakan satu atau lebih fields dalam record yang disebut  bidang hash y Hash key ‐ kunci file bila digunakan oleh fungsi hash C t h f i h h  Contoh fungsi hash : y Asumsikan bahwa nama terakhir staf digunakan sebagai bidang  hash y Asumsikan juga bahwa ukuran file hash adalah 26 bucket  y Asumsikan juga bahwa ukuran file hash adalah 26 bucket ‐ setiap kotak sesuai dengan masing‐masing huruf dari alfabet y Kemudian fungsi hash dapat didefinisikan dengan menghitung  alamat bucket ( index ) berdasarkan huruf pertama dalam nama ( ) p terakhir.

(14)
(15)

y Insert : cepat ‐ karena fungsi hash menghitung indeks  dari bucket yang dimiliki record, jika bucket yang  penuh maka akan mencari bucket lain yang kosong penuh maka akan mencari bucket lain yang kosong y Pencarian : cepat ‐ karena fungsi hash menghitung  indeks bucket y Kinerja dapat menurunkan jika record tidak  ditemukan dalam bucket yang disarankan oleh fungsi  hash hash y Hapus : cepat ‐ sekali lagi untuk alasan yang sama  fungsi hashing mampu menemukan record dengan  t cepat

(16)

Indexing

y Bisakah kita melakukan hal lain untuk meningkatkan  kinerja query selain memilih organisasi file yang baik ?  Ya   jawabannya terletak pada pengindeksan Ya , jawabannya terletak pada pengindeksan y Indeks ‐ struktur data yang memungkinkan DBMS  untuk mencari catatan tertentu dalam file lebih cepat untuk mencari catatan tertentu dalam file lebih cepat y Sangat mirip dengan indeks di akhir buku untuk  mencari berbagai topik yang dibahas dalam bukug p y g

(17)

Jenis Indexing

y Indeks Primer ‐ satu indeks utama per file

y Indeks Clustering ‐ satu Indeks pengelompokan per 

fil   fil  d   i hk   d  fi ld    k i  file ‐ file data memerintahkan pada field non ‐ kunci  dan file indeks dibangun di atas bahwa bidang non – key

key

y Indeks Sekunder ‐ banyak indeks sekunder per file

9Sparse Index ‐ hanya memiliki beberapa nilai kunci Sparse Index  hanya memiliki beberapa nilai kunci  pencarian dalam file

9Dense Index ‐ memiliki indeks yang sesuai dengan  setiap nilai kunci pencarian dalam file

(18)
(19)

Primary Indexes

y File data berurutan memerintahkan pada field kuncie data be u uta e e ta a pada e d u c

y Berkas menyimpan semua indeks ( dense ) atau (  sparse ) nilai dari field kunci dan nomor halaman dari  data file di mana catatan yang sesuai disimpan B002 1 Branch Branch B002 record 1 B003 1 B004 2 Branch

BranchNo Street City Postcode

B002 56 Clover Dr London NW10 6EU B003 163 Main St Glasgow G11 9QX Branch B003 record Branch B004 record Branch B005 record B h B007 d 1 2 B005 2 B007 3 B004 32 Manse Rd Bristol BS99 1NZ B005 22 Deer Rd London SW1 4EH B007 16 Argyll St Aberdeen AB2 3SU

Branch B007 record 3

(20)

Indexed Sequential Access Method

y ISAM ‐ metode akses sekuensial Indexed didasarkan  pada indeks utama M d   k  d f l     i   b l di M SQL    y Metode akses default atau tipe tabel di MySQL ,  MyISAM merupakan perpanjangan dari ISAM y Menyisipkan dan menghapus operasi akan  y Menyisipkan dan menghapus operasi akan  mengganggu penyortiran y Anda perlu overflow file yang secara periodik perlu Anda perlu overflow file yang secara periodik perlu  digabung dengan file utama

(21)

Indeks sekunder

y Sebuah file indeks yang menggunakan bidang non  primer I d k     i k k  ki j       y Indeks yang meningkatkan kinerja query yang  menggunakan atribut selain primary key y Dapat menggunakan indeks yang terpisah untuk  y Dapat menggunakan indeks yang terpisah untuk  setiap atribut yang ingin digunakan dalam clause  query WHERE yang dipilih q y y g p y Terdapat overhead untuk mempertahankan sejumlah  besar indeks ini

(22)

Membuat indeks dalam SQL

y Dapat membuat indeks untuk setiap tabel yang Anda  buat dalam SQL C h y Contoh y CREATE INDEX branchNoIndex on branch(branchNo); y CREATE INDEX numberCityIndex on  y CREATE INDEX numberCityIndex on  branch(branchNo,city); y DROP INDEX branchNoIndex;;

(23)

y Organisasi file atau metode akses menentukan kinerja  operasi pencarian , menyisipkan dan menghapus. M d   k   d l h      k  i  y Metode akses adalah sarana utama untuk mencapai  peningkatan kinerja y Struktur Indeks membantu untuk meningkatkan  y Struktur Indeks membantu untuk meningkatkan  kinerja lebih lanjut

(24)

Search Key

y Search key adalah atribut atau set atribut yang  digunakan untuk mencari record dalam file DENSE INDEX DENSE INDEX SPARSE INDEX

(25)
(26)

B ‐Tree

y B –Tree adalah struktur yang sangat populer untuk ee ada a st u tu ya g sa gat popu e u tu

mengatur dan mempertahankan indeks besar . B –Tree  dipelajari pada awal tahun 1970 oleh Bayer , McCreight   d  C     , dan Comer .  y B ‐tree adalah generalisasi dari pohon biner di mana  dua atau lebih cabang dapat diambil dari setiap node    dua atau lebih cabang dapat diambil dari setiap node .  B –Tree yang disebut pohon seimbang karena jalan  akses ke catatan yang berbeda dengan panjang yang  sama .  y B –Tree memiliki kemampuan untuk secara cepat  i  j l h b  d  B  T  b d i  mencari sejumlah besar data. B –Tree beradaptasi  dengan baik untuk penyisipan dan penghapusan . 

(27)

P

i B T

Properti B ‐Tree

Sebuah B – Tree memiliki sifat sebagai berikut :g y Setiap jalur dari simpul akar ke simpul daun memiliki  panjang yang sama , h, juga disebut ketinggian B ‐ tree  (yaitu , h adalah jumlah node dari akar ke daun , inklusif).  (yaitu , h adalah jumlah node dari akar ke daun , inklusif).  Urutan B‐Tree adalah k. y Setiap node , kecuali akar dan daun , memiliki setidaknya k  + 1 anak node dan tidak lebih dari 2k + 1 anak node  + 1 anak node dan tidak lebih dari 2k + 1 anak node . y Simpul akar dapat memiliki sedikitnya dua node anak , tapi  tidak lebih dari 2k + 1 anak node . y Setiap node , kecuali akar , setidaknya memiliki k kunci  dan tidak lebih dari kunci 2k . y Akar mungkin mempunyai sedikitnya satu kunci. Secara Akar mungkin mempunyai sedikitnya satu kunci. Secara  umum, setiap node dengan kunci j nonleaf (cabang ) harus  memiliki j + 1 anak node .

(28)
(29)

y B –Tree melahirkan beberapa varian , termasuk B +  dikembangkan oleh Prof. Donald Knuth . Sebuah  indeks menyediakan akses cepat ke data ketika data  indeks menyediakan akses cepat ke data ketika data  dapat dicari dengan nilai yang merupakan kunci  indeks .

(30)

B+ Tree

Dalam kasus B + Tree, hanya node di bagian bawah titik  pohon catatan , dan semua node lain menunjuk ke node  lain . Node yang menunjuk ke catatan disebut node daun :y g j

y Jika node kosong , maka data ditambahkan di sebelah kiri.

Jik   d   iliki    i    k  ki i  bil k i 

y Jika node memiliki satu entri , maka kiri mengambil kunci  dengan nilai terkecil dan kanan mengambil yang terbesar . y Dalam contoh ini , 30 adalah nilai kecil karena itu  mengambil posisi kiri dan 60 adalah nilai yang lebih tinggi  maka dibutuhkan posisi kanan. maka dibutuhkan posisi kanan.

(31)

B+ Tree

y Jika node penuh dan adalah simpul daun ,  mengklasifikasikan kunci sebagai L ( lowest/terendah ) , M  (middle/nilai tengah ) dan H ( high/tertinggi )   dan  (middle/nilai tengah ) dan H ( high/tertinggi ) , dan  membagi node . y Jika node penuh dan bukan merupakan simpul daun ,  mengklasifikasikan kunci L, M dan H, dan membagi node .

(32)

Perbedaan B‐Tree & B+ Tree

B‐Tree B+ Tree Di B ‐ tree , node nonleaf  lebih besar dari node daun Di B + daun pohon dan  kelenjar nonleaf adalah  lebih besar dari node daun kelenjar nonleaf adalah  ukuran yang sama Penghapusan di B ‐ Tree  rumit  Di B + tree , entri dihapus  selalu muncul di daun ,  rumit  selalu muncul di daun ,  maka mudah untuk  menghapus entri Pointer data record yang ada  Pointer ke record data hanya y g di semua tingkat pohon y ada di daun

(33)

Keuntungan dari B Tree

y Pemanfaatan ruang penyimpanan sekunder lebih baik  50 %. Ruang penyimpanan secara dinamis  dialokasikan dan direklamasi   dan tidak ada degradasi  dialokasikan dan direklamasi , dan tidak ada degradasi  layanan ketika utilisasi storage menjadi sangat tinggi . y Akses acak memerlukan sangat sedikit langkah dan Akses acak memerlukan sangat sedikit langkah dan  sebanding dengan hashing dan metode indeks ganda.

Referensi

Dokumen terkait

Dalam penelitian ini memakai metode deskriptif dengan teknik survey test, karena masalah yang diteliti adalah hubungan antara panjang tungkai dengan prestasi lari

Peraturan Menteri Dalam Negeri Nomor 32 Tahun 2011 tentang Pedoman Pemberian Hibah dan Bantuan Sosial yang bersumber dari Anggaran Pendapatan dan Belanja Daerah sebagaimana

Mengetahui rata-rata waktu tunggu konsumen dalam sistem antrian dua servers tanpa menggunakan layanan movie card.. Mengetahui rata-rata waktu tunggu konsumen dalam

A1B0 Putih kekuningan Putih kekuningan Putih kekuningan A1B1 Putih kekuningan Putih kekuningan Putih kekuningan A1B2 Putih kekuningan Putih kekuningan Putih kekuningan A2B0

Kelemahannya adalah waktu belajar anak harus terencana. Jika saatnya kursus maka anak harus.. Padahal, suasana hati anak mungkin sedang tidak bagus. Untuk anak usia dini,

• Pertumbuhan (q-to-q) produksi Industri Manufaktur Besar dan Sedang Triwulan I tahun 2014 Provinsi Jawa Tengah turun sebesar (8,93) persen dari produksi industri Triwulan IV

Peraturan Komisi Pernilihan Umum Nomor 8 Tahun 2014, tentang Perubahan atas Peraturan Komisi Pemilihan Umuni Nomor 29 Tahun 2013, tentang Penetapan hasil Pemilihan Umum,

Ada banyak hal yang menyebabkan suatu rumah tangga mengalami masalah atau mungkin berada pada ambang keretakan, seperti kesibukan suami istri, tidak terjalinnya komunikasi yang baik,