database replication

20

Upload: dadang-handaru

Post on 13-Jun-2015

1.064 views

Category:

Documents


4 download

DESCRIPTION

pemrograman sistem terdistribusi

TRANSCRIPT

Page 1: Database Replication
Page 2: Database Replication

Replikasi database adalah seperangkat teknologi yang digunakan untuk menyalin dan mendistribusikan data dari satu database ke database yang lain. Dan selanjutnya, mensinkronisasikan antar database untuk menjaga konsistensi. Dengan replikasi, data dapat didistribusikan ke lokasi yang berbeda dan pengguna yang jauh melalui LAN, WAN, Dial-up Connection, wireless connections, dan internet.

Page 3: Database Replication

Data consolidation (central audit & analyse) Data distribution (for branch offices) Performance

Access efficiency (moving data near apps.) Load balance (distributing access load) Security (data protection) Availability (off-line access) Reliability (disaster recovery, avoiding single point

of failure) Data Grid (to improve availability, response time,

fault tolerance) Digital Library (copying digital doc, index … )

Page 4: Database Replication

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

Transactional publication:Publisher mengirimkan transaksi ke subscriber setelah subscriber menerima sebuah initial snapshot dari data yang dipublikasikan

Transactional publication with updatable subscriptions:Publisher mengirimkan transaksi ke SQL Server Subscriber setelah SQL server subscriber menerima sebuah initial snapshot dari data yang dipublikasikan.Transaksi yang berasal dari subscriber dapat digunakan dalam publisher

Merge publicationPublisher dan subscriber dapat melakukan update terhadap data yang dipublikasikan secara independen setelah subscriber menerima initial snapshot dari data yang dipublikasikan. Perubahan akan digabungkan secara periodik

Page 5: Database Replication

Replikasi terdiri dari administrasi utama replikasi yaitu Control Center, Capture dan Apply Program.

Control Center adalah alat administrasi database DB2 yang digunakan untuk administrasi replikasi. Control Center secara otomatis mengenali fungsi seperti pembuatan tabel tujuan dan tabel kontrol pada saat menentukan informasi hasil copy tujuan.

Capture Program merupakan alat replikasi yang merubah data dan membuat perubahan itu dapat dilakukan pada replikasi. Capture program berjalan pada database server tujuan.

Capture & Apply Program menangkap perubahan yang terjadi pada data dalam tabel sumber replikasi dengan cara membaca database log atau journal.

Administrasi replikasi mempunyai 2 tugas utama yaitu mendefinisikan sumber replikasi dan menentukan tujuan replikasi. Sumber replikasi berupa tabel atau view digunakan sebagai sumber untuk copy data ke satu atau beberapa tabel tujuan. Tujuan replikasi merupakan spesifikasi dari satu atau beberapa tabel tujuan beserta lokasinya, struktur dan waktu penjadwalan sebaik peningkatan SQL yang diperlukan.

Page 6: Database Replication

Beberapa hal yang menjadi pertimbangan dalam perencanaan replikasi :

1. Kebutuhan data yang akan diubah dan siapa yang mengubah

2. Pendistribusian data memerlukan konsistensi, otonomi dan kesinambungan

3. Kelengkapan replikasi yang meliputi kebutuhan user, infra struktur teknik, jaringan dan keamanan serta karakteristik data

4. Jenis replikasi dan pilihannya

5. Topologi replikasi dan bagaimana mewujudkannya agar sesuai dengan jenis replikasi

Page 7: Database Replication

Langkah praktis melakukan replikasi :

1. Merencanakan skenario replikasi pada tingkat sistem dan aplikasi

2. Mendefinisikan sumber replikasi

3. Mendefinisikan tujuan replikasi

4. Melakukan konfigurasi Capture dan Apply Program

5. Memulai Capture Program

6. Memulai Apply Program

Page 8: Database Replication

Existing Existing technologiestechnologies

IBM Replication

WebSphere Information Integrator V8.2

Supports multivendors DB

Admin: create replication criteria control table

Capture: use log/trigger to capture the changes temp table

Apply: scheduled apply transactions accumulated target DB

Alert Monitor: monitor and notify users

Supports: after-image copy / before-image copy (can rollback)

Allows subset/simple view/ complex joins & unions copy

Asynchronous replication, allows specifying schedule

IBM Replication

Page 9: Database Replication

Sybase Replication

Pioneer, Since 1993

“publish-and-subscribe” approach

Replication Agent: runs on each publisher, detects changes base on logs

Replication Server: apply changes to target DBs (use pre-configured intelligent routes)

Replication Server Manager: GUI-based, manage/monitor P2P env.

Stable Queues: temporary storage of data , ensure no data is lost

Is advanced in providing high performance

Sybase Replication

Page 10: Database Replication

Oracle Replications

Multimaster Replication Materialized View Replication Multimaster Replication

P2P structure

Changes are pushed to every other site (synchronous/ asynchronous)

Conflicts may happen (Update conflict/Uniqueness conflict /Delete conflict )

Materialized View Replication

One master site manages several non-master sites (keep one/partial copy)

Updatable

Refresh (fast refresh/ complete refresh/ force refresh)

Hybrid Replication

Oracle Replications

Page 11: Database Replication

MySQL Replications

1. simple master/slaver

3. dual masters

2. one slave two masters

4. dual master with slaves5. master ring 6. master ring with slaves

MySQL Replications

Basic replication services, using a light weight Master-Slave model

The master writes updates to logs; the slave reads and executes the queries from the master’s logs

the slave checks results on both sites, replication stops if query only succeeds on one site

This simple structure can be combined arbitrarily to build complex architectures

In a slow network, it is difficult for a slave to catch up with the master – improved in 4.0 by adding relay logs

Have to lock or restart the master for initial snapshot copy

Page 12: Database Replication

Existing Existing technologiestechnologies

Globus DRS

Globus DRS

A client creates a request file (requested file name & target location) and sends to DRS

The Replicator checks user’s credential, and query RLI to find the LRC that contain mappings for the requested file

Also queries each remote LRC to get the physical file names, and selects a best one

Then starts RFT to transfer files.

Finally, registers the new replica to its LRC. The LRC will updates LRI to make replica visible

Page 13: Database Replication

Existing Existing technologiestechnologies

EGEE RMS

Designed for large, read-only, file replicating among heterogeneous resources

Implement File Catalogues

Replica Location Service maps replica’s Grid Unique ID to physical location

Local Replica Catalogues provides information of replicas for a single VO

Replica Metadata Catalogue maps file’s logical name to Grid Unique ID

LCG File Catalogue is used for performance issues

EGEE RMS

Page 14: Database Replication

Existing Existing technologiestechnologiesApplication

DISPATCHER: monitors input port and dispatches requests to handler

High Level Request Handler

MCAT

Remote SRB

Low Level Request Handler

File system driversUnitree HPSS UNIX

DBMS driversDB2 Oracle ObjectStore Illustra

SRB

Enables file searching by attributes

MCAT a database system storing metadata

one or more Master daemon processes having SRB Agent running on them

The dispatcher monitors incoming requests and pass to HLRH (can retrieve metadata from local/remote MCAT) or LLRH (can retrieve data from storage)

supports synch/asynch replication, MCAT replication

Page 15: Database Replication

a. PublisherSebuah SQL Server yang membuat data tersedia dalam replikasi, mendeteksi perubahan data, dan memelihara informasi tentang satu atau lebih publikasi dan artikel

b. DistributorSebuah SQL server yang menyimpan replication metadata untuk satu atau lebih publisher. Setiap distributor memiliki sebuah database distribution yang menyimpan history, transaksi, dan metadata. Ketika sebuah SQL Server menjadi publisher dan distributor, distributor ini disebut distributor lokal. Ketika publisher dan distributor ada dalam SQL Server yang berbeda, distributor ini disebut remote distributor.

Page 16: Database Replication

c. SubscriberSebuah SQL Server yang menerima data yang direplikasi

d. PublicationKumpulan satu atau lebih artikel. Sebuah publikasi dapat dimasukkan ataupun diambil dari subscriber

e. ArticleSebuah objek dari database yang ada dalam publikasi

f. SubscriptionSebuah permintaan untuk publikasi yang berisi di mana dan kapan publikasi akan diterima

Page 17: Database Replication

Authentication : pastikan siapa atau apa yang dapat mengklaim konfigurasi replikasi

Authorization : akses kontrol terhadap resources seperti tabel dalam database

Enkripsi : mengubah data kedalam sebuah bentuk yang hanya dapat dibaca oleh penerima, yang pada umumnya menggunakan kode

Filtering : menyaring data yang tersedia bagi subscriber.

Page 18: Database Replication

Authentication dan authorization digunakan untuk mengontrol akses terhadap server yang ada dalam sebuah proses replikasi dan mengontrol akses terhadap objek database yang direplikasi. Authentication dan authorization yang tepat bergantung pada aspek keamanan berikut ini:

Agent Security : gunakan replication agent security model yang tepat.

Administration Tools : gunakan aturan server dan database yang tepat untuk setup, maintenance dan pemrosesan replikasi

Publication Akses List (PAL): memberikan akses terhadap publikasi replikasi. PAL merupakan sebuah daftar control akses untuk replikasi

Page 19: Database Replication

Pada umumnya replikasi mendukung ketersediaan data setiap waktu dan dimanapun diperlukan.

Keuntungan lainnya :

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.

Page 20: Database Replication

Replikasi dapat menyalin dan mendistribusikan data dari satu database ke database yang lain. Tiga hal utama yang berkaitan dengan replikasi pada SQL Server adalah konfigurasi distribution, membuat publicationdan dan membuat subscription. Konfigurasi distribution memfokuskan pada penempatan lokasi snapshot yang harus ada di komputer lain dalam jaringan. Publication digunakan untuk memilih tipe-tipe publikasi, mengatur database dan tabel-tabel apa saja yang akan didistribusikan ke subscriber serta mengatur snapshot agent dalam melakukan sinkronisasi. Subscriber merupakan server SQL yang menerima data yang direplikasi. Data dalam subscriber diperbaharui dengan SQL Server Agent.