Anda di halaman 1dari 14

SISTEM TERDISTRIBUSI

“Basis Data Terdistribusi”


Terdistribusi”

DISUSUN OLEH:

KELOMPOK 4

WULAN DARI

DWI NUR PUSPITAWATI

MUH.NUR ILMAN

WAHYU S

SAEFUL ABRAR SOFYAN

PENDIDIKAN TEKNIK INFORMATIKA DAN KOMPUTER

FAKULTAS TEKNIK

UNIVERSITAS NEGERI MAKASSAR

2013

1|Basis Data Terdistribusi


DAFTAR ISI

1. Definisi Basis Data Terdistribusi......................................................................................3

2. Struktur Basis Data Terdistribusi...................................................................................4

3. Jenis Transaksi........................................................................................................................5

4. Ciri-ciri Basis Data Terdistribusi.....................................................................................5

5. Keuntungan dan Kerugian..................................................................................................5

6. Desain Basis Data Terdistribusi........................................................................................6

7. Transformasi Query............................................................................................................13

2|Basis Data Terdistribusi


BASIS DATA TERDISTRIBUSI

DEFINISI

Basis Data Terdistribusi adalah kumpulan data logic yang saling berhubungan

secara fisik terdistribusi dalam


dalam jaringan komputer, yang tidak tergantung
tergantung dari program
aplikasi sekarang maupun masa yang akan datang. File merupakan kumpulan data yang
dirancang untuk suatu aplikasi atau sekumpulan aplikasi yang dekat hubungannya.

Contoh:

Misalnya sebuah bank yang memiliki banyak cabang, bahkan di sebuah kota bisa
terdiri dari beberapa cabang/kantor. Masing-masing lokasi memiliki jaringan lokal
sendiri, dan semua jaringan lokal itu dihubungkan satu sama lain membentuk sebuah
jaringan nasional

DMBS itu apa sih? DBMS merupakan kependekan dari Database Managemen System
merupakan perangkat lunak yang mengatur dan menangani semua pengaksesan database
yaitu bisa insert, update, delete, dan memelihara database. DBMS itu yang umum dipakai
diantaranya adalah MySQL, PostgreSQL, Oracle, Access, dan lain-lain.

DBMS (Database Management System) Terdistribusi adalah sebuah perangkat


lunak yang membuat pendistribusian data dan memberikan mekanisme akses data yang akan
membuat basis data ini transparan kepada user yang menggunakan.

3|Basis Data Terdistribusi


Data akan disimpan dalam beberapa site dimana setiap site secara logic memiliki
sebuah processor, dimana processor dari site yang berlainan akan terhubung didalam sebuah
jaringan computer, sehingga tidak akan ditemukan
ditemukan adanya multiprocessor.

Tipe Basis Data Terdistribusi

1. Homogen adalah suatu sistem yang menjalankan tipe DBMS yang sejenis di
setiap unit distribusi data. Misal: MySQL didistribusikan dengan MySQL. Oracle
dengan Oracle. Jadi keterhubungan DBMS tersebut antara DBMS yang sama.
2. Heterogen adalah
adalah suatu sistem yang menjalankan tipe DBMS yang berbeda di
setiap unit distribusi datanya, baik secara relational DBMS ataupun non
relational DBMS. Misalkan di suatu unit memakain DBMS Oracle, dan di unit lain
memakain DBMS PostgreSQL, akan tetapi DBMS tersebut tetap
terkait/terhubungkan.

STRUKTUR BASIS DATA TERDISTRIBUSI

Sebuah sistem basis data terdistribusi hanya mungkin dibangun dalam sebuah
sistem jaringan komputer.

Topologi Jaringan

a. Topologi bintang (star)

b. Topologi Cincin (Ring)

c. Topologi Bus

Perbedaan utama di antara berbagai topologi di atas terletak pada:

 Biaya Instalasi
Biaya dalam membangun hubungan link) antar simpul.
 Biaya Komunikasi
Waktu dan biaya dalam pengoperasian sistem berupa pengiriman data dari satu
simpul ke simpula lain
 Kehandalan
Frekuensi/tingkat kegagalan komunikasi yang terjadi.
 Ketersediaan
Tingkat kesiapan data yang dapat diakses sebagai antisipasi kegagalan
komunikasi

4|Basis Data Terdistribusi


JENIS TRANSAKSI

Dalam distribusi Basis data, transaksi informasi dibagi dalam 2 jenis yaitu transaksi
lokal dan transaksi global.

 Transaksi Lokal
Transaksi yang mengakses data pada suatu simpul (mesin/server) yang sama dengan

simpul dari mana transaksi tersebut dijalankan.

 Transaksi Global.
Transaksi yang membutuhkan pengaksesan data di simpul yang berbeda dengan
simpul dimana transaksi tersebut dijalankan, atau transaksi dari sebuah simpul yang
membutuhkan pengaksesan data ke sejumlah simpul lainnya.

CIRI-CIRI BASIS DATA TERDISTRIBUSI

Adapun ciri-ciri Basis data yang terdistribusi adalah sebagai berikut:

- Data disimpan di sejumlah tempat


- Prosessor pada tempat yang berbeda tersebut dihubungkan dengan jaringan
komputer
- Sistem basis data terdistribusi bukan terdiri dari sekumpulan file yang berada pada
berbagai tempat tetapi pada sebuah basis data di berbagai tempat
- Setiap tempat secara mandiri memproses permintaan user yang membutuhkan
akses ke data di tempat tersebut dan juga mampu untuk memproses data yang
tersimpan di tempat lain.

Keuntungan dan Kerugian

Keuntungan distribusi basisdata:

- Pengelolaan secara transparan data yang terdistribusi


- Mengacu pada struktur organisasi
- Meningkatkan untuk berbagi dan otonomi lokal
- Meningkatkan ketersediaan data
- Meningkatkan kehandalan
- Meningkatkan performasi kerja

Kerugian distribusi basisdata:

- Kompleksitas manajemen
- Kontrol integritas lebih sulit
- Biaya pengembangan
- Keamanan

- Sulitnya standarisasi
- Menambah kebutuhan penyimpanan

5|Basis Data Terdistribusi


- Lebih sulit dalam mengatur lingkungan data

DESAIN BASIS DATA TERDISTRIBUSI

Ada beberapa pendekatan yang berkaitan dengan penyimpanan data/tabel dalam


sebuah sistem basis data terdistribusi, yaitu

1. Replikasi
2. Fragmentasi
3. Replikasi dan Fragmentasi .

1. REPLIKASI

1.1 Konsep Dasar Replikasi

Replikasi adalah suatu teknik untuk melakukan copy dan pendistribusian data dan
objek-objek database dari satu database ke database lain dan melaksanakan
sinkronisasi antara database sehingga konsistensi data dapat terjamin.
Dengan menggunakan teknik replikasi ini, data dapat didistribusikan ke lokasi yang
berbeda melalui koneksi jaringan lokal maupun internet. Replikasi juga memungkinkan

untuk mendukung kinerja aplikasi, penyebaran data fisik sesuai dengan


penggunaannya, seperti pemrosesan transaksi online dan DSS (Desiscion Support
System) atau pemrosessan database terdistribusi melalui beberapa server.

Keuntungan replikasi tergantung dari jenis replikasi tetapi pada umumnya


replikasi mendukung ketersediaan data setiap waktu dan dimanapun diperlukan.

Adapun keuntungan lainnya adalah :

• Memungkinkan beberapa lokasi menyimpan data yang sama. Hal ini sangat berguna
pada saat lokasi-lokasi tersebut membutuhkan data yang sama atau memerlukan
server yang terpisah dalam pembuatan aplikasi laporan.
• Aplikasi transaksi online terpisah dari aplikasi pembacaan seperti proses analisis
database secara online, data smarts atau data warehouse.
• Memungkinkan otonomi yang besar. Pengguna dapat bekerja dengan meng-copy
data pada saat tidak terkoneksi kemudian melakukan perubahan untuk dibuat
database baru pada saat terkoneksi
• Data dapat ditampilkan seperti layaknya melihat data tersebut dengan
menggunakan aplikasi berbasis Web
• Meningkatkan kinerja pembacaan
• Membawa data mendekati lokasi individu atau kelompok pengguna. Hal ini akan
membantu mengurangi masalah karena modifikasi data dan pemrosesan query
yang dilakukan oleh banyak pengguna karena data dapat didistribusikan melalui
jaringan dan data dapat dibagi berdasarkan kebutuhan masing-masing unit atau

pengguna.
• Penggunaan replikasi sebagai bagian dari strategi standby server.

6|Basis Data Terdistribusi


Replikasi dapat digunakan apabila sebuah organisasi atau perusahaan didukung
oleh hardware dan aplikasi sofware dalam sebuah sistem yang terdistribusi. Aplikasi
yang berbeda mempunyai kebutuhan yang berbeda untuk otonomi dan konsistensi
data. Replikasi diperlukan dalam sistem terdistibusi apabila berikut ini:

1. Mengcopy dan mendistribusikan data dari satu atau lebih lokasi


2. Mendistribusikan hasil copy data berdasarkan jadwal
3. Mendistribusikan perubahan data ke server lain
4. Memungkinkan beberapa pengguna di beberapa lokasi untuk melakukan
perubahan dan kemudian menggabungkan data yang telah dimodifikasi
5. Membangun aplikasi data yang menggunakan perlengkapan online maupun offline
6. Membangun aplikasi Web sehingga pengguna dapat melihat volume data yang
besar.

1.2 Jenis-Jenis Replikasi

1. Snapshot replication
Mendistribusikan data yang dapat dilihat pada saat tertentu tanpa melakukan
update. Biasanya digunakan pada saat memerlukan tampilan data seperti : daftar
harga, katalog, data yang digunakan untuk pengambilan keputusan. Data-data ini
sifatnya hanya ‘read only’.
Replikasi ini membantu pada saat :
• data sebagian besar statis dan tidak sering berubah
• dapat menerima copy data yang telah melewati batas waktu yang ditentukan
• datanya sedikit
2. Transactional replication
Memelihara kekonsistenan transaksi yang terjadi
3. Merge replication
Merge replication memungkinkan pengguna bekerja dan merubah data sesuai
dengan wewenangnya. Pada saat server tidak dikoneksikan ke seluruh lokasi
dalam topologi, replikasi merubah ke nilai data yang sama

2. FRAGMENTASI

Fragmentasi merupakan sebuah proses pembagian atau pemetaan dari tabel-


tabel berdasarkan kolom-kolom dan baris-baris data menjadi unit data terkecil.

Fragmentasi Data merupakan sebuah proses pembagian atau pemetaan


database dimana database dipecah-pecah
dipecah-pecah berdasarkan kolom dan
dan baris yang kemudian
disimpan didalam site atau unit komputer yang berbeda dalam suatu jaringan data,
sehingga memungkinkan untuk pengambilan keputusan terhadap data yang telah
terbagi. Data yang telah dipecah-pecah masih memungkinkan untuk digabungkan lagi
dengan maksud untuk kelengkapan pendataan.

7|Basis Data Terdistribusi


Dalam melakukan fragmentasi data harus memenuhi beberapa kondisi agar
proses fragmen tersebut benar, diantaranya:

1. Completeness,
Completeness, sebuah unit data yang masih dalam bagian dari relasi utama, maka
data harus berada dalam satu fragmen. Ketika ada relasi, pembagian datanya harus
menjadi satu kesatuan dengan relasinya.
2. Reconstruction
Reconstruction,, sebuah relasi asli dapat dibuat kembali atau digabungkan kembali
dari sebuah fragmen. Ketika telah dipecah-pecah, data masih memungkinkan untuk
digabungkan kembali dengan tidak mengubah struktur data.
3. Disjointness
Disjointness,, data didalam fragmen tidak boleh diikutkan dalam fragmen lain agar
tidak terjadi redundancy data, kecuali untuk atribut primary key dalam fragmentasi
vertikal.

Adapun aturan untuk pelaksanaan fragmentasi:

1. Fragmen dibentuk dari predikat yang telah dipilih dan diasosiasikan dengan
transaksi yang terdapat dalam database. Predikat secara spesifik mencantumkan
nilai atribut yang digunakan dalam format conjuctive (AND) dan disjunctive (OR)
yang digunakan untuk memilih command, dan kolom (record) yang berisi nilai yang
sama dengan format fragment.
2. Fragment harus terpisah dan gabungan dari fragment-fragment tersebut harus
terdiri atas keseluruhan fragment. Fragment yang mendahului akan menjadi lebih
sulit untuk dianalisis dan diimplementasikan.
3. Fragment yang terbesar adalah keseluruhan tabel, fragment terkecil merupakan
sebuah record. Fragment harus didesain sedemikian rupa untuk memelihara
keseimbangan diantara perbedaan ini.

Jenis Fragmentasi Data:

Fragmentasi data dapat diselesaikan melalui beberapa cara, antara lain

fragmentasi horizontal, fragmentasi vertikal, dan fragmentasi campuran (mixed atau


hybrid):

1. Fragmentasi Horizontal terdiri dari tuple dari fragment global yang kemudian
dipecah-pecah atau disekat menjadi beberapa sub-sets. Penyekatan tipe ini
sangat berguna didalam database terdistribusi, dimana setiap sub-setsdapat
berisi data yang memiliki properti secara umum. Fragmentasi horizontal
didefinisikan menurut sebuah kondisi atau predikat yang menyatakan bahwa
tuple yang ada telah mencukupi.

8|Basis Data Terdistribusi


2. Fragmentasi Vertikal akan membagi lagi atribut-atribut dari fragment global
yang tersedia menjadi beberapa grup. Bentuk yang paling simple dari
fragmentasi vertical adalah dekomposisi, dimana sebuah row-id yang unik dapat
disertakan dalam setiap fragment untuk menjamin dan memungkinkan
terjadinya proses rekonstruksi melalui sebuah operasi join. Dengan kata lain
bahwa fragmentasi jenis ini akan membagi sebuah data menjadi beberapa tabel
yang atributnya saling terkait.

9|Basis Data Terdistribusi


3. Fragmentasi Mixed/Hybrid

Berikut gambaran dari fragmentasi hybrid.

Relasi A seperti yang digambarkan diatas telah mengalami tiga tingkatan


frakmentasi (bukan lima) – dua kali fragmentasi horizontal dan satu kali fragmentasi
vertical. Fragmentasi horizontal pertama membagi relasi menjadi dua bagian yaitu H1
dan H2. kemudian fragmentasi kedua adalah fragmentasi vertical terhadap fragment
horizontal H2, yang membagi fragment horizontal H2 menjadi dua bagian secara
vertical yang kemudian disebut H2V1 dan H2V2. dan kemudian fragmentasi terakhir
yang dilakukan adalah fragmentasi horizontal terhadap fragment vertical pertama yaitu
H2V1.

10 | B a s i s D a t a T e r d i s t r i b u s i
1. Pada kenyataannya banyak aplikasi/query yang membutuhkan fragmentasi yang
lebih kompleks daripada hanya menggunakan fragmentasi vertical atau fragmentasi
horizontal saja.
2. Teknik penggunaan tipe fragmentasi ini adalah dengan mengaplikasikan teknik
fragmentasi horizontal terlebih dahulu yang kemudian diikuti dengan teknik
fragmentasi vertical kepada satu atau lebih fragment horizontal yang telah dibentuk
sebelumnya.
3. Teknik fragmentasi mixed merupakan sebuah proses yang menggabungkan teknik
fragmentasi horizontal dan vertical.

Sehingga dapat disimpulkan bahwa Fragmentasi hybrid atau mixed merupakan


penggabungan dari penggunaan kedua proses fragmentasi data yang telah dijelaskan
diatas (fragmentasi horizontal dan vertikal).

3. REPLIKASI DAN FRAGMENTASI

Fragmentasi dan replikasi merupakan salah satu cara dalam mengolah sebuah
database terutama digunakan pada basis data terdistribusi. Representasi data pada
basis data terdistribusi dengan menerapkan fragmentasi dan replikasi mempunyai
kelebihan bahwa availibility data akan lebih terjaga dan beban yang ditanggung oleh
server menjadi lebih kecil dibandingkan dengan basis data terpusat.

Untuk sebuah data dengan user yang jumlahnya besar dan transaksi akses
terhadap data yang tinggi pemilihan desain basis data tentu saja tidak bisa diabaikan,
pemilihan desain yang tepat dapat membantu dalam mengatasi masalah yang dapat
ditimbulkan dari keterbatasan desain database yang lain. Seperti pada kasus registrasi
mahasiswa, dilihat dari jumlah user tentu saja jumlahnya tidak sedikit, selain itu user
menginginkan proses yang lancar, tidak terhambat karena adanya server yang down
atau akses yang lambat karena terlalu banyak user yang mengakses. Server dibagi
menjadi beberapa server yang tadinya hanya satu server saja, hal ini dimaksudkan agar
beban server dapat dikurangi dengan pertimbangan pembagian server adalah
berdasarkan jurusan yang ada, hal ini dimaksudkan karena mayoritas user mengakses
server jurusannya dibandingkan akses pada server jurusan lain, proses ini disebut
dengan fragmentasi, untuk replikasi dimaksudkan agar apabila ada salah satu server
yang down setelah kita membagi data menjadi beberapa server ketergantungan
terhadap data di server yang down dapat diambil alih oleh server replikasinya.

Kata Kunci : fragmentasi, replikasi, basis data terdistribusi, availability, basis data
terpusat, server.

11 | B a s i s D a t a T e r d i s t r i b u s i
Contoh:

Tabel nasabah bank dengan struktur dan data sebagai berikut :

nasabah = (no_nas, nama_nas, alamat_nas, kota, saldo_simpan, saldo pinjam)

contoh tabel nasabah

No_nas Nama_nas Alamat Kota Saldo_simpan Saldo_pinjam

2001001 Jamaludin Jl. Suci 10 Medan 100000 0

2001002 Nurhaliza Jl. Abdi 22 Medan 2300000 1450000

2001003 Nur Alam Jl. Aceh 10 Medan 1200000 3500000

2001004 Setia Jl.Jawa 112 Medan 1500000 1000000

2002001 Tini Jl. Adil 20 Padang 50000 0

2002002 Ahmad Jl. Taat 12 Padang 750000 0

2002003 Wisnu Jl Damai 11 Padang 2600000 5000000

2002004 Alif Jl. Mulia 1 Padang 100000 12000000

Fragmentasi Horizontal
nasabah1 = kota=‘Medan’ (nasabah)

nasabah2 = kota=‘Padang
kota=‘Padang’’ (nasabah)

Akan diperoleh 2 buah fragemen

 Fragmen Nasabah1

 Fragmen Nasabah2

Terapkan operasi union

nasabah = nasabah1 nasabah2

12 | B a s i s D a t a T e r d i s t r i b u s i
Fragmentasi Vertikal

nasabah1 = no_nas, nama_nas, alamat, kota (nasabah)

nasabah2 = no_nas, saldo_simpan (nasabah)

nasabah3 = no_nas, saldo_pinjam (nasabah)

Upaya untuk replikasi dan fragmentasi data dapat dilakukan sekaligus pada
sebuah tabel, yaitu dengan mereplikasi fragmen-fragmen yang telah terbentuk.
Misalnya, dalam sebuah sistem terdistribusi terdapat 5 buah simpul S1, S2, S3, S4 dan
S5.

Kita dapat memilah tabel nasabah sesuai dengan kota dimana nasabah
mengajukan permohonan menjadi nasabah1, nasabah2 dan nasabah3. Kemudian
dengan pertimbangan tertentu, fr agmen nasabah1 disimpan di simpul S1, S2 dan S3.
lalu fragmen nasabah2 disimpan disimpul S3 dan S4
S 4 dan fragmen nasabah3 disimpan di
simpul S1 dan S3.

Pemrosesan query dalam basisdata terdistribusi

Dalam sistem terpusat, kriteria utama untuk mengetahui cost dari sebuah strategi query
adalah jumlah/waktu akses ke disk.

Faktor-fakor yang perlu dipertimbangkan:

1. Biaya/waktu untuk transmisi data


2. Potensi peningkatan karena adanya sejumlah simpul yang dapat melaksanakan
query secara paralel.

TRANSFORMASI QUERY

Jika tabel telah direplikasi


direplikasi atau difragmentasi
difragmentasi atau sekaligus direplikasi
direplikasi dan
fragmentasi maka kita dapat memenuhi query tersebut dengan memilih salah satu
simpul tempat suatu tabel berada kemudian mengeksekusi qury.

Jika tabel tidak direplikasi atau difragmentasi, pemilihan simpul akan didasarkan
pada simpul yang memberikan ongkos transmisi data yang paling rendah.

Dalam sistem terpusat, kriteria utama untuk mengetahui cost dari sebuah strategi
query adalah jumlah/waktu akses ke disk.

Faktor-fakor yang perlu dipertimbangkan:

1. Biaya/waktu untuk transmisi data


2. Potensi peningkatan karena adanya sejumlah simpul yang dapat melaksanakan
query secara paralel.

13 | B a s i s D a t a T e r d i s t r i b u s i
Jika fragmentasi yang dilakukan horizontal maka operasi Union dapat dilakukan.

Jika fragmentasi vertikal tdan query menghendaki penayangan semua atribut maka
operasi Natural Join yang harus digunakan.

Contoh:

Tabel Mahasiswa

Ekspresi Standar dari query :

kota = ‘Bandung (mahasiswa)

Jika tabel
tabel mahasiswa
mahasiswa difragmentasi secara horizontal di dua fragmen (diberi nama
mahasiswa1 dan mahasiswa2) sehingga tabel mahasiswa sesungguhnya merupakan
hasil operasi Union dari keduanya.

mahasiswa1 mahasiswa2

Maka query di atas dapat kita translasi menjadi :

kota=‘Bandung’ (mahasiswa1 mahasiswa2)

14 | B a s i s D a t a T e r d i s t r i b u s i

Anda mungkin juga menyukai