PASI-File Master-Transaksi-Tabel View 1920 180620
PASI-File Master-Transaksi-Tabel View 1920 180620
Oleh:
Siti Puspita Hida Sakti MZ, S.Kom., M.Cs
2020
A. Replikasi Basis Data
Replikasi adalah suatu teknik untuk melakukan copy dan pendistribusian data dan
objek-objek database dari satu database ke database lain yang lokasinya terpisah secara fisik.
Dengan menggunakan teknik replikasi ini,data dapat didistribusikan ke lokasi yang berbeda
melalui koneksi jaringan lokal maupun internet.
Model Replikasi:
1. One master, one slave
2. One master many slave
3. Master/slave circular relationship
4. Master/slave “daisy chain”
Jenis Replikasi
1. Replikasi Synchronous
Proses dilakukan secara real‐time antara master dengan slave. Keseluruhan proses
penulisan pada disk master dan slave harus selesai terlebih dahulu sebelum beranjak ke
transaksi selanjutnya. Kebutuhan akan performansi sistem yang tinggi harus dipertimbangkan
(kecepatan & jarak antar site/node). Keuntungannya: menyediakan recovery yang konsisten
karena sinkronisasi data terjaga.
Proses: Client Master Database Slave Database Client
2. Replikasi Asynchronous
Proses replikasi terjadi setelah transaksi dimaster selesai. Pertukaran data secara
buffering, data akan diletakkan dalam sebuah buffer terlebih dahulu, kemudian pada jangka
waktu tertentu akan direplikasi ke disk slave. Tidak menjamin kesinkronan data apabila salah
satu site/node mengalami crash saat replikasi belum selesai dilaksanakan. Keuntungan:
efektifitas biaya proses transaksi
Proses: Client Master Database Client
E. Partitioned View
Partitioned View adalah suatu View yang didefinisikan dari UNION ALL dari tabel-
tabel yang dibuat dengan struktur yang sama, tapi disimpan pada beberapa tabel pada
instance SQL Server atau group dari server dengan instance autonomous SQL Server, disebut
federated database server. Data di partisi untuk optimasi (misal untuk query, dll),
memudahkan pengelolaan ketika data sangat besar
F. Indexed View
Konsep awal Index digunakan untuk meningkatkan kinerja query. Indexed views
memberikan manfaat kinerja yang tidak dapat dicapai dengan menggunakan indeks standar.
Indexed views dapat meningkatkan query performance dengan cara berikut:
1. Agregasi dapat di-precompute dan disimpan dalam index untuk mengurangi
komputasi yang mahal selama eksekusiquery.
2. Tabel dapat di-prejoine dan data set yang dihasilkandisimpan.
3. Kombinasi dari join atau agregasi dapat disimpan.
Penggunaan Indexed View
Sebelum menggunakan Indexed View, analisis terlebihdahulu beban kerja database.
Gunakan tool seperti SQL Profiler untuk mengetahuimana View yang diuntungkan melalui
Indexed View
1. Biasanya query dengan agregasi dan join adalah kandidatterbaik sebagai Indexed
View
2. Tidak semua query diuntungkan dengan Indexed View
Walaupun diuntungkan secara performansi query, tapidibutuhkan pula tambahan
ruang hardisk, maintenance, dan optimisasi. Penggunaan Indexed View berguna
untukdiimplementasikan pada:
1. Decision support workloads
2. Data marts
3. Data warehouses
4. Online analytical processing (OLAP) stores and sources
5. Data mining workloads
G. Partitioned Table
Optimasi kinerjapada database yang mempunyai tabel-tabel yang sangat besar (Very
Large Database/VLDB) dapat dilakukan dengan cara mempartisi tabel-tabel. Pada SQL
Server partisi tabel menjadi file groups yang terpisah. Pada SQL Server 2005, dimungkinkan
untuk menyebar data disk yang berbeda secara fisik, sehingga mempengaruhi performansi
akses bersamaan (concurrent) dari disk-disk tsb untuk optimasi kinerja query
1. Horizontal Partitioning
Horizontal Partitioning adalah partisi dimana tabel dipisahkan menjadi beberapa tabel
kecil yang memiliki kolom sama namun lebih sedikit baris. Tabel akan disimpan ke filegroup
ke tempat yang berbeda secara fisik. Digunakan bila baris sangat besar misalnya hingga
jutaan baris. Manfaat horizontal partitioning:
a. Tiap tabel partisi memiliki lebih sedikit baris, sehingga untuk membutuhkan
waktu lebih cepat untuk pencarian
b. Index tiap tabel partisi menjadi lebih kecil sehingga mempercepat pencarian
dibandingkan tabel yang tidak terpartisi
c. Bila diperlukan, dapat ditempatkan tiap partisi pada file group berbeda di
beberapa disk/volume RAID/drive controller
d. Bila membuat partitioned view dari partitioned table, view akan memperlakukan
keseluruhan tabel dan Query Processor (QP) hanya akan menggunakan tabel yang
digunakan untuk memenuhi query.