sistem basis data terdistribusi

16
Bagian I Sistem Basis data Terdistribusi a. Pengantar. File processing/pemrosesan file menggunakan prinsip setiap aplikasi memiliki data tersendiri. Hal ini mempengaruhi efesiensi dan efekifitas sehingga muncul konsep data base system /system basis data. Konsep ini mendasarkan pada prinsip bahwa data dibuat, disediakan dan dikelola secara terpusat/sentral. Konsep ini mengakibatkan program aplikasi tidak lagi tergantung pada perubahan data baik secara logic maupun fisik dan juga sebaliknya, yang disebut dengan data independence. Untuk menjelaskan perbedaan file processing dengan database system, dapat dilihat pada gambar 1 dn 2 dibawah ini : Pada perkembangan system database; data yang tersimpan semakin besar, pemrosesan semakin kompleks, data dapat diakses dengan menggunakan teknologi sehingga muncul system database terdistribusi. 1

Upload: habib-hamdzani

Post on 27-Sep-2015

45 views

Category:

Documents


3 download

DESCRIPTION

Sistem Basis data Terdistribusi

TRANSCRIPT

Sistem Basis data Terdistribusi

Bagian I

Sistem Basis data Terdistribusia. Pengantar.File processing/pemrosesan file menggunakan prinsip setiap aplikasi memiliki data tersendiri. Hal ini mempengaruhi efesiensi dan efekifitas sehingga muncul konsep data base system /system basis data. Konsep ini mendasarkan pada prinsip bahwa data dibuat, disediakan dan dikelola secara terpusat/sentral. Konsep ini mengakibatkan program aplikasi tidak lagi tergantung pada perubahan data baik secara logic maupun fisik dan juga sebaliknya, yang disebut dengan data independence.

Untuk menjelaskan perbedaan file processing dengan database system, dapat dilihat pada gambar 1 dn 2 dibawah ini :

Pada perkembangan system database; data yang tersimpan semakin besar, pemrosesan semakin kompleks, data dapat diakses dengan menggunakan teknologi sehingga muncul system database terdistribusi.

b. Distributed data processing / pemrosesan data terdistribusi.

Merupakan sekumpulan peralatan pemrosesan yang saling terhubung melalui jaringan yang mengerjakan tugas-tugas tertentu.

Pemrosesan terdistribusi dapat dikelompokan berdasarkan beberapa kriteria yaitu :

1. Degree Coupling / Tingkat hubungan : tinggi atau rendah ? Jumlah data yang saling digunakan dibandingkan dengan jumlah pemrosesan lokal.

2. Struktur antar hubungan : kuat atau lemah ? Jika komponen dapat di share dikatakan kuat 3. Kesaling tergantungan komponen-komponen. Kuat atau lemah dalam mengekseskusi proses.

4. Keselarasan antar komponen.

Pemrosesan terdistribusi berkembang karena kebutuhan untuk dapat memecahkan masalah besar dan kompleks dengan menggunakan berbagai macam aturan divide and conquer. Alasan lain yang mendasar adalah struktur organisasi yang berubah menjadi terdistribusi..

Karena perkembangan pemrosesan terdistribusi inilah maka kemudian berkembang distributed database system.c. Distributed database system / system database terdistribusi

Merupakan sekumpulan database yang saling terhubung secara logical dan secara fisik terdistribusi pada berbagai tempat melalui jaringan computer.

Sistem yang mengelola database terdistribusi dan menyediakan mekanisme agar distribusi transparent adalah distributed database management system (DDBMS).

Berikut ini adalah ciri-ciri untuk system yang bukan merupakan system database terdistribusi :

1. Sistem yang berisi kumpulan file

2. Berbagai arsitektur fisik berkait dengan system multiprocessor dibawah ini :

Shared memory multiprocessor

Shared disc multiprocessor

Shared nothing multiprocessor system

3. Database terpusat pada jaringan

d. Sistem Database terdistribusi

d.1 Beberapa ciri system database terdistribusi adalah :

1. Data disimpan pada sejumlah tempat. Setiap tempat secara logic terdiri dari processor tunggal.

2. Processor pada tempat yang berbeda tersebut dihubungkan dengan jaringan computer.3. Bukan sekumpulan file yang berada pada berbagai tempat tetapi merupakan database pada berbagai tempat.

4. Setiap tempat mempunyai kemampuan untuk mandiri memproses permintaan user yang membutuhkan akses kedata ditempat tersebut, dan juga mampu untuk memproses data yang tersimpan di tempat lain.

d.2 Keuntungan sistem database terdistribusi adalah :

1. Pengelolaan secara transparan data terdistribusi dan replicated.

a. Mengurangi ketergantungan data

b. Transparansi jaringan

c. Transparansi replikasi

d. Transparansi fragmentasi

2. Mengacu pada struktur organisasi

3. Meningkatkan kemampuan untuk share dan otonomi local4. Meningkatkan ketersediaan data

5. Meningkatkan kehandalan

6. Meningkatkan unjuk kerja

7. Memudahkan pengembangan system

d.3 Kelemahan system database terdistribusi adalah :

1. Kompleksitas manajemen

2. Control integritas lebih sulit

3. Biaya pengembangan

4. Keamanan

5. Kurang standarisasi

6. Menambahkan kebutuhan penyimpanan

7. Lebih sulit dalam mengatur lingkungan data

8. Menambah biaya pelatihan.Bagian II

Jaringan Komputer

a. Konsep Jaringan dam Hubungannya Dengan Sistem DatabaseTerdistribusi

Untuk dapat saling berhubungan antar site pada sistem database terdistribusi diperlukan jaringan komunikasi komputer. Jaringan komputer adalah interkoneksi antara sejumlah komputer autonomous yang dapat saling bertukar informasi antara komputer yang terhubung. Bentuk komputer yang saling terhubung biasanya disebut dengan Node, host atau site. Bentuk hubungan antar komputer tidak hanya melalui kawat tembaga saja, tetapi dapat melalui serat optic, gelombang mikro dan satelit komunikasi.

Komponen pokok dalam jaringan komputer adalah hardware yang digunakan untuk saling berkomunikasi.

Distributed Database Management System (DDBMS) dibangun pada top of network, sedemikian rupa sehingga jaringan tidak nampak pada user. User tidak perlu tahu kerumitan pengelolaan jaringan, semuanya sudah dilakukan secara otomatik oleh sistem.

Konsep komunikasi merupakan perpindahan informasi berbantuan sistem transmisi listrik via lebih dari 1 jaringan data yang tergantung pada protokol. Komunikasi data diperlukan karena adanya pengiriman dan penerimaan data atau saling tukar infromasi jarak jauh.

b. Tipe Jaringan

Terdapat 3 kriteria untuk klasifikasi jaringan komputer, yaitu :

1. Topologi Jaringan : berdasarkan struktur interkoneksi dari komputer

2. Model transmisian

3. Scale : berdasarkan pada distribusi secara geografis

b.1 Topologi

- Struktur fisik setiap elemen jaringan dapat saling berhubungan.

- Arsitekstur topologi dasar :

1. Bus, yang hanya memiliki satun jalur transmisi muara elemen jaringan, terbuka keduabelah ujung.

2. Ring, yang memiliki hanya satu jalur transmisi lingkaran tertutup.3. Star, yang memiliki central node dan dengan dasar point to point link elemen-elemen jaringan tersambung, sehingga transmisi dapat dilakukan secara simultan.4. Hub/tree, variasi bus dan ring

b.2 Model transmisi

Terdapat 2 jenis transmisi yaitu :

1. Jaringan broadcast (Multi point)

Memiliki saluran komunikasi tunggal yang dipakai bersama oleh semua mesin. Pesan berukuran kecil biasanya disebut dengan paket. Setiap paket memiliki alamat yang akan digunakan untuk men cek pada saat paket tersebut diterima oleh mesin penerima (tujuan).2. Jaringan point to point (Unicast point)Terdiri dari beberapa hubungan pasangan individu dari mesin. Untuk mengirim paket dari sumber ketempat tujuan, sebuah paket mungkin harus melalui satu atau lebih mesin-mesin perantara.b.3 Scale (LAN, WAN, MAN)

LAN apabila distribusi pada letak geografis jarak pendek (short) pada site yang sama, sedang WAN untuk jarak jauh (long). MAN adalah bentuk spesial dari WAN yang umumnya meng-cover kota atau daerah pinggir kota.

Tabel 1. Klasifikasi prosesor terinterkoneksi berdasarkan jarak

Jarak antar prosesorProsesor ditempat yang samaContoh

0.1 mPapan rangkaianData flow machine

1 mSistemMulticomputer

10 mRuanganLAN (Local Area Network)

100 mGedungLAN

1 kmKampusLAN

10 kmKotaMAN (Metropolitan Area Network)

100 kmNegaraWAN (Wide Area Network)

1000 kmBenuaWAN

10000 kmDuniaInternet

Bagian III

Desain Sistem Database Terdistribusi (SBDT)

Hal yang penting dperhatikan dalam system terdistribusi adalah menentukan penempatan data dan program pada jaringan computer. Menentukan desain suatu organisasi dapat dipandang 3 dimensi, yaitu :1. Tingkat Sharing, terdiri dari :

Tidak ada sharing : apilikasi dan data dijalankan dari setiap lokasi dan tidak ada komunikasi dengan program atau akses ke data ke lokasi lain.

Shaing data : semua program disalin/replica disemua lokasi, tetapi data tidak disalin. Permintaan data dari user diolah oleh komputer dimana user mengakses dan file data akan dikirimkan melalui jaringan. Sharing data dan program : user dari suatu lokasi dapat meminta layanan baik program maupun data dari lokasi lain dan juga sebaliknya.

2. Jenis Pola Akses, terdiri data : Statik. Pola akses tidak berubah dari waktu ke waktu

Dinamik. Pola akses berubah dari waktu ke waktu

3. 3. Tingkat pengetahuan pada jenis pola akses. Diukur dari berapa banyak desainer memiliki informasi tentang bagaimana user akan megakses data. Informasi lengkap : tidak ada penyimpangan yang signifikan dari prediksi tentang pola akses user.

Informasi sebagian : ada penyimpangan dari prediksi.

a. Pendekatan Desain TerdistribusiTerdapat 2 strategi desain yang utama untuk membangun SBDT adalah pendekatan top down dan pendekatan bottom up1. Pendekatan Bottom Up dilakukan jika sudah ada database yang disebar dibeberapa lokasi.

2. Pendekatan Top Down

Dalam Distribution Design dilakukan desain untuk mendistribusilam relasi ke semua lokasi dalam sistem terdistribusi. Tetapi kelemahan dalam mendistribusikan sebuah relasi adalah harus menangani data yang besar, maka relasi dipecah-pecah menjadi sub relasi yang disebut : Fragmen. Desain untuk sistem terdistribusi dapat melalui langkah Fragmentasi, penempatan data atau alokasi dan replikasi.

Tujuan Distribusi Data dengan cara Fragmentasi, penempatan data atau alokasi dan replikasi adalah :

1. Referensi lokalitas. Data seharusnya diletakan sedekat mungkin dengan lokasi pengaksesan data. Jika fragmen data digunakan pada beberapa lokasi maka akan lebih menguntungkan jika fragmen disimpan pada lokasi-lokasi tersebut.

2. Meningkatkan Reliabilitas/kehandalan dan avaibilitas/ketersediaan. Hal ini dapat dilakukan dengan replikasi, yaitu terdapat salinan data dilokasi lain.3. Meningkatkan unjuk kerja. Penemapatan/alokasi yang tidak baik akan menghasilkan kemacetan dalam mengakses data. Contoh sebuah lokasi ada rush/kebanjiran permintaan data akan mempengaruhi unjuk kerja.

4. Keseimbangan kapasitas penyimpanan dan biaya. Meskipun harus menjamin ketersediaan data dan mempertimbangkan referensi lokalitas tetapi harus dipertimbangkan juga kapasitas penyimpanan yang tidak besar sehingga menjamin biaya penyimpanam lebih murah.5. Biaya komunikasi minimal. Harus dipertimbangkan biaya komunikasi antar lokasi penyimpanan. Biaya pengambilan data minimal jika lokalitas maksimum (fragmen data ada dibanyak lokasi). Tetapi jika terjadi update, maka harus dilakukan terhadap data disemua lokasi salinan fragmen data, sehingga biaya akan membengkak.

b. FragmentasiYang akan didistribusikan dalah relasi atau tabel. Alasan mengapa suata tabel difragmentasi untuk kemudian didistribusikan dalah :

1. Penggunaan. Dalam realitas, data yang sering digunakan bukanlah data dalam seluruh tabel, tetapi hanya sebagian data atau sering disebut view.

2. Efesiensi. Data disimpan dilokasi paling dekat dengan pengguna yang sering mengakses. Sehingga data yang tidak sering dibutuhkan untuk lokasi tertentu tidak akan disimpan pada lokasi yang bersangkutan.3. Paralel. Karena data yang didistribusikan berupa fragmen data, maka transaksi yang berupa Query tunggal dapat dipecah menjadi subquery yang dikenalan terhadap fragmen data, sehingga transaksi dapat dillakukan secara bersamaan (Concurrent)

4. Keamanan.

Data yang tidak dibutuhkan oleh aplikasi local tidak akan disimpan dalam lokasi tersebut, sehingga pengguna yang tidak memiliki hak untuk mengakses tidak akan bisa mengakses data yang lain.

Kelemahan dari fragmentasi dalah :

1. Menurunnya unjuk kerja.

View yang melibatkan lebih dari satu fragen data pada lokasi yang berbeda akan mengalami penurunan unjuk kerja.

2. Integritas.

Pengendalian integritas lebih sulit jira atribut yang berperan dalam dependency didistribusikan kebeberapa lokasi.

Fragmentasi data dapat dibuat secara HORIZONTAL atau VERTICAL atau CAMPURAN. c. Aturan-aturan kebenaran FragmentasiFragmentasi tidak dapat dilakukan secara sembarangan. Untuk memastikan bahwa tidak terdapat perubahan data dalam database selama menjalani proses fragmentasi, proses fragmentasi harus memenuhi 3 aturan berikut ini :1. Complteness. Jika sebuah relasi R dibagi menjadi fragmen-fragmen r1, r2., ,rn, maka fragmentasi dikatakan komplit jika dan hanya jika setiap item data yang ditemukan dalam R dapat juga ditemukan didalam salah satu atau lebih fragmen ri.

Aturan ini diperlukan untuk memastikan bahwa tidak ada data yang hilang selama proses fragmentasi

2. Reconstruction Jika sebuah relasi R dibagi menjadi fragmen-fragmen r1, r2., ,rn maka fragmentasi dilata rekontruksi jika dan hanya jika R dapat dibentuk kembali dari fragmen-fragmen ri. Aturan ini diperlukan untuk memastikan ketergantungan secara fungsi (functional dependency) terpenuhi.3. Disjointness

Jika sebuah relasi R dibagi menjadi fragmen-fragmen r1, r2., ,rn, dan data item dj berada didalam fragmen ri maka fragmentasi dikatakan disjoint jika dan hanya jika data dj tidak berada didalam fragmen lain. Fragmentasi secara vertical memiliki pengecualian untuk aturan ini, karena atribut-atribut dari primary key harus diulang untuk dapat melakukan rekontruksi. Aturan ini diperlukan untuk memastikan terjadinya redudansi data seminimal mungkin.d. Fragmentasi Horizontal.

Fragmentasi horizontal berisi tuple-tuple yang dipartisi atau dibagi dari sebuah relasi global R kedalam sejumlah subset r1, r2., ,rn. Tiap-tiap subset berisikan sejumlah tuple dari R. Setiap tuple dalam R harus memiliki lebih dari satu fragmen, sehingga relasi yang asli dapat disusun kembali. Sebuah fragmen dalam fragmentasi horizontal dapat didefinisikan sebagai sebuah seleksi pada relasi global R. Oleh karena itu sebuah predikat Pi digunakan untuk menyusun fragmen ri didefinisikan dengan operasi selection sebagai berikut : ri = pi(r). Penyusunan kembali dari relasi R dapat diperoleh dengan mengambil gabungan dari seluruh fragmen : R= r1U r2U r3.U rn.

Ilustrasi dari fragmentasi secara horizontal adalah :

Relasi R

Relasi hasil fragmentasi r1, r2Contoh :

Diketahui Relasi PROPERTY

PNOSTREETAREACITYPCODETYPEROOMSPCODE

PA14Jl. AKlp2DepokAB7House66500

PL94Jl. MSelatanBekasiAC8Flat44000

PG4Jl. CMargondaDepokAP2Flat21500

PG12Jl. BBaruBogorAB5House35000

PG36Jl. IBaruBogorAC5Flat23000

Akan dilakukan Fragmen berdasarkan kolom Type.

Predikat TYPE = Flat atau TYPE = House

ri = pi(r)TP1= type=Flat (Property)

TP2= type=House (Property)Relasi Hasil fragmentasi adalah :

Relasi : TP1PNOSTREETAREACITYPCODETYPEROOMSPCODE

PL94Jl. MSelatanBekasiAC8Flat44000

PG4Jl. CMargondaDepokAP2Flat21500

PG36Jl. IBaruBogorAC5Flat23000

Relasi : TP2

PNOSTREETAREACITYPCODETYPEROOMSPCODE

PA14Jl. AKlp2DepokAB7House66500

PG12Jl. BBaruBogorAB5House35000

Cek dengan aturan Fragmentasi :

1. Completeness

Seluruh tuple yang ada pada relasi PROPERTY sudah terdistribusi pada relasi TP1 dan TP2

2. Reconstruction PROPERTY = TP1 U TP2

3. Disjointness

Tuple yang berada pada relasi PROPERTY hanya ada pada salah satu relasi hasil fragmentasi antara TP1 atau TP2.

e Fragmentasi Vertical.

Dalam fragmentasi vertical, setiap fragmen ri didefinisikan dengan operasi Project sebagai : ri = ci (R). Penyusunan kembali dari relasi R dapat diperoleh dengan mengambil gabungan dari seluruh fragmen operasi (natural joint) : R= r1 r2 r3. rn. Relasi hasil fragmentasi berisi sebagian atribut/kolom dari relasi global dan harus memiliki atribut primary key yang akan digunakan sebagai tuple-id pada saat rekontruksi. Dalam fragmentasi vertikal tidak harus memiliki fragmen yang dijoint seperti pada fragmen horizontal.Ilustrasi dari fragmentasi secara horizontal adalah :

Relasi R

Relasi hasil fragmentasi r1, r2 r3Contoh :

Diketahui Relasi PROPERTY

PNOSTREETAREACITYPCODETYPEROOMSPCODE

PA14Jl. AKlp2DepokAB7House66500

PL94Jl. MSelatanBekasiAC8Flat44000

PG4Jl. CMargondaDepokAP2Flat21500

PG12Jl. BBaruBogorAB5House35000

PG36Jl. IBaruBogorAC5Flat23000

Akan dilakukan fragmentasi secara vertikal terhadap relasi Property.

R

r1

r2

R

r1

r2

r3

PAGE 10

_1071603827.vsdCPU

Memory

CPU

Memory

CPU

Memory

Shared secondary storage

Gambar 4Shared disc multiprocessor

_1071604896.vsdCommunication Network

Site 1

Site 2

Site 3

Site 4

Site 5

Gambar 6Database terpusat pada jaringan

_1071607350.vsdServer

_1071607399.vsdComputer

Topologi Ring

_1071608311.vsdNode #1

Node #2

Node #3

Node #4

Topologi Bus

Topologi mashed

Gamabr 8Jenis Topologi Jaringan

_1071605114.vsdCommunication Network

Site 1

Site 2

Site 3

Site 4

Site 5

Gambar 7Sistem Database terdistribusi

_1071604074.vsdCPU

Memory

CPU

Memory

CPU

Memory

CPU

Memory

Gambar 5Shared nothing multiprocessor system

Switch

_1071602770.vsdDescription

Manupulation

Control

Aplication Program 1(dengan data semantic)

Aplication Program 2(dengan data semantic)

Aplication Program 3(dengan data semantic)

Gambar 2Database processing

_1071603366.vsdCPU

CPU

CPU

Memori

I/O

Gambar 3Shared memory multiprocessor

_1071601961.vsdProgram 1Data description1

Program 2Data description2

Program 3Data description3

Gambar 1File Processing