Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
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