• Breaking News

    Panduan dan Tutorial Lengkap serta Materi Pelajaran di Mulyono Blog. Konten Terlengkap dan Terpercaya

    Senin, 21 Februari 2011

    Partisi Tabel dan Partisi Index Pada Database Oracle

    Oracle merupakan software database yang banyak dipakai di perusahaan besar di seluruh dunia saat ini. Software ini juga banyak diminati oleh para konsultas pembuat aplikasi yang berkaitan dengan database. Sistem keamanannya yang handal membuat para professional yang berkecimpung dalam dunia database lebih memilih oracle sebagai perangkat untuk menunjang kegiatan bisnis mereka.
    Disamping sistem security yang handal, Oracle merupakan software database yang bisa menampung serta mengelola data dengan kapasitas yang sangat besar serta dapat mengaksesnya dengan sangat cepat pula. Sintaks SQL nya yang hampir seluruhnya telah memenuhi standart ANSI-92 lebih memudahkan para programmer database dalam membangun aplikasi baik dari sisi ‘back end’ maupun dari sisi ‘front end’. Demikian pula bagi administrator yang berkecimpung dalam menangani administrasi database serta bertanggung jawab terhadap keamanan database akan merasa diuntungkan serta dimudahkan dengan software Oracle yang lebih ‘establish’ ini.
    Oracle telah menyediakan fitur untuk mempartisi tabel, yang berfungsi agar tabel dapat dibagi menjadi beberapa kriteria, contohnya kita mempunyai tabel suplier, tabel customer, dll, guna dari partitioned table ini agar dapat memanajemen database yang berukuran besar, sehingga menjadi database yang lebih terstruktur. Fitur lain yang dimiliki oleh oracle adalah index. Secara umum, index digunakan untuk mempercepat perncarian data didalam tabel database relasional.
    Sebenarnya inti dari partisi itu adalah membagi ruang untuk data-data tertentu. Jika dikaitkan dengan DBMS, Partisi tabel adalah membagi data suatu tabel menjadi beberapa bagian/kriteria. Misal tabel mahasiswa, dipartisi/dibagi berdasarkan NIM. Sehingga dapat diketahui angkatan mahasiswa berdasarkan NIMnya. Dan konsep partisi ini dapat dikembangkan sebagai DSS (Decision Support System) untuk pengambilan keputusan tertentu.
    Sedangkan index digunakan untuk mempercepat perncarian data didalam tabel database relasional. Sehingga dengan adanya index partition, memungkinkan untuk meningkatkan performa pencarian data.
    Berikut adalah konsep umum partisi tabel:

    Dari suatu data yang besar, dipecah-pecah lagi per-bagian berdasarkan kriteria-kriteria tertentu. Pada gambar di atas, dari suatu data dibagi berdasarkan bulan.
    Manfaat lain dari partitioning adalah tiap-tiap segment (partisi atau subpartisi) bisa ditaruh di tablespace yang berbeda, sehingga kita mendapat manfaat dari spreading (menyebar) tablespace, yaitu penyebaran I/O dan mengurangi resiko loss data karena tablespace corrupt.
    Ada 3 metode utama partisi:
    1. Range partition
      Range partition adalah pembagian suatu tabel ke dalam beberapa bagian berdasarkan range (rentang) nilai tertentu. Range partition ini cocok digunakan pada kolom yang memiliki distribusi nilai yang merata.
    2. List partition
      Konsep pada list partition adalah data dikelompokkan berdasarkan nilai datanya. Cocok untuk kolom yang variasi nilainya tidak banyak. Misal data kota berdasarkan wilayah provinsi. List: Jember, Malang, Surabaya pada partisi Jawa Timur; Bandung, Cirebon pada partisi Jawa Barat. Jadi list partition ini berdasarkan list dari suatu segmen, sehingga data-datanya di list terlebih dahulu.
    3. Hash partition
      Penggunaan hash partition ini jika tidak cocok dengan RANGE ataupun LIST Partition. Penentuan “nilai mana di taruh di partisi mana” itu diatur secara internal oleh Oracle (berdasarkan hash value). Kenapa harus memaksakan memakai partisi sementara tidak cocok dengan RANGE ataupun LIST? Jika ingin mendapat manfaat dari filosofi PARTITIONING yang sebenarnya di mana data disebar ke segment-segment yang berbeda.

    Dan 2 metode composite (gabungan):
    1. Composite range-list partition
      Konsep composite range-list partition ini menggabungkan partisi range dan list. Jika pada tabel mahasiswa, NIM dipartisi secara range, sedangkan untuk mendapatkan NIM sekian yang tinggal di wilayah provinsi Jawa Timur itu apa saja, maka menggunakan list. Jadi dipartisi kemudian di list berdasarkan kriteria tertentu.
    2. Composite range-hash partition
      Composite range-hash partition merupakan konsep menggabungkan range partition dan hash partition. Sehingga partisi-partisi yang telah dibuat berdasarkan range/rentang akan dipartisi lagi ke dalam beberapa bagian berdasarkan hash.

    Download Tulisan Lengkap: Mudafiq-PartisiPadaOracle.pdf