DATABASE ADMINISTRATION Pertemuan ke-4
DATA AVAILABILITY source : Database Administration the complete guide to practices and procedures chapter 8 by. Craig S. Mullins
Definisi Ketersediaan adalah kondisi di mana sumber daya yang diberikan dapat diakses oleh para konsumen. Ketersediaan dan kinerja berbeda dan harus diperlakukan oleh DBA sebagai isu yang terpisah. Availability terdiri dari manageability, recoverability, reliability, and serviceability.
Availability Manageability — kemampuan untuk menciptakan dan memelihara lingkungan efektif yang memberikan layanan kepada pengguna. Recoverability — kemampuan untuk membangun kembali layanan saat terjadit kesalahan atau kegagalan komponen. Reliability — Kemampuan untuk memberikan pelayanan di tingkat yang ditentukan untuk jangka waktu yang ditentukan.
Serviceability — Kemampuan untuk menentukan keberadaan masalah , hasil diagnosa tujuan mereka, dan membenahi masalah tersebut Keempat 'kemampuan' tersebut mempengaruhi ketersediaan keseluruhan sistem, database, atau aplikasi.
Cost of Downtime Cost of downtime berbeda di setiap perusahaan / jenis perusahaan Contingency Planning and Research (a division of Edge Rock Alliance Ltd.) memperkirakan sekitar $6.5 million per jam pada retail broerage house tabel di bawah contoh beberapa cost of downtime untuk beberapa industri tabel hanya estimasi, perusahaan harus mencari nilai actual dari cost of downtime meliputi custemer, sistem dan bisnis operation
Contoh CoD untuk beberapa industri
Untuk memerkirakan cost of downtime, beberapa faktor yang harus diperhatikan Bisnis yang hilang selama downtime Biaya untuk mengejar ketertinggalan setelah sistem available Biaya untuk perkara hukum yang mungkin terjadi Efek terkait menurunya nilai stok (terutama untuk bisnis online)
Availability Problems Network Problems Loss of the Server Hardware Operating System Failure DBMS Software Failure Application Problems Security and Authorization Problems Corruption of Data Loss of Database Objects Loss of Data DBA Mistakes Etc.
Loss of the Data Center Kerusakan data center biasanya diakibatkan bencana alam atau bencana lain Rusaknya data center akan menyebabkan hilangnya data, tidak saja satu atau beberapa komputer Untuk mengatasi hal tsb,diperlukan db environtment pada remote location Pada persepektif availability, kerusakan data center adalah masalah dba terbesar Bahkan meski data dapat tersedia kembali di remote server muncul masalah baru, misal data tidak uptodate Planning untuk bencana akan meminimalkan masalah yang terjadi Planning ada di bab 16
Network Problems Permasalahan jaringan dapat menyebabkan db tidak dapat diakses Masalah jaringan biasanya disebabkan malfunction hardware jaringan Selalu sediakan beberapa cadangan hadware jaringan untuk mengganti jika ada masalah Masalah selain hardware antara lain software jaringan atau network address yang tidak akurat DBA bukan ahli jaringan Tetapi DBA harus mengenali jika masalah availaibility db berasal dari jaringan DBA harus menjaga hubungan dengan network spcesialis di organisasi Ketika ada masalah jaringan DBA dapat konsul ke spesialis jaringan dan belajar mengatasi permasalah umum jaringan
Loss of the Server Hardware Pada dasarnya database server hardware terdiri dari CPU, memory dan disk Jika CPU bermasalah, data tidak dapat diakses, meski memory dan disk masih dapat diakses Cara mengatasi salah satunya memindahkan disk ke CPU lain yang available Untuk mengatasi masalah CPU gunakan teknik hardware clustering Dengan teknik clustering, ketika satu server down, maka node lain akan menggantikan Cara lain dengan menggunakan standby system: logs data di server primer di simpan di server sekunder atau Replikasi server database ke server sekunder Selalu pastikan server sekunder selalu sama dengan server primer
Loss of the Server Hardware Permasalahan memory diatasi dengan cara mengganti memory yang rusak Harus diketahui juga RAM mana yang bermasalah Jika yang rusak adalah seluruh hardware, maka hal tersebut menjadi masalah terbesar Jika masalahnya pada semua hadware, maka db harus dicreate ulang Termasuk environtmen db, include konfigurasi, koneksi dan data harus di built ulang Dalam hal ini sebuah server backup akan sangat berguna Masalah kerusakan semua hardware pada server db jarang terjadi Biasanya kerusakan karena masalah power atau human error Selalu pastikan server db selalu tersedia power maupun cadangan power
Disk-Related Outages Karena db bergantung pada physical disk strucutre, maka kerusakan pada disk akan menyebabkan data unavailable Disk drive dapat bermasalah karena : mekanisme drive error, controller error, atau karena kabel Cara paling simple dengan menyimpan data pada local disk server Jika disk rusak, maka tinggal mengganti disk tersebut, tapi harus mensetting ulang Cara lain adalah langsung mengganti database server pada disk yang bermasalah skenario yang lain adalah dengan db storage pada Storage Area Nerwork(SAN) SAN adalah kumpulan disk drive jaringan jika SAN yang bermasalah baru data unavailable SAN unavailable karena:banyak disk drive bermasalah, koneksi SAN error, atau power error Karena db bergantung pada physical disk strucutre, maka kerusakan pada disk akan menyebabkan data unavailable Disk drive dapat bermasalah karena : mekanisme drive error, controller error, atau karena kabel Cara paling simple dengan menyimpan data pada local disk server Jika disk rusak, maka tinggal mengganti disk tersebut, tapi harus mensetting ulang Cara lain adalah langsung mengganti database server pada disk yang bermasalah -skenario yang lain adalah dengan db storage pada Storage Area Nerwork(SAN) -SAN adalah kumpulan disk drive jaringan -jika SAN yang bermasalah baru data unavailable -SAN unavailable karena:banyak disk drive bermasalah, koneksi SAN error, atau power error
Operating System Failure Tidak semua masalah db karena masalah hardware, software juga menjadi faktor masalah Masalah yang umum adalah pada OS error, meski harware berjalan normal Masalah OS karena:bugs OS, masalah setelah update atau patch Cara untuk mengatasi adalah mengatasi error OS atau mengganti db ke server lain dengan OS yang berfungsi
DBMS Software Failure Jika DBMS tidak dapat berfungsi db tidak dapat diaccess Permasalah DBMS karena : bugs, masalah setelah upgrade versi, masalah ketika patch Permaslaah tersebut secara umum karena ada resource yang hilang:parameter, file system dll Misal karena log file rusak atau hilang DBMS akan bermasalah
Application Problems jika aplikasi adalah satu-satunya cara end user dapat mengakses data, maka jika aplikasi error akan menyebbabkan data unavailable permasalahannya sebenarnya bukan pada db tetapi karena user tidak dapat mengakses db karena aplikasi error DBA masih dapat mengases data dengan tools client yang lain bugs software atau library yang rusak dapat menyebabkan aplikasi error program testing dan quality assuracce dapat meminimalkan masalah ini
Security and Authorization Problems masalah ini muncul karena adanya autorisasi yang bermasalah misal karena autorisasi user hanya diset untuk read data, sehingga user tidak dapat mengisi data biasanya terjadi setelah aplikasi dan db dipindah ke server produksi atau karena kesalahan pada DBA dalam mensetting autorisasi
Corruption of Data data yang korup/rusak juga dapat menyebabkan db menjadi unavailable bisnis bergantung pada benar tidaknya data. Dan setiap data yang rusak akan berpengaruh data yang rusak karena:program bugs, dbms program bugs, desain db yang buruk atau user error jika data yang rusak banyak,maka DBA harus membuat db offline karena jika tidak maka masalah akan meluas Semakin cepat tindakan diambil semakin ringan yang harus diperbaiki, sebaliknya Jika ada data korum, DBA harus bekerja dengan spesialis aplikasi untuk mencari sumber masalah dan cara memperbaikinya Db tidak dapat online sebelum data yang korum dihilangkan Terkadang permaslaahan jaringan juga menyebabkan data tidak vaild
Loss of Database Objects Ketika tablespace atau table di hapus, maka data tidak dapat diakses Beberapa DBMS menyediakan produk atau add-on tool untuk recovery data Sebagai contoh jika index dihapus,maka akan berimbas pada performace pencarian data Contoh yang lain jika view terhapus, jika aplikasi menggunakan view untuk melakukan query makan db akan unavilable Permasalahan ini biasanya diakibatkan karena human error (DBA atau yang memiliki hak akses) Karena itu harus dipastikan hak akses untuk tiap level DBA
Loss of Data Hilangnya data karena bugs,mallware attack,atau human error dapat menyebabkan data unavailable Jika ada data yang hilang, DBA harus recover data pada bagian yang hilang Server database backup sangat dibutuhkan dalam hal ini
Data Replication and Propagation Failures Pada kesalahan replikasi atau propagation,data masih dapat digunakan tetapi tidak sesuai keinginan user Kesalahan bisa pada: db subscriber atau db publisher Db subscriber menerima data replika dari publisher Kesalahan biasanya karena data tidak uptodate antara subcriber-publisher karena masalah koneksi, software, atau jadwal
Severe Performance Problems Pada kesalahan performance,meski data tetap ada tapi jika performance db makin buruk akan menyebbakan data tidak dapat digunakan Misal karena index yang rusak End user tidak akan peduli intinya mereka menganggap data tidak dapat diakses Karena itu meski bukan masalah unavailable tetap harus diperhatikan seorang DBA
Recovery Issues Ada beberapa teknik untuk backup dan recovery db Beberapa teknik dapat menyebabkan availablity data bermasalah Sehingga harus dibuat strategi yang tepat untuk backup dan recovery Untuk data dengan high availability requirement, harus dicari waktu backup dan restore yang paling pendek Faktor yang berdampak pada saat backup dan recovery : os configuration,hardware arsitek design,db feature, backup frequency,prosedur recovery
DBA Mistakes Penyebab terbesar pada db downtime adalah karena human error 70% permasalahan pada db adalah karena kesalahan DBA Training DBA dan tool yang tepat dapat meminimalkan kesalahan Pastikan semua DBA menerima training sebelum mendapatkan tanggung jawab pada critical production db Untuk latihan DBA dapat digunakan test system Database performance monitor dapat memberi alert pada DBA jika ada masalah Bahkan ada beberapa db tool yang dapat memberik peringatan sekaligus cara mengatasi masalah
Ensuring Availability Perform routine maintenance while systems remain operational. Automate DBA functions. Exploit the features of the DBMS that promote availability. Exploit hardware technologies.
Summary organisasi harus seimbang dalam penyediaan data selama 24/7 uptime dan periode maintenance kelemahan dalam maintenance dapat berefek pada bisnis, dan akan menjadi masalah pada waktu restore di saat krisis alternatif penggunaan utility untuk melakukan maintenance dan backup dengan tetap menjaga availabilaty data dalam bisnis, setiap permasalahan aplikasi dan database akan berimbas secara langsung dengan hasil DBA harus mengimplementasikan strategi maintenance dan backup yang optimum
Summary DBA harus selalu siaga menghadapi potensi problem yang memperlemah availaibility data potensi tersebut antara lain : masalah hardware,bug software dan human error setiap masalah unabailability memiliki efek yang berbeda pada organisasi, user maupun dba DBA harus selalu siap memecahkan setiap masalah avilability jika DBA sudah mimiliki skill, telah ditraining, dan terlatih menghadapi masalah, maka ketika ada masalah availability, tinggal mencari tool yang tepat, sedikit rencana dan setdikit kepintaran saja
Tugas Kelompok Buat kelompok 10 Kelompok Masing-masing kelompok presentasi bab 5 – bab 14 materi di bawah Urutan presentasi berdasarkan nomor bab yang dipresentasikan Nomer bab akan di undi Setiap pekan 1 presentasi
materi DBA dan konsep RDBMS Database Environment Database Change Management Data Availability Performance Management System Performance dan Database Performnace Application Performance Database Security Backup dan Recovery Disaster Planning Data dan Storage Management Data Movement and Dstribution Database Connectivity DBA Tools dan DBA Rules
Materi POKOK BAHASAN SUB POKOK BAHASAN DAFTAR PUSTAKA 5 Performance Management Defining Peformance Monitoring vs. Management Service Level Management Types of Performance tuning Performance tuning tools DBMS Performance Basics Buku 1 Bab 9 6 System Performance Database Performance The Larger Environment DBMS Installation and Configuration Issues System Monitoring Technique for Optimizing Databases Database Reorganization Buku 1 Bab 10 dan 11 7 Application Performance Designing application for relational access Relational optimization Additional optimization consideration SQL coding and tuning for efficiency Buku 1 Bab 12
8 Database Security Database Security Basicx Granting and Revoking Authority Authenticatiion Roles and Groups Others Database Security Mechanism Auditing External Security Buku 1 Bab 14 9 Backup & Recovery Preaparing for Problems Image Copy Backups Recovery Alternatives to Backup and Recovery Buku 1 Bab 15 10 Disaster Planning The Need for Planning General Disaster Recovery Guidelines Backing Up the Database for Database Recovery Disaster Prevention Buku 1 Bab 16
11 Data and Storage Management Storage Management Basics Files and Data Sets Space Management Storage ptions Planning for the Future Buku 1 Bab 17 12 Data Movement and Distribution Loading and Unloading Data EXPORT and IMPORT Bulk Data Movement Distributed Database Buku 1 Bab 18 13 Database Connectivity Client/Server Computing Databases, the Internet and the Web Buku 1 Bab 20 14 DBA Tools DBA Rulues Types and Benefits of DBA Tools Evaluating DBA Tools Vendors The Rule Buku 1 Bab 22 dan 23 Buku 2 Bab 4
Terima kasih