Selasa, 31 Desember 2013

Review Jurnal Tema 1 "Disaster Recovery using Oracle Data Guard"

Review Jurnal
Disaster Recovery using Oracle Data Guard

Di dalam dunia bisnis  peran IT sangatlah penting guna menunjang kelangsungan bisnis perusahaan tersebut. Penting bagi perusahaan untuk mengemplementasikan konsep high availability (HA) yang berguna untuk melindungi data-data yang merupakan aset terpenting perusahaan. Tujuan proyek akhir ini adalah membangun sistem disaster recovery yang mudah digunakan, murah, komprehensif, efektif, efisien, dan dapat diandalkan serta menjamin ketersediaan data. Dengan menggunakan Oracle Database hasil dari proyek akhir ini intinya berupa sistem Data Guard yang berfungsi melindungi data perusahaan tersebut dari kerusakan, bencana, failure, error, serta perawatan rutin yang menyebabkan database menjadi Down. Data Guard ini memungkinkan ketersedian datanya selama 24 jam per hari, 7 hari per minggu. Dalam sistem Data Guard terdapat dua macam Database, yaitu Database utama (primary Database) dan satu atau lebih Database cadangan (stanby Database) yang akan digunakan jika primary Database mengalami downtime.
Di setiap sistem database, kemungkinan terjadinya failure terhadap sistem dan perangkat keras selalu ada. Maka dari itu perlu mempersiapkan sistem backup untuk menjamin proses operasional harian yang penting bisa tetap berjalan, meskipun primary database sedang mengalami failure.
Berdasarkan survei dari Disaster Recovery Journal (DRJ) penyebab utama kerusakan data yang mengakibatkan sistem mengalami downtime yang tidak direncanakan itu berasal dari hardware and system error (49%), disusul oleh human error (36%), lalu computer viruses (7%), software corruption (4%), dan terakhir natural disaster (3%). Adapula downtime yang di rencanakan, seperti perubahan data, perubahan sistem, perawatan rutin, serta pengembangan sistem.       
Business Continuity Plan (BCP) dan Disaster Recovery Plan (DRP) adalah dua hal yang sangat penting dalam proses bisnis. Secara umum tujuan dari BCP dan DRP adalah menjaga bisnis tetap beroperasi meskipun ada gangguan dan menyelamatkan sistem informasi dari dampak bencana lebih lanjut.
BCP adalah proses otomatis ataupun manual yang dirancang untuk mengurangi fungsi-fungsi penting organisasi, sehingga menjamin kontinuitas layanan bagi operasi yang penting. DRP adalah prosedur yang dijalankan saat BCP berlangsung berupa langkah-langkah untuk penyelamatan dan pemulihan (recovery) khususnya terhadap fasilitas IT dan sistem informasi serta database. Proses perencanaan suatu DRP akan melindungi organisasi dari kegagalan layanan komputer utama, meminimalisasi risiko organisasi terhadap delay dalam penundaan layanan, menjamin keandalan sistem yang tersedia melalui pengujian dan simulasi, serta meminimalisasi pengambilan keputusan olehmanusia selama bencana.
Konsep Oracle Data Guard dapat menjamin high availability, data protection, dan disaster recovery bagi data perusahaan. Jika production database mengalami downtime karena sebab tertentu, maka Data Guard             akan mengalihkan tugas dan fungsinyakepada stanby database, sehingga downtime dapat di minimalisir. Dengan Data Guar, administrator juga dapat dengan bebas meningkatkan performance dari production database dengan menyerahkan backup dan operasi reporting kepada stanby database.
Oracle database beroperasi pada salah satu dari dua role, yaitu primary dan stanby. Dengan Data Guard role dapat diubah dengan melakukan operasi switchover atau failover. Switchover adalah operasi penukaran role antara  primary database dengan salah satu dari stanby database. Biasanya dilakukan untuk alasan perawatan rutin atau perawatan lain yang telah direncanakan. Operasi ini menjamin tidak ada data yang hilang. Selama switchoveri, primary database beroperasi pada stanby role dan stanby database beroperasi pada primary role.
Operasi failover dilakukan hanya pada saat primary database mengalami downtime yang tidak direncanakan. Misalnya terjadi Hardware failure atau bencana alam. Operasi ini membuat stanby database beroperasi pada primary role. Database  administrator dapat melakukan konfigurasi agar Data Guard dapat menjamin tidak ada data yang hilang.
Data Guard Broker adalah manajemen framework terdistribusi yang digunakan untuk mengotomatisasi pembuatan, pengelolaan, dan pengawasan sistem Data Guard. Data Guard Broker secara logis mengelompokkan primary dan stanby database dalam sebuah broker configuration sehingga keduanya dapat dikelolabersama sebagai unit yang terintregrasi. Manajemen broker configuration dapat dilakukan baik secara local maupun remote dengan Oracle Enterprise Manager Grid Control graphical user interface (GUI) atau Data Guard command-line interface (DGMGRL).
Oracle Data Guard menyediakan tiga jenis mode proteksi yang dapat diterapkan sesuai dengan kondisi yang paling cocok dengan kriteria masing-masing mode. Mode proteksi pertama adalah maximum protection. Mode ini menjamin tidak ada data yang hilang jika primary database mengalami downtime. Mode proteksi kedua adalah  maximum availability yang mampu menyediakan perlindungan data level tinggi tanpa menggangu atau membahayakan availabilitas dari primary database. Mode proteksi ketiga adalah maximum performance yang merupakan mode default, juga menyediakan perlindungan data level tinggi tanpa mempengaruhi performance dari primary database.
  Perbedaan metode Recovery Data Guard dengan cara konvensioanal. Proses recovery konvensional pada dasarnya terdiri dari backup, restoration, serta recovery. Dibutuhkan langkah yang panjang untuk melakukan ketiga proses tersebut. Sementara Oracle Data Guard menawarkan metode recovery yang lebih sederhana dan mudah. Pada proses ini cukup melakukan satu kali konfigurasi yang dilakukan di awal, yaitu pada saat sistem data Guard dibangun. Proses backup dilakukan secara otomatis dengan pengiriman redo data. Ketika terjadi failure, tidak perlu melakukan proses restorasi dan recovery seperti cara konvensional. Data Guard hanya tinggal melakukan proses switchover atau failover.
Perencanaan sistem dalam proyek ini diasumsikan bahwa DBA     dari PENS-ITS memutuskan untuk mengimplementasikan Oracle Data Guard guna melindungi Oracle database institusi tersebut. Manajemen sistem data Guard dilakukan dengan menggunakan perintah-perintah SQL baik melalui Enterprise Manager Grid Control maupun melalui SQL*Plus. Untuk merealisasikan hal tersebut dibuat satu primary database dan satu stanby database. Setelah itu dilakukan pemeriksaan dan pengujian terhadap konfigurasi yang kemudian diberlakukan mode proteksi maximum availability yang mampu menyediakan proteksi data pada tingkat yang paling tinggi tanpa membahayakan primary database. Lalu hal terakhir yang perlu dilakukan adalah menguji sistem dengan cara menambahkan datafile pada primary database serta memasukkan data baru pada salah satu tabel dalah skema HR. Apabila pada stanby database terdapat data yang baru saja dimasukkan melalui primary database, maka sistem Data Guard dapat dikatakan berhasil dibangun. Semua cara pelaksanaan pembangunan telah dijelaskan di dalam jurnal.
Dalam proses penelitian yang dilakukan, penyusun mengalami kesulitan pada saat mengatur konfigurasi, terutama saat mengintegrasikan primary server dengan stanby server. Namun setelah kedua server tersambung dan dapat berkomunikasi, konfigurasi menjadi lebih mudah. Setelah seluruh konfigurasi telah dilakukan dan sistem Data Guard berhasil dibangun, manajemen dan penggunaan sistem ternyata mudah, sederhana dan cukup user-friendly.
Kesimpulan setelah dilakukan percobaan dan analisa terhadap kinerja sistem adalah sebagai berikut :
1.      Implementasi sistem Data Guard terbagi menjadi dua bagian, yaitu pembuatan dan penggunaan. Proses pembuatan dilakukan dengan hati-hati karena cukup rumit. Kesalahan pada proses ini dapat berakibat buruk pada kinerja sistem. Namun setelah pembuatan berhasil, pengguna dan manajemen sistem sangat nudah dan sederhana terutama dalam hal recovery data.
2.      Metode recovery Data Guard dapat menggantikan metode recovery konvensional yang menghabiskan banyak waktu. Dengan Data Guard, downtime dapat diminimalisir hingga kurang dari 10 detik.
3.      Penggunaan Data Guard Broker sangat membantu dalam pengelolaan sistem, karena dapat di kontrol ssecara terpusat melalui satu interface,
4.      Data Guard merupakan solusi yang murah tetapi tetap efektif dan dapat diandalkan untuk menjamin ketersediaan data.

Tema 1 : Recovery


Rabu, 09 Oktober 2013

KEY dan SQL

KEY dan SQL
Kunci (key) adalah kolom/atribut atau kombinasi kolom/atribut yang dapat digunakan untuk mengidentifikasi baris dalam tabel (entitas) secara unik.
Penentuan Key suatu tabel didasarkan pada sifat “determinasi”.     
Determinan : gugus atribut dimana satu atau lebih atribut lain tergantung secara fungsional.
“A determinan B” artinya apabila nilai atribut A akan menentukan nilai-nilai atribut B.
“A determinan B” dapat dituliskan sebagai suatu ketergantungan fungsional A à B. Jika A menentukan B,C dan D maka dituliskan A à B,C,D. Contoh : Relasi Mahasiswa=(NIM,Nama,Agama,TglLhr) Bila nilai NIM seorang mahasiswa diketahui maka dapat digunakan untuk melihat nilai-nilai atribut Nama, Agama dan Tanggal Lahirnya. Dituliskan NIM à Nama,Agama,TglLhr.
Superkey (key) :
-           gugus atribut entitas yang dapat digunakan untuk mengidentifikasikan       entitas/obyek secara unik.
-           satu atau lebih atribut yang membedakan setiap baris secara unik.
Misal R skema relasi, dan K adalah satu atau lebih atribut dari R
dimana K Í R maka K disebut Superkey jika dan hanya jika K à R.
Catatan : Suatu skema relasi dapat memiliki lebih dari 1 superkey.  Bila K adalah superkey maka semua atribut gabungan yang mengandung K juga merupakan superkey    
Contoh : Relasi Sopir=(NoKTP,NoSIM,Nama,Alamat). Alternatif superkey :
§   NoKTP            superkey ;        NoKTP à Sopir
§   NoSIM            superkey ;        NoSIM à Sopir
§   (NoKTP,NoSIM)        superkey ;        (NoKTP,NoSIM) à Sopir
§   (NoKTP,Nama)           superkey ;        (NoKTP,Nama) à Sopir
§   (NoKTP,NoSIM,Nama)          superkey ;        (NoSKTP,NoSIM,Nama) à Sopir
§   (NoKTP,NoSIM,Nama,Alamat) dengan sendirinya juga superkey
§   Nama bukan superkey. Demikian juga (Nama,Alamat) juga bukan superkey

Candidate Key :
- Superkey dengan jumlah atribut minimal
- Superkey tanpa redundansi (tidak memuat subset superkey yang lain)
K adalah Candidate Key dari skema relasi R jika dan hanya jika :
K à R dan tidak terdapat a Ì K dengan a à R
Contoh :
Skema relasi Sopir=(NoKTP,NoSIM,Nama,Alamat). Alternatif superkey :
§    NoKTP                                    superkey ;        NoKTP à Sopir
§    NoSIM                                    superkey ;        NoSIM à Sopir
§    (NoKTP,NoSIM)                    superkey ;        (NoKTP,NoSIM) à Sopir
§    (NoKTP,Nama)                       superkey ;        (NoKTP,Nama) à Sopir
§    (NoKTP,NoSIM,Nama)         superkey ;        (NoSKTP,NoSIM,Nama) à Sopir
§    (NoKTP,NoSIM,Nama,Alamat) dengan sendirinya juga superkey
Sebagai Candidate Key nya adalah NoKTP atau NoSIM

Secondary Key
  • Secondary Key adalah atribut (atau kombinasinya), yang digunakan
            sebagai perantara untuk mendapatkan kembali data asal.
  • Biasanya dipakai pada pencarian data (data retrieval).
Foreign Key

  • Foreign Key adalah satu atau lebih atribut dalam satu tabel yang merupakan primary key tabel lain (kunci penghubung).
SQL
(Structure Query Language)

DDL (Data Definition Language)
         Create Tables
CREATE TABLE table (An Dn, An Dn, .., An Dn)
Membuat Tabel Siswa :
( NISN char(6) , nama_siswa char(30),  tgl_lahir date(), tempat_lahir char (30), KLS char(2), alamat char(30),              nama_ortu_wali char(30))
Keterangan :
tabel = nama tabel yang akan dibuat
A1..An = atribut atau variabel field
D1, Dn= tipe data untuk A1..An
         Create Indexes
Index adalah struktur data eksternal yang digunakan untuk mengurutkan atau mengatur pointer data dalam sebuah table.
Peringatan :
Jika kita menggunakan beberapa index pada suatu tabel akan menunjukkan penurunan performa dikarenakan extra overhead dalam pemeliharaan indexnya.
Selian itu :
Banyak menggunakan index dapat menyebabkan masalah penguncian record, bila digunakan dalam peralatan multiuser.
Dengan demikian :
Gunakanlah index dalam konteks yang benar, sebuah index dapat memperbaiki performa lebih tinggi sebuah aplikasi. 
Gunakan pernyataan CREATE INDEX untuk membuat index.
Structure pembuatan index adalah :
CREATE INDEX nama_index   
ON  nama_tabel (nama_field)

CREATE INDEX idxCustomerID     
ON tblCustomers
(CustomerID) WITH PRIMARY

CREATE UNIQUE INDEX nama_index   
ON  nama_tabel (nama_field)
         Altering Tables
ALTER TABLE tabel
ADD | MODIFY (An dn, An dn, .., An dn);
Menghapus Field :
ALTER TABLE tblCustomers   
DROP COLUMN Address
         Dropping Tables/Indexes
Untuk menghapus index :
DROP INDEX nama_index   
ON  nama_tabel
Untuk menghapus Tabel :
DROP TABLE nama_tabel 

DML ( Data Manipulation Language)
          Insertion : Menyisipkan data record ke  dalam suatu tabel
INSERT INTO tabel (A1, A2, .., An )
VALUES (C1, C2, …,Cn-1, Cn)
         Updating : Memperbaiki data record dalam suatu tabel
UPDATE  tabel
SET  assignments
WHERE Criteria
          Deletion  : Menghapus data record pada  suatu tabel
DELETE FROM    Tabel
WHERE Criteria
          Selection : Menampilkan data record dari  suatu table
SELECT A1, A2, ………,An-1, An
FROM    T1, T2, ………,Tn-1, Tn
WHERE Criteria
GROUP BY A1, A2, ………,An-1, An
HAVING Criteria_Agregate_function
ORDER BY Criteria_A   

CDL (Control Definition Language)
         GRANT : Memberikan otoritas (hak akses) manipulasi data pada suatu tabel (database) kepada user
GRANT <otoritas> ON <nm_tabel> TO <user_name>
Grant Type :
                        insert ,             select,
                        update ,          delete ,            all
         REVOKE : Mencabut otoritas (hak akses) manipulasi data pada suatu tabel (database) dari user
REVOKE <otoritas> ON <nm_tabel> FROM <user_name>
Revoke Type :
                        insert ,             select,
                        update ,          delete ,            all

Jumat, 04 Oktober 2013

INTEGRITAS DATA DALAM BASIS DATA & CONSTRAINT CLASSIFICATION

Integritas data adalah menjamin konsistensi data terhadap semua konstrain yang diberlakukan terhadap data tersebut, sehingga memberikan jaminan keabsahan data itu sendiri. Tujuannya adalah menjaga data agar data yang tidak valid tidak masuk ke database. Menjaga konsistensi data pada relasi keterkaitan antar tabel.

Jenis-jenis Integritas Data :
·         Domain integrity (Integritas jangkauan nilai)
Tidak ada item data yang melanggar jangkauan nilai di tiap kolom data.
·         Integrity Entity (Integritas Entitas)
Tidak ada baris data duplikat dalam satu tabel.
·         Integrity Referential (Integritas acuan)
Menjaga relasi atau korespondensi antar tabel.
·         Redudant Data Integrity (Integritas Data Antar Tabel)
Data di sebuah tabel tidak berulang di tabel lain.
·         Bussiness Rule Integrity (Integritas Aturan Nyata)
Data di suatu tabel harus memiliki nilai yang layak dan dapat diterima ditempat sistem basis data itu diterapkan. Integritas jenis ini bersifat kasuistis, artinya sangat bergantung pada jenis data, lokasi, lingkungan, dan waktu penerapan basis data.
·         Membuat Constraint
Constraint merupakan suatu aturan yang membatasi jenis data yang diijinkan untuk dimasukkan ke dalam tabel.

Constraint Classification (Tipe-tipe Constraint) :
·         PRIMARY  KEY Constraint
Berguna untuk menspesifikasikan kolom dalam tabel. Tidak boleh kosong dan harus unik, untuk menghubungkan satu tabel dengan tabel lain.
·         FOREIGN KEY Constraint
Digunakan untuk menspesifikasikan kolom foreign key pada suatu tabel. Foreign Key digunakan untuk menghubungkan dua tabel. Kolom foreign key adalah kolom atau kombinasi beberapa kolom dalam suatu tabel yang selalu merujuk pada kolom primary key pada suatu tabel.
·         UNIQUE Constraint
Digunakan untuk menjamin bahwa data pada suatu kolom atau beberapa kolom tidak diijinkan sama.
·         CHECK Constraint
Digunakan untuk membatasi suatu nilai pada kolom dengan nilai tertentu yang diijinkan masuk.
·         DEFAULT Constraint
Merupakan atribut opsional yang digunakan untuk memberikan suatu nilai tertentu pada suatu kolom jika kolom tersebut tidak dimasukkan suatu data.
·         NOT NULL

Digunakan untuk menjamin tidak ada nilai null (kosong) yang muncul pada suatu kolom tertentu sehingga bila tidak mengisikan nilai pada kolom tersebut maka akan muncul error.

Mengenai Saya

Foto saya
Saya mahasiswa di Universitas Dian Nuswantoro Semarang. Semoga artikel yang saya postingkan dapat menambah informasi pengetahuan dan menambah pembelajaran hidup anda. Terima Kasih kepada anda yang telah mengunjungi blog ini. --brain--