30 June 2011

Ikhtisar Database Mirroring SQL Server

Mirroring Database merupakan perangkat lunak utama sebagai solusi peningkatan ketersediaan database. Mirroring di implementasikan pada basis perdatabase dan hanya bekerja pada database yang menggunakan model recovery penuh atau full. Model recovery simple dan bulk-logged tidak didukung dalam mirroring database. Database mirroring bekerja dengan tingkat kompatibilitas database yang didukung. Sebagai catatan, kita tidak bisa melakukan mirror untuk database master, msdb, tempdb atau model.


Database Mirroring mempertahankan dua salinan dari sebuah database tunggal yang harus berada pada Instance SQL Server Engine yang berbeda lokasinya. Biasanya salah satu server berada di lokasi yang berbeda, Misalnya satu server database berperan sebagai server utama yang melayani klien. Server yang lain berperan sebagai server cadangan atau standby server tergantung pada konfigurasi dan status sesi mirroring. Ketika sesi mirroring database di sinkronkan, mirroring database menyediakan server siaga yang mendukung failover yang dengan cepat tanpa kehilangan data dari transaksi yang dilakukan. Ketika sesi tidak disinkronkan, server mirror biasanya tersedia sebagai warm standby server (dengan kemungkinan kehilangan data).

Manfaat Database Mirroring
Mirroring database adalah strategi sederhana yang menawarkan keuntungan sebagai berikut:
  • Meningkatkan perlindungan data.
  • Mirroring database menyediakan redundansi lengkap atau hampir lengkap dari data, tergantung pada apakah modus operasi high-safety atau high-performance. Untuk informasi lebih lanjut silahkan baca sub "Mode Operasi" dalam catatan ini.

    Partner database mirroring berjalan pada SQL Server 2008 Enterprise Edition atau versi yang lebih tinggi secara otomatis mencoba untuk menyelesaikan beberapa jenis kesalahan yang mencegah membaca halaman data. Partner yang tidak dapat membaca halaman permintaan salinan dari mitra lainnya. Jika permintaan itu berhasil, halaman yang terbaca digantikan oleh salinan, yang biasanya selesai dari mengatasi keasalahan yang terjadi. Untuk informasi lebih lanjut silahkan lihat di Automatic Page Repair During a Database Mirroring Session.

  • Meningkatkan ketersediaan database.
  • Dalam hal terjadi bencana, dalam mode high-safety dengan failover otomatis, failover dengan cepat membawa salinan standby database dari database online (tanpa kehilangan data). Dalam modus operasi lain, database administrator memiliki alternatif layanan untuk memaksa service (dengan kemungkinan kehilangan data) ke database salinan yang sedang standby. Lebih detail silahkan baca "Peralihan Peran" di bawah.
  • Meningkatkan ketersediaan dari database produksi selama upgrade.
  • Untuk meminimalkan downtime untuk database yang di mirror, kita dapat meng-upgrade SQL Server yang menjadi bagian dari sesi mirroring database secara berurutan, hal ini akan menjadikan hanya failover tunggal saja yang mengalami downtime. Model upgrade seperti ini dikenal sebagai upgrade bergulir. Untuk informasi lebih lanjut silahkan baca How to: Install a Service Pack on a System with Minimal Downtime for Mirrored Databases.

Bagaimana Database Mirroring Bekerja.
Server utama dan server mirror berkomunikasi dan bekerjasama sebagai partner dalam sebuah sesi mirroring database. Dua partner melakukan peran pelengkap dalam sesi : peran utama dan peran mirror. Pada waktu tertentu, satu pasangan melakukan peran utama dan partner lainnya melakukan peran mirror. Setiap pasangan digambarkan memiliki peran saat ini. Partner yang memiliki peran utama biasa dikenal dengan istilah Server Utama, dan Database-nya disebut sebagai Database utama. Partner yang berperan sebagai mirror disebut server mirror dan database-nya disebut database mirror. Ketika database mirror dibuat dalam lingkungan produksi, maka database utama disebut juga disebut database produksi.

Database mirror melakukan ulang setiap operasi Insert, Update dan Delete yang terjadi pada database utama ke database mirror secepat mungkin. Melakukan ulang dilakukan dengan mengirim aliran log transaksi aktif ke server mirror, dan menerapkan catatan log tersebut ke database mirror secara berurutan secepat mungkin. Tidak seperti replikasi yang terjadi di tingkat logis, mirroring database bekerja di tingkat catatan log fisik. Mulai SQL Server 2008, Server Utama mengkompres aliran log transaksi sebelum mengirimnya ke server mirror. Kompresi log terjadi dalam semua sesi mirror.

Mode Operasi.
Sebuah sesi mirroring database berjalan dengan operasi baik sinkron atau asinkron. Dalam operasi asinkron, transaksi komit tanpa menunggu server mirror menulis log ke disk, hal ini akan memaksimalkan kinerja. Dalam operasi sinkron, transaksi dilakukan atas kedua pasangan, tapi resikonya latency transaksi meningkat.

Ada dua mode operasi mirroring. Salah satunya, modus high-safety yang mendukung operasi sinkron. Dalam modus high-safety, ketika sesi dimulai, server mirror akan mensinkronisasikan database mirror bersama-sama dengan database utama secepat mungkin. Begitu database disinkronkan, maka transaksi akan di komit pada kedua server, sehingga latency transaksi meningkat.

Modus operasi kedua, modus High-Performance, berjalan asinkron. Server mirror mencoba untuk mengambil catatan log yang dikirim oleh server utama. Database mirror mungkin agak tertinggal dari database utama. Namun, biasanya, kesenjangan antar database kecil. Namun, kesenjangan dapat menjadi signifikan jika server utama memiliki beban kerja berat atau sistem dari server mirror kelebihan beban.

Dalam modus kinerja tinggi, begitu server utama mengirimkan catatan log ke server mirror, server utama mengirimkan konfirmasi ke klien. Server utama tidak menunggu konfirmasi kiriman catatan log yang dikirim ke server mirror apakah sudah di rekam ke disk atau belum oleh server mirror. Ini berarti transaksi komit tanpa menunggu apakah server mirror menulis log ke disk atau belum. Operasi asinkron seperti ini memungkinkan server utama untuk menjalankan transaksi dengan latency minimal, namun dengan risiko potensial kehilangan beberapa data karena tidak memastikan catatan log direkam pada server mirror.

Semua Sesi mirroring database hanya didukung oleh satu server utama dan satu server mirror. Konfigurasi ini ditunjukkan pada ilustrasi berikut.


Mode High-Safety dengan failover otomatis membutuhkan Instance server ketiga yang dikenal dengan istilah witness. Berbeda dengan dua peran sebelumnya, witness tidak melayani database. Witness mendukung failover otomatis dengan memverifikasi apakah server utama berfungsi dengan baik. Server mirror memulai failover otomatis hanya jika server mirror dan witness tetap terhubung satu sama lain setelah keduanya terputus dari server utama.

Ilustrasi berikut menunjukkan konfigurasi yang melibatkan witness.


Catatan :
Membuat sesi mirror baru mengharuskan penggunaan instance SQL Server dengan versi yang sama. Namun jika kita meng-upgrade ke SQL Server 2008 kita bisa menggunakan versi yang bervariasi. Untuk informasi lebih lanjut silahkan lihat artikel panduan dari Microsoft ini.

KeamananTransaksi dan Mode Operasi
Baik mode operasi sinkron ataupun asinkron tergantung pada setting pengaturan keamaan transaksi. Jika kita secara eksklusif menggunakan SQL Server Managment Studio untuk mengkonfigurasi database mirror, pengaturan keamanan transaksi dikonfigurasi secara otomatis bila kita memilih mode operasi.

Jika kita menggunakan Transact-SQL untuk mengkonfigurasi database, kita harus memahami bagaimana mengatur keamanan transaksi. Keamanan transaksi dikendalikan oleh property SAFETY dari Pernyataan ALTER DATABASE. Pada database yang di mirror, SAFETY bernilai FULL atau OFF.
  • Jika opsi SAFETY diset ke FULL, database mirror beroperasi secara sinkron, setelah tahap sinkronisasi awal. Jika Witness diset ke mode high-safety, sesi mendukung failover otomatis.
  • Jika opsi SAFETY diatur ke OFF, database mirror beropeasi secara asinkron. Sesi berjalan dalam modus kinerja tinggi (high-performance) dan opsi Witness juga harus OFF.

Untuk informasi lebih lanjut lihat Transact-SQL Settings and Database Mirroring Operating Modes.

Peralihan Peran
Dalam kontek sesi mirroring database, peran utama dan mirror biasanya dipertukarkan dalam proses yang dikenal sebagai Role Switching atau pertukaran peran. Pertukaran peran meliputi mentransfer peran utama ke server mirror. Dalam beralhih peran, server mirror bertindak sebagai mitra failover untuk server utama. Ketika pergantian peran terjadi, server mirror mengambil alih peran utama dan menjadikan salinan database padanya pada posisi online sebagai database utama. Bekas server utama, jika masih tersedia, mengasumsikan peran sebagai mirror, dan database yang ada padanya menjadi database mirror baru. Dengan demikian, peran dapat beralih kembali dan begitu seterusnya.

Berikut 3 bentuk peralihan peran yang ada.
  • Automatic Failover
  • Hal ini membutuhkan mode High-Safety dan adanya server mirror dan Witness. Database sudah harus disinkronkan dan witness harus terhubung ke server mirror.
    Peran witness adalah untuk memverifikasi apakah peran server yang diberikan berfungsi dengan baik. Jika server mirror kehilangan koneksi atau sambungan ke server utama, tetapi witness masih terhubung ke server utama, server mirror tidak melakukan failover. Untuk informasi lebih lanjut lihat Database Mirroring Witness
  • Manual Failover
  • Hal ini membutuhkan mode high-safety. Para mitra harus terhubung satu sama lain dan database sudah harus disinkronkan.
  • Layanan yang dipaksakan
  • Dalam modus high-performance dan high-safety tanpa failover otomatis, memaksa layanan memungkinkan jika server utama telah gagal dan server mirror tersedia.

Penting :
Mode High-Performance dimaksudkan untuk berjalan tanpa Witness. Tetapi Jika Witness tersedia, memaksa layanan mensyaratkan witness terhubung ke server mirror

Dalam skenario peralihan peran, secepat mungkin database utama menjadi online, aplikasi klien dapat me-recover secara cepat dengan menghubunglam kembali ke database.

Interoperabilitas dan Koeksistensi dengan Fitur Database Engine Lain
Mirroring database dapat digunakan dengan fitur berikut atau komponen dari SQL Server.
  • Log Shipping
  • Full-text catalogs
  • Database Snapshots
  • Replication

Dukungan Database Mirroring
Sejak SQL Server 2005 Service Pack 1 (SP1), partner mirroring database dan witness telah didukung oleh Edisi Standar dan Edisi Enterprise. Tapi partner harus menggunakan edisi yang sama, dan mirroring database asinkron (mode high performace) hanya didukung oleh Enterprise Edition. Witness juga didukung oleh Workgroup Edition dan Express Edition.

27 June 2011

Kecepatan Cahaya Dalam Qur'an

Kecepatan Cahaya, Kecepatan gelombang elektro magnetic yg tercepat di jagat ini, yaitu: 299792.5 Km/detik, yang baru diketahui abad 20 tentu saja dengan peralatan canggih & modern terakhir, namun hal ini ternyata telah ditulis Qur’an 1400 Tahun yang lalu.

Mungkin saudara saudarai pernah tahu jika konstanta C, atau kecepatan cahaya yaitu kecepatan tercepat di jagat raya ini diukur, dihitung atau ditentukan oleh berbagai institusion berikut:

US National Bureau of Standards, C = 299792.4574 + 0.0011 km/det
The British National Physical Laboratory, C = 299792.4590 + 0.0008 km/det

Konferensi ke-17 tentang Penetapan Ukuran dan Berat Standar: ”Satu meter adalah jarak tempuh cahaya dalam ruang vacum selama jangka waktu 1/299792458 detik".

Sekarang, mari kita perhatikan apa yg Qur’an tulis tentang kecepatan cahaya.
Qs. 10 Yunus: 5. Dia-lah yang menjadikan matahari bersinar dan bulan bercahaya dan ditetapkan-Nya manzilah-manzilah (jalan-jalan) bagi perjalanan bulan itu, supaya kamu mengetahui bilangan tahun dan perhitungan. Allah tidak menciptakan yang demikian itu melainkan dengan haq. Dia menjelaskan tanda-tanda kepada orang-orang yang mengetahui.

Qs. 21 Anbiyaa: 33. Dan Dialah yang telah menciptakan malam dan siang, matahari dan bulan. Masing-masing dari keduanya itu beredar di dalam garis edarnya.

Qs. 32 Sajdah: 5. Dia mengatur urusan dari langit ke bumi, kemudian (urusan) itu naik kepadaNya dalam satu hari yang kadarnya adalah seribu tahun menurut perhitunganmu.

Sekarang, mari kita perhatikan dengan seksama.
Jarak yang dicapai “Sang urusan” selama 1 hari = jarak yang ditempuh bulan selama 1000 tahun atau 12000 bulan.

C . t = 12000 . L

dimana :
C = kecepatan Sang urusan
t = waktu selama satu hari
L = panjang rute edar bulan selama satu bulan

Sekarang, sistem kalender telah diuji mendapatkan nilai C yang sama dengan nilai C yang sudah diketahui setelah pengukuran.

Ada dua macam system kalender bulan:
1. Sisyem sinodik, didasarkan atas penampakan semu gerak bulan dan matahari dari bumi.
1 hari = 24 jam
1 bulan = 29.53059 hari

2. Sistem sidereal, didasarkan atas pergerakan relatif bulan dan matahari terhadap bintang dan alam semesta.
1 hari = 23 jam 56 menit 4.0906 detik = 86164.0906 detik
1 bulan = 27.321661 hari

Bulan kembali ke posisi semula tepat pada garis lurus antara matahari dan bumi. Periode ini disebut “satu bulan sinodik”

Selanjutnya perhatikan rute bulan selama satu bulan sidereal, Rutenya bukan berupa lingkaran seperti yang mungkin anda bayangkan melainkan berbentuk kurva yang panjangnya L = v . T.

Dimana:
v = kecepatan bulan
T = periode revolusi bulan
= 27.321661 hari
a = 27.321661 days/365.25636 days x 360 o = 26.92848o

Ada dua tipe kecepatan bulan :
1. Kecepatan relatif terhadap bumi yang bisa dihitung dengan
rumus berikut: ve = 2 . p . R / T
dimana R = jari-jari revolusi bulan = 384264 km
T = periode revolusi bulan = 655.71986 jam
Jadi ve = 2 X 3.14162 X 384264 km / 655.71986 jam
= 3682.07 km/jam

Kecepatan relatif terhadap bintang atau alam semesta. Yang ini yang akan diperlukan. Einstein mengusulkan bahwa kecepatan jenis kedua ini dihitung dengan mengalikan yang pertama dengan cosinus a, sehingga: v = Ve X Cos a

Dimana a adalah sudut yang dibentuk oleh revolusi bumi selama satu bulan sidereal
a = 26.92848o

Bandingkan C (kecepatan sang urusan) hasil perhitungan dengan nilai C (kecepatan cahaya) yang sudah diketahui !
L = v . T
v = Ve X Cos a
Ve = 3682.07 km/jam
a = 26.92848 o
T = 655.71986 jam
t = 86164.0906 detik

Maka:
C . t = 12000 . L
C . t = 12000 . v . T
C . t = 12000 . (Ve X Cos a) . T
C = 12000 . ve . Cos a . T / t
C = 12000 * 3682.07 km/jam X 0.89157 X 655.71986 jam / 86164.0906 detik
C = 299792.5 km/det

Sekarang.... mari kita bandingkan antara perhitungan yg ditulis Qur’an dengan perhitungan abad 20.
Qur’an --------------------------------------> C = 299792.5 Km/detik
US National Bureau of Standards, ------------> C = 299792.4574 + 0.0011 km/detik
The British National Physical Laboratory, C = 299792.4590 + 0.0008 km/detik

Konferensi ke-17 tentang Penetapan Ukuran dan Berat Standar: ”Satu meter adalah jarak tempuh cahaya dalam ruang vacum selama jangka waktu 1/299792458 detik".

Kesimpulan dari Profesor Elnaby:
“Perhitungan ini membuktikan keakuratan dan konsistensi nilai konstanta C hasil pengukuran selama ini dan juga mnunjukkan kebenaran AlQuranul karim sebagai wahyu yang patut dipelajari dengan analisis yang tajam karena penulisnya adalah ALLAH, Sang Pencipta Alam Semesta Raya.”

Elnaby, M.H, 1990, A New Astronomical Quranic Method for The Determination of The Greatest Speed C
Fix, John D, 1995, Astronomy, Journey of the Cosmic Frontier, 1st edition, Mosby-Year Book, Inc., St Louis, Missouri
Qur’anul Kariim, Tahun 611 Masehi, ALLAH Azza Wa Jalla, Pencipta Alam Semesta Raya


Sumber : http://www.islamterbuktibenar.net