Feeds:
Posts
Comments

Posts Tagged ‘10G’

Oleh : Stefanus Januar (1200952163)

Flashback
Teknologi flashback menyediakan feature baru untuk melihat dan mengembalikan data sesuai waktu yang diinginkan. Teknologi flashback merupakan revolusi untuk meperbaiki data secara mudah. Merupakan teknologi pada oracle yang memungkinkan penggunanya untuk melakukan recover dengan cepat dan mudah.

Gambar 1. Teknologi Flashback (Best & Billings, 2005, p 17-3)

Menurut Alapati, 2005 ,p 164, teknologi flashback hanya dapat digunakan pada saat terjadi logical corruption. Yang dimaksud dengan logical corruption adalah kesalahan user dalam memanipulasi data, misalkan terjadi ketidaksengajaan dalam menghapus sebuah table dan juga disebabkan oleh virus yang merusak  data secara logical. Yang dimaksud dengan physical corruption adalah kerusakan fisik pada database tersebut sehingga perlu menggunakan data backup dari media lain untuk memperbaiki database tersebut. Pada physical corruption , flashback tidak dapat memperbaikinya. Masing – masing teknologi flashback dapat diakses melalui enterprise manager. Teknologi flashback memiliki level-level tertentu yang memiliki dampak yang berbeda ketika digunakan, dapat dilihat pada gambar 1.

Database Administration Features
Masing-masing teknologi saling terkait satu sama lain dalam hal penggunaannya. Teknologi flashback terbagi  menjadi beberapa bagian yaitu :

  • Flashback Database
    Merupakan  teknologi untuk memperbaiki seluruh database sesuai waktu yang diinginkan.  Menggunakan Flashback log untuk memperbaiki data. Dalam hal ini ketika dilakukan flashback seluruh data dalam database berubah sesuai dengan parameter waktu yang digunakan. Dalam penggunaan flashback database , database harus dalam kondisi mount exclusive.
    SHUTDOWN DATABASE
    STARTUP MOUNT EXCLUSIVE
    FLASHBACK DATABASE TO TIMESTAMP SYSDATE-1;
  • Flashback Drop
    Merupakan teknologi untuk mengembalikkan table yang telah dilakukan perintah drop . Menggunakan Recycle bin untuk memperbaiki data. Recycle bin adalah tabel data dictionary yang menampung informasi tentang tabel yang dilakukan drop. Terdapat 2 jenis recycle bin yaitu DBA recycle bin dan user recycle bin. Untuk menggunakan flashback drop biasanya digabungkan dengan perintah flashback tabel.
    FLASHBACK TABLE JOB_HISTORY TO BEFORE DROP;
  • Flashback Tabel
    Merupakan teknologi untuk mengembalikan tabel yang telah ada sesuai dengan parameter waktu yang digunakan. Menggunakkan undo data untuk memperbaiki data. Flashback tabel menyediakan cara kepada user untuk memodifikasi tabel dengan mudah dan cepat tanpa bantuan dari DBA selama user tersebut memiliki hak akses untuk melakukan flashback.    FLASHBACK TABLE hr.employees TO TIMESTAMP
    TO_TIMESTAMP(‘2005-05-05 05:32:00′,’YYYY-MM-DD HH24:MI:SS’);

Ketiga teknologi flashback tersebut , ketika dilakukan flashback maka akan mengubah data-data pada database.

Application Development Features
Menurut Adams & Paapanen, 2003, p 516 ,teknologi flashback menawarkan kapabilitas untuk melakukan perintah query pada data history untuk melakukan analisis. Berbeda dengan teknologi flashback database, drop , dan tabel , flashback time navigation tidak mengubah data pada database melainkan melakukan perintah query pada data history untuk dilakukan analisis untuk memperbaiki data sesuai dengan kebutuhan. Dengan demikian user dapat melakukan navigasi pada setiap perubahan data yang ada. Untuk melakukan navigasi memerlukan parameter waktu dalam bentuk TIMESTAMP atau SCN.
Terdapat 3 teknologi yaitu

  • Flashback Query : Melakukan query data pada data history pada waktu yang spesifik. Dilakukan dengan perintah select dengan tambahkan AS OF dan spesifikasikan waktu untuk menampilkan data.Menggunakan undo data untuk menampilkan data.

SELECT employee_id, salary FROM employees
AS OF TIMESTAMP t1
WHERE employee_id = 200

  • Flashback Versions Query : Melakukan query data history dengan parameter waktu mulai dan akhir , maka data akan ditampilkan berdasarkan versi-versi dari row tersebut. Sebagai catatan flashback hanya dapat menampilkan data yang sudah dicommit. Menggunakan undo data untuk menampilkan data.

SELECT versions_xid, salary FROM employees
VERSIONS BETWEEN TIMESTAMP t1 and t2
WHERE employee_id = 200;

  • Flashback Transaction Query : Merupakan tool yang dapat digunakan untuk melihat perubahan data berdasarkan level transaksi. Yang dimaksud dengan level transaksi adalah transaksi yang dilakukan oleh user sampai dilakukan commit. Menggunakan undo data untuk menampilkan data.

SELECT xid, operation, start_scn,commit_scn, logon_user, undo_sql FROM flashback_transaction_query

Ketiga flashback ini menampilkan data-data yang ada untuk dilakukan analisis. Perlu diperhatikan bahwa flashback sangat dipengaruhi oleh undo retention time. Parameter ini menentukan apakah data masih ada pada undo data, jika sudah lewat dari waktu yang ditentukan maka data tidak dapat dilakukan flashback. Secara default Oracle memiliki undo retention time sebesar 15 menit.

Flashback Versions Query
Flashback versions query menyediakan cara untuk melakukan audit data pada sebuah baris dari table dan mengambil informasi tentang transaksi yang mempengaruhi baris tersebut. Menurut Adams & Paapanen, 2003, p 525 ,dalam flashback versions query terdapat pseudocolumn yaitu :

  • VERSIONS_XID         :  Sebagai penanda pada transaksi.
  • VERSIONS_OPERATION     : Kolom ini berisi informasi tentang operasi yang dilakukan , apakah insert , delete , atau update.
  • VERSIONS_STARTTIME    : Kolom ini berisi tentang informasi kapan row tersebut dibentuk.
  • VERSIONS_ENDTIME    :  Kolom ini berisi tentang informasi kapan row tersebut expired.

Contoh Kasus
Select Pada Awal

Gambar 2. Hasil dari Select

Pertama lakukan perintah select salary untuk employee id yang 200, maka di dapat data Jennifer dengan salary sebesar 4400. Untuk lebih jelas perhatikan gambar 2.

Terjadi Kesalahan Update data

Gambar 3. Contoh Update

Setelah itu lakukan update data untuk employee id 200 , dengan salary 4600 , lalu commit kemudian lakukan update kembali untuk employee id  200 , dengan salary 4800 dan commit. Untuk lebih jelas perhatikan gambar 3.

Melakukan Analisis Data

Gambar 4. Contoh Analisis Data

Untuk memperbaiki data seperti gambar 3 , maka kita dapat melakukan flashback versions query untuk menganalisis kesalahan yang terjadi untuk melakukan perbaikan data. Contoh flashback versions query dapat dilihat pada gambar 4.

Untuk Mengambil Query

Gambar 5. Contoh pengambilan data

Setelah mendapatkan data salary yang ingin dikembalikan , untuk memperbaiki data tersebut ,kita dapat menggunakan tabel flashback transaction query. Dengan menggunakan tabel tersebut ,kita dapat dengan mudah memperoleh perintah sql untuk mengembalikan data tersebut . Pada gambar 5, ROWID merupakan kolom yang dibentuk oleh oracle secara otomatis pada setiap tabel yang dibuat oleh user, untuk melihat isi kolom tersebut dapat dilakukan perintah select ROWID. Setelah itu lakukan perintah tersebut untuk melakukan perbaikan. Gambar 6 merupakan contoh ketika kita melakukan flashback menggunakan enterprise manager.

Gambar 6. Contoh Flashbcak

Hambatan
Flashback versions query tidak dapat dilakukan pada hal-hal sebagai berikut :

  • External tabel : merupakan tabel yang digunakan untuk menyimpan data dari file lain. Misalkan kita memiliki file excel yang ingin dimasukkan pada oracle , maka oracle akan menyimpan file tersebut kedalam tabel external. Flashback versions query tidak dapat melakukan fungsinya pada external tabel.
  • Temporary tabel : merupakan tabel yang sifat nya hanya sementara. Tabel jenis ini digunakan pada transaksi yang rumit sehingga perlu dilakukan penyimpanan sementara. Flashback versions query tidak dapat melakukan fungsinya pada temporary tabel.
  • Fixed tabel : merupakan tabel yang ada pada oracle yang sudah didefinisikan oleh oracle untuk keperluan system. Flashback versions query tidak dapat melakukan fungsinya pada fixed tabel.
  • DDL Statement : flashback versions query tidak dapat dilakukan ketika struktur dari tabel berubah.
  • Shrink Operation : merupakan operasi yang dilakukan untuk mengurangi ukuran dari file oracle pada saat dilakukan delete. Misalkan ukuran tabel memiliki ukuran 10mb dengan pertumbuhan 2mb. Lalu dilakukan delete sehingga menghapus data sebesar 6 mb, namun ukuran tabel tetap 10mb sehingga perlu dilakukan operasi shrink sehingga ukuran tabel menjadi 4mb. Flashback versions query tidak dapat dilakukan jika operasi ini dijalankan.

Daftar Pustaka

  • Adams, D., & Paapanen, E. (2003). Oracle® Database Application Developer’s Guide – Fundamentals 10g Release 1 (10.1). California: Oracle Corporation.
  • Alapati, S. R. (2005). Expert Oracle Database. New York: Grace Wong.
  • Best, T., & Billings, M. (2005). Oracle Database 10g Administration Workshop I (Edition 3.0 ed.). California: Joseph Fernandez.

Read Full Post »

Oleh : Irfan Haryanto

Database grid, sebuah konsep yang sangat menarik yang telah diimplementasi oleh perusahaan Oracle mulai dari produknya Oracle 10g. Konsep ini merupakan sebuah perubahaan yang revolusioner dari Oracle dan merubah struktur Databasenya agar mendapatkan peningkatan performa yang signifikan serta menghemat pengeluaran.

Menurut Olofson (2008, p. 2) Grid computing merupakan sebuah istilah yang sudah diaplikasikan pada berbagai arsitektur yang didesain untuk memberikan keuntungan dari sebuah IT Grid. Ini adalah sebuah pendekatan pada computing yang memisahkan fungsionalitas sofware pada hardware tertentu dengan cara menghubungkan sistem dan storage pada resource yang dapat dialokasikan maupun dinonalokasikan contohnya pada database.

Grid Computing menggabungkan berbagai macam resource yang heterogen dihubungkan dengan jaringan bisa internet ataupun ethernet untuk menyelesaikan tugas tertentu. Istilah ini merupakan sebuah pendekatan untuk komputerisasi yang memudahkan administrator untuk menentukan tugas pada resource komputer yang diinginkan atau menentukan penempatan data pada storage yang diperlukan dengan cara tertentu sehingga data, resource dan tugas bisa dikurangi atau ditambahkan ketika diperlukan.

Konsep dari Grid computing ini bisa diibaratkan dengan konsep power grid atau tiang listrik. Misalnya pada sebuah distrik yang belum memiliki jaringan listrik ingin ditambahkan beberapa tiang listrik untuk menopang daya listrik tersebut, maka tiang listrik akan ditambahkan dan dihubungkan dengan jaringan listrik yang sudah berjalan namun sistem tiang listrik yang lama tidak akan terganggu atau terhenti ketika terjadi penambahan ini sama dengan Grid computing. Olofson (2008, p. 3) juga menyebutkan  Grid computing membuat resource yang berhubungan dapat dengan mudah ditambahkan dan dikurangi seperti aplikasi, database ataupun lingkungan storage semudah memindahkan energi dari tiang listrik.

Ada alasan mengapa Oracle mengeluarkan produk terbarunya 10g yang menggantikan produk sebelumnya yaitu 9i. Produk terbaru ini tidak lagi memakai logo “I” yang merupakan singkatan dari internet, tapi memakai logo baru yaitu “g” yang merupakan singkatan dari grid.

2 hal penting yang mendasari alasan ini adalah sebagai berikut :

  1. Low cost.
    Grid memungkinkan perusahaan untuk menambah atau mengurangi hardware dengan mudah sehingga tidak perlu lagi melakukan over-provisioning. Over provisioning dilakukan dengan melebihkan kapasitas hardware dari jumlah yang sebenarnya diperlukan dengan tujuan performa dan menghindari adanya penambahan hardware di masa mendatang. Dengan adanya grid computing maka over provisioning tidak perlu dilakukan sehingga tidak ada hardware yang terbuang percuma.
    Grid juga mengurangi biaya yang besar akibat dari penambahan hardware baru. Perusahaan – perusahaan biasanya menghabiskan banyak biaya karena penambahan ini sehingga banyak yang menghindari ini terjadi atau menundanya agar sekaligus merombak total sistem secara keseluruhan.
  2. Higher performance.
    Performa yang lebih tinggi didapat dari parallel processing, kemampuan grid untuk memproses beberapa tugas secara parallel.
Truth in Advertising – Advanced Data Compression in Oracle 11g. Sumber : (O’Mahony, 2010)

Ada sebuah iklan web dari Oracle yang menunjukkan keunggulan dari Grid computing. Pada gambar 1 dibandingkan 2 merk yang sekarang ini sudah tidak asing lagi di masyarakat luas yaitu Sun Oracle dengan IBM, Computer milik Oracle diklaim 7x lebih cepat menggunakan teknologi Grid sedangkan IBM membutuhkan 6x energi consumption yang lebih banyak.

Beberapa perusahaan besar memiliki pendekatan tersendiri dalam mengimplementasi grid computing. Pendekatan yang diambil umumnya dibedakan berdasarkan cara kerja sistem perusahaan dan tujuan yang ingin dicapai. Beberapa pendekatan yang umum dipakai antara lain :

  1. Compute Grid
    Grid ini digunakan untuk pencapaian kerja sebuah tugas yang berskala besar seperti superkomputer menggunakan hardware dengan biaya lebih murah dalam jumlah banyak yang bekerja secara parallel.
  2. Application Grid
    Grid ini digunakan untuk pencapaian hasil dan ketersediaan yang lebih tinggi dengan membagi aplikasi menjadi komponen – komponen yang terinstallkan pada beberapa server aplikasi dengan harapan ketika salah satu server sedang down maka server yang lain bisa menutupi.
  3. Storage Grid
    Storage dibagi atas beberapa disk dan diatur sedemikian rupa agar data dapat dikelola dengan optimal untuk meningkatkan ketersediaan dan skalabilitas . Hal ini bertujuan agar ketika ada keperluan untuk menambahkan dan mengurangi disk, database dan aplikasi tidak mengalami gangguan.

Diluar dari ketiga tipe diatas, ada konsep yang digunakan oleh Oracle yaitu Database Grid. Grid ini merupakan gabungan fitur dari Application Grid dan Storage Grid.

(Mahmood & Fernandez, 2005) menyatakan bahwa Database grid mengalokasikan servis dari beberapa nodes untuk menyediakan performa yang tinggi sehingga ketika salah satu node mati, grid dapat beradaptasi dengan menggunakan node lain untuk meresponnya.

RAC dan ASM merupakan fitur yang berperan penting untuk mendapatkan keuntungan dari database Grid. Olofson (2008, p. 4) berkata bahwa Oracle menyebut fitur yang memberikan kemampuan server cluster berbasis grid dengan Real Application Cluster atau RAC dan fitur yang memberikan kemampuan storage grid dengan Automatic Storage Management, ASM. Kedua fitur ini bisa didapat dengan menginstall Oracle Enterprise Manager’s Grid Control.

Oracle Enterprise Manager merupakan sebuah komponen dari Oracle yang berguna untuk pengaturan database dari Oracle. Komponen ini berbasis web dan dapat dijalankan dengan mengkakses browser seperti mozilla firefox atau internet explorer.

Database Control adalah tipe dari Oracle Enterprise Manager untuk mengontrol sebuah database namun untuk mengatur database yang sudah tersusun dalam konsep grid maka kita membutuhkan komponen Oracle Enterprise Manager’s Grid Control.

Database Grid merupakan konsep yang telah diimplementasi oleh Oracle yang mampu memanfaatkan fitur – fitur dari application grid dan storage grid seperti penambahan aplikasi dan storage yang heterogen dengan keunggulan mempermudah pengurangan dan penambahan hardware serta meningkatkan performa komputasi juga meningkatkan skalabilitas dan ketersediaan tanpa menganggu sistem yang sudah berjalan.

Q&A :

  1. Apa kelemahan dari konsep Grid Computing?
    Memerlukan koneksi network yang cepat seperti internet atau ethernet, beberapa aplikasi membutuhkan modifikasi agar dapat memanfaatkan grid computing secara sempurna, dan yang paling signifikan adalah, hasil dari semua proses dikirim pertama kali ke seluruh nodes dari grid baru digabungkan, sehingga tidak mungkin mendapatkan hasil akhir sebelum node yang terakhir ikut berkolaborasi. Namun disamping kekurangan dari konsep grid computing, kelebihan yang didapat dirasakan lebih dominan sehingga patut untuk diimplementasikan.
  2. Apakah konsep grid ini memungkinkan untuk penambahan hardware dengan merk berbeda?
    Sangat mungkin karena konsep grid bersifat heterogen sehingga bisa memakai hardware yang berbeda – beda untuk menjadi sebuah sistem computing.
  3. Apa itu enterprise grid? Apa yang membedakan enterprise grid dengan database grid?
    Enterprise Grid merupakan implementasi konsep grid Computing dengan skala yang besar sedangkan database grid merupakan sebuah pendekatan dari konsep Grid Computing.

Daftar Pustaka :

Mahmood, Z., & Fernandez, A. (2005). Building and Scaling Out Database Grid. Clustering Special Section Oracle 10g , 4.

Olofson, C. W. (2008). Grid Computing with Oracle Database . WHITE PAPER , 8.

O’Mahony, C. (2010, 05 20). Truth in Advertising – Oracle’s Claims about Performance and Energy Consumption. Retrieved 11 21, 2011, from Conor O’Mahony’s Database Diary: http://database-diary.com/

Read Full Post »