Download Pertemuan-5-Database

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Konsep Database
Terdistribusi
DATA BASE TERDISTRIBUSI
• Basis data terdistribusi adalah kumpulan
database yang disimpan di banyak komputer
pada lokasi yang berbeda-beda dan
menampilkan ke user sebagai single
database
• Komputer-komputer tersebut terhubung
dengan jaringan dan user dapat mengkases,
mengupdate dan memodifikasi data pada
database melalui jaringan
DDBMS
DDBMS (Distributed DBMS)
merupakan suatu peranti lunak yang
memungkinkan manajemen database
terdistribusi dan membuat proses
distribusi itu sendiri menjadi
transparan bagi user.
Beberapa alasan data harus
didistribusikan
• Data didistribusikan untuk meminimalisasikan
biaya komunikasi ataupun waktu respon
• Data dapat tersimpan dalam suatu tempat dimana
data tersebut diciptakan sehingga pencipta data
dapat melakukan kontrol keamanan data
• Data dapat direplikasikan untuk meningkatkan
ketersediaan pada suatu event kesalahan ataupun
untuk mengurangi waktu respon
Alasan tabel-tabel pada database harus
didistribusikan pada beberapa komputer yang
terhubung ke jaringan
• Secara signifikan meningkatkan
performansi, performansi meningkat
disebabkan karena penempatan data yang
frekuensi aksesnya paling tinggi dekat
dengan sisi client
• Karena peningkatan suatu sistem, dalam
artian bahwa suatu bisnis akan semakin
berkembang melebihi kapasitas aslinya
sehingga diperlukan multisistem untuk
mengolah database tersebut
Bentuk-Bentuk topologi distribusi data
•
•
•
•
•
Fully Connected Network
Partialy Conneted Network
Tree Strutured Network
Ring Network
Star Network
Fully Connected Network
Partialy Conneted Network
Tree Strutured Network
Ring Network
Star Network
Teknologi sistem database terdistribusi
adalah integrasi, bukan sentralisasi
MERANCANG DATABASE TERDISTRIBUSI
•
FRAGMENTASI DATA : Fragmentasi
memecah tabel menjadi beberapa bagian
yang lebih kecil
•
REPLIKASI : sistem memelihara beberapa
salinan (copy) dari relasi. Setiap salinan
disimpan pada beberapa lokasi yang
berbeda
•
ALOKASI DATA
Jenis fragmentasi
•
Horisontal, dimana tabel dipecah menurun
secara horizontal dan setiap fragmen
mengandung beberapa jumlah baris yang lengkap.
•
Vertikal, dimana tabel dipecah menurun secara
vertical dan setiap fragmen mengandung
beberapa jumlah kolom yang lengkap.
•
Nested (tersarang), dimana fragmentasi
horizontal (vertical) selanjutnya difragmentasi
secara horizontal (vertical).
•
Hibrid (campuran),dimana tabel pertama-tama
difragmen secara horizontal (vertical), kemudian
difragmen lebih lanjut secara vertical(horizontal
Contoh fragmentasi
Hasil Fragmetasi
• Hasil Fragmentasi Horisontal
• Hasil Fragmentasi Vertikal
KONSEP DISTRIBUTED DATABASE
PADA ORACLE10G
Arsitektur Distributed Database
• Sistem database terdistribusi pada Oracle
mengijinkan aplikasi-aplikasi untuk mengakses data
dari database yang lokal maupun jauh.
• Dalam sebuah sistem database terdistribusi
homogen setiap database merupakan Oracle
Database, sedangkan pada sistem database
terdistribusi heterogeneous paling sedikit satu
diantara sekumpulan database bukan merupakan
Oracle Database.
• Distribusi basis data menggunakan arsitektur
client/server untuk memproses permintaan
informasi.
Homogenous Distributed Database
Homogenous Distributed Database (2)
• Menggambarkan sistem terdistribusi yang
mengkoneksikan 3 database hq, mfg, dan
sales
• User dapat mengakses atau memodifikasi
data pada beberapa database pada suatu
lingkungan terdistribusi
• Misalnya manufacturing melakukan join
antara tabel yang ada di local database mfg
dengan tabel yang berada di database hq
(remote access)
Sistem Database Terdistribusi
Heterogenous
• Heterogeneous Service: komponen yang terintegrasi di
dalam server Oracle Database dan menggunakan teknologi
produk-produk Oracle Transparent Gateway.
• Transparent Gateway Agent : memfasilitasi komunikasi
antara sistem database Oracle dan yang non-Oracle dan
menggunakan komponen Heterogeneous Services dalam
server Oracle Database.
• Generic Connectivity : memungkinkan kita terhubung kepada
penyimpanan data pada non-Oracle Database dengan
menggunakan Heterogeneous Services ODBC agent atau
Heterogeneous Services OLE DB agent.
Data Warehouse
• Data warehouse adalah relasional database
yang didesain untuk proses query dan
analisa
• Meliputi: extraction, transportation,
transformation, loading solution, online
analytical processing (OLAP),client analysis
tool, dan aplikasi lain yang mengatur proses
pengumpulan data dan mengirimkan ke
business user
Arsitektur data warehouse
End user secara langsung mengakses data dari beberapa sistem
melalui data warehouse
Data Mining
• Suatu metode yang digunakan untuk
mengekstrak pola dari suatu data
• Nama lain: Knowledge Discovery in
Database (KDD)
• Proses KDD:
 Identifikasi masalah
 Menyiapkan data
 Membangun model data (data mining)
 Menggunakan dan memonitoring
model
Data Mining Task’s
• Association, menemukan hubungan dan korelasi
antara berbagai data item
• Classification, menganalisa data percobaan dan
membangun model berdasarkan fitur dari data
• Prediction, memprediksi nilai-nilai yang mungkin
terjadi dari data yang hilang atau distribusi nilai
dari atribut tertentu dalam kumpulan obyek
• Clustering, mengidentifikasi cluster yang
tersimpan dalam data, dimana cluster tersebut
merupakan kumpulan data yang memiliki kesamaan
dengan yang lain
• Time-series analysis, mencari urutan kesamaan,
pola (pattern), periode dan deviasi
Keunggulan
• penyimpanan database besar, dalam
hitungan megabyte, gigabyte, terabyte
• Relationship yang komplek antar field.
Gabungan antara data numerical dan
categorical
• Skalabilitas tinggi.
Arsitektur basisdata client/server
Arsitektur basisdata client/server
(2)
Server database adalah perangkat lunak
Oracle untuk mengelola database
sedangkan client adalah aplikasi yang
meminta informasi dari server.
Tiap komputer dalam sebuah jaringan
adalah sebuah node yang dapat meng-host
beberapa database sekaligus. Setiap node
bisa berperan sebagai client, server,
bahkan kedua-duanya, tergantung pada
situasi.
Sistem database terdistribusi pada
Oracle Database
Global Name
• Sistem database terdistribusi,
masing-masing database seharusnya
memiliki global database name yang
unik.
• Nama-nama unik ini mengidentifikasi
sebuah database dalam sistem
tersebut.
Database Link
• Konsep utama dari sistem basisdata
terdistribusi adalah database link.
• Database link adalah suatu koneksi
antara dua server database fisik yang
memungkingkan client untuk
mengakses datanya sebagai satu
database logik.
Contoh database link
Menggunakan schema objects dengan
database link
Oracle Database menggunakan global
database name untuk menamakan
schema obyek secara global dengan
kalimat sebagai berikut :
schema.schema_object@global_datab
ase_name
Menggunakan synonym
•
•
•
•
Dalam Oracle Database, fungsi-fungsi
synonym sbb :
menyembunyikan nama dan pemilik dari
obyek tersebut
memberi transparensi lokasi untuk obyekobyek remote dari sebuah database
terdistribusi
menyederhanakan kalimat-kalimat SQL
untuk user-user database
memberi akses terbatas yang mirip dengan
view-view
Menggunakan View
View merupakan presentasi data yang bisa
disesuaikan dalam sejumlah tabel atau viewview lain.View bisa dianggap seperti query
tersimpan atau tabel virtual karena
sebenarnya tidak mengandung data. Namun,
view memperoleh data tersebut
berdasarkan tabel-tabel yang telah
ditunjukkan.View lokal dapat memberi
lokasi transparensi untuk tabel-tabel lokal
dan remote dalam sebuah sistem disribusi
basisdata.
Proses Transaksi pada Sistem
Terdistribusi
• Kalimat remote SQL : adalah sebuah query yang
memilih informasi dari satu atau lebih tabel-tabel
remote, semua tabel yang terletak pada node
remote yang sama
• Kalimat distribusi SQL: Sebuah kalimat query
terdistribusi menerima informasi dari dua atau
lebih node
• Shared SQL untuk kalimat distribusi dan
remote: Mekanisme dari kalimat distribusi dan
remote memakai shared SQL sama pentingnya
dengan kalimat lokal. Sintaks SQL harus sesuai dan
obyek-obyek yang dituju harus sesuai. Bila
tersedia, shared SQL bisa digunakan untuk
mengatasi kalimat-kalimat atau query buangan baik
dari lokal maupun remote.
• Transaksi distribusi: suatu transaksi yang terdiri
dari satu atau lebih kalimat yang bersifat individu
atau kelompok, meng-update data pada dua atau
lebih node yang berbeda pada database yang
bersifat distribusi.
• Mekanisme two-phase commit: menggaransikan
semua server database yang terdapat pada
transaksi distribusi, semuanya menjalankan atau
me-roll-back kalimat-kalimat dalam suatu
transaksi. Mekanisme ini juga melindungi operasioperasi DML yang implisit yang dilakukan oleh
integrity constraint, remote procedure call, dan
trigger.
• Resolusi nama database link: sebuah obyek yang
digunakan untuk menspesifikasikan suatu database
link. Parameter penting dari komponen adalah :
object name ,database name,domain
Dua jenis operasi didalam transaksi
terdistribusi yang diijinkan yaitu
1. Transaksi-transaksi DML dan DDL
operasi-operasi yang mendukung :
CREATE TABLE AS SELEC
DELETE
INSERT
LOCK TABLE
SELECT
SELECT FOR UPDATE
2. Statement-statement Control
Transaksi
COMMIT
ROLLBACK
SAVEPOINT
PEMBUATAN DATABASE LINK
1.
Buat Database Link dengan nama dblink_erp1 (Untuk Pengujian
Connect As Connected User), dengan konfigurasi sbb :
2.
Buat Database Link dengan nama dblink_erp2 (Untuk Pengujian
Connect As : Connected User - PUBLIC), dengan konfigurasi
sbb:
3.
Buat Database Link dengan nama dblink_erp3 (Untuk Pengujian
Connect As : Fixed User), dengan konfigurasi sbb :
4. Buat Database Link dengan nama dblink_erp4 (Untuk Pengujian
Connect As : Fixed User - PUBLIC), dengan konfigurasi sbb :
5. Buat Database Link dengan nama
dblink_erp5 (Untuk Pengujian Public
Fixed User Shared Database Link)
6. Buat Database Link dengan nama
dblink_erp5b (Untuk Pengujian Public
Fixed User Shared Database Link dengan
autentifikasi user berbeda)
7. Buat Database Link dengan nama
dblink_erp6 (Untuk Pengujian Public
Connected User Shared Database Link)
8.
Jika semua berjalan dengan baik, maka tahapan pembuatan
database link berhasil