Sabtu, 30 April 2011

RESUME DATABASE ADMINISTRATOR - 120 - M7

STORAGE MANAGEMENT
ORACLE INSTANCE
Oracle database selalu diasosiasikan dengan  Oracle Instance. Saat database dijalankan pada database server, oracle mengalokasikan memory yang disebut System Global Area (SGA) dan menjalankan beberapa oracle background process. Kombinasi dari SGA dan Oracle processes disebut dengan Oracle Instance. Memory dan proses dari instance mengatur data dalam database secara efisien dan dapat melayani satu atau lebih user yang menggunakan basis data ini. 
MEMORY STRUCTURE
Memory di Oracle digunakan untuk menyimpan:
-  Kode program yang akan dieksekusi
-  Informasi tentang session
-  Data yang akan dieksekusi
-  Informasi yang di share dan dikomunikasi oleh       proses yang lain. Misalnya locking information
-  Cache information
 
Dasar struktur memory yang berhubungan dengan oracle:
-  Software code ares
Bagian dari memory yang digunakan untuk menyimpan kode program yang akan dieksekusi. Perintah/kode oracle disimpan di software code areas yang biasanya berada di tempat yang berbeda-beda sesuai dengan program dari user.  Ukuran software codes areas statis, berubah jika dilakukan installasi ulang atau update.
-  System Global Area (SGA) 
Memory Structure dasar yang berhubungan dengan Oracle instance adalah :
-  System Global Area (SGA) : di-share oleh semua server dan background process
-  Program Global area (PGA) : Private untuk masing-masing server dan background process. Satu PGA untuk masing-masing proses. 
Merupakan memory area yang meliputi data dan control informasi untuk instance.
SGA mencakup data struktur berikut ini:
-Database buffer cache
-Redo log
-Shared pool
-Large
-Java pool
Steams pool
-  Program Global Area (PGA)
 
Program Global Area (PGA) adalah memory yang terdiri dari data dan control information untuk masing-masing proses server.
Proses dalam oracle server memberikan layanan bagi client. Masing-masing proses server memiliki PGA sendiri-sendiri yang dibuat saat proses di server dimulai.
PGA diakses secara eksklusif oleh server proses
PGA ditulis dan dibaca hanya oleh kode oracle.
-  Sort area 
SPACE MANAGEMENT
Manajemen ASM
Automatic Storage Management (ASM) yang dimiliki oleh Oracle 10g ini dapat meningkatkan kemampuan dalam memanajemen dan menkonsolidasikan antar data dalam basis data/ database.  
ASM menyediakan fungsionalitas sebagai berikut:
Mengatur kelompok disk, disebut disk group.
Mengelola disk redundansi dalam suatu disk group.
Menyediakan dekat-optimal I / O menyeimbangkan tanpa tuning manual.
Memungkinkan manajemen objek database tanpa menyebutkan mount point dan nama file.
Mendukung file ukuran besar.
 Tablespace
Oracle mempunyai definisi tablespace yang sama dengan DB2.
Tablespace merupakan bagian dari arsitektur logic database Oracle [secara sekilas, struktur logik database Oracle adalah tablespace, segment, extent, dan block].
Tablespace digunakan sebagai tempat (storage) bagi segment (object database)
Terdapat 4 jenis:
System tablespace
Menyimpan informasi operasional dan menentukan atribute dari data yang disimpan seperti tipe data, besar maksimum dari sebuah column, pemilik data dan lain-lain.
SYSAUX tablespace
Sebagian besar dari tool yang digunakan untuk menjalankan aktifitas database menyimpan object dan informasi di dalam tablespace ini. Ketika database dibentuk, tablespace ini wajib dibuat.
Default temporary tablespace
Berguna untuk penampungan sementara dari hasil output resultset atau untuk mendukung aktifitas seperti sorting. Sangat berguna jika memory yang ada tidak cukup untuk menjalankan sebuah operasi.
Undo tablespace
Berguna untuk menyimpan row yang diubah namun belum dicommit atau diroll back
.
Datafiles 
Sebuah tablespace di database Oracle terdiri dari satu atau lebih datafiles fisik. Suatu datafile dapat dikaitkan dengan hanya satu tablespace dan hanya satu database.
Oracle menciptakan datafile untuk tablespace dengan mengalokasikan jumlah tertentu pada ruang disk 
Redo Logs 
Redo Log File merupakan jenis berkas yang sangat penting. Berkas Redo Log File yang rusak kadang membuat database sama sekali tidak bisa dibuka. Redo Log Files ini pada umumnya memuat transaksi transaksi, namun dalam jangka waktu yang tidak terlalu lama.
Fungsi Redo logs
Recover database
Update standby database
Mendapatkan informasi tentang History penggunaan database
memiliki tingkat status:
CURRENT : status ini berarti kelompok redo log files sedang ditulis oleh LGWR ( Log Writer ) untuk merekan data – data redo untuk semua transaksi yang terjadi di basis data.
ACTIVE : Status ini berarti kelompok Redo Log Files masih memuat data – data redo yang diperlukan untuk pemulihan instance.
INACTIVE : Checkpoint yang dibicarakan dia atas sudah dieksekusi, yang berarti kelompok Redo Log Files yang bersangkutan tidak diperlukan lagi dalam pemulihan instance, dan dapat digunakan sebagai kelompok CURRENT
Rollback Segment
Rollback segment dipakai untuk menyimpan data sebelum transaksi. Sehingga selama transaksi itu belum di commit, session lain masih dapat melihat data yang original. Hal ini untuk menjaga consistency. Data tersebut juga dipakai untuk me rollback transaksi jika user mengeluarkan perintah ROLLBACK
Archive log
Archived log digunakan untuk recovery database. Bila kita me-restore dari hasil offline backup, maka data yang bisa diambil adalah data ketika offline backup dilakukan. Jadi, seandainya full backup dilakukan sebulan yang lalu, maka data yang bisa diselamatkan (diambil) adalah data sebulan yang lalu tersebut.
  Berbeda dengan jika kita me-restore dari hasil online backup. Setelah file backup di-restore, kemudian archived log yang terbentuk setelah online backup (yang berisi rekaman transaksi itu) di-apply kembali (istilahnya recovery). Sehingga kita bisa mendapatkan data sampai archived log terakhir, atau sesaat sebelum terjadi bencana (kerusakan database).
 
 
 
 

 

RESUME DATABASE ADMINISTRATOR - 120 - M6

DISASTER PLANNING
Langkah-langkah dalam perencanaan database :
Mendefinisikan kebutuhan (Requirements definition) adalah proses mengidentifikasi & mendokumentasikan data yang dibutuhkan oleh user dalam sebuah database untuk memenuhi kebutuhan informasi saat ini dan masa yang akan datang.

2. Jenis informasi yang harus diperhatikan:

  1) Informasi yang menjelaskan struktur data, seperti entitas, atribut, dan relasi. Informasi ini biasanya dinyatakan dalam bentuk grafik seperti entity-relationship diagrams (E-RD).

  2) Informasi yang menggambarkan aturan atau batasan yang dapat menjaga integritas data. Biasanya disebut aturan bisnis (business rules), batasan-batasan ini harus di tuangkan dalam data dictionary/directory (atau repository) suatu organisasi.
 
Disaster recovery planning 
merupakan serangkaian kegiatan yang bertujuan untuk mengurangi kemungkinan dan membatasi kerugian akibat bencana pada proses bisnis yang penting. Bencana yang dimaksud bisa berupa banjir, kebakaran, gempa bumi, ataupun virus, kegagalan harddisk, serangan dari cracker, dan lain sebagainya. Tentunya bencana seperti ini sangat mengancam data atau informasi perusahaan atau perorangan
Disaster Recovery Plan
Disaster recovery plan merupakan program yang tertulis dan telah disetujui, diimplementasikan, serta  dievaluasi secara periodik, yang menfokuskan pada semua aksi yang perlu dilakukan sebelum, ketika, dan setelah bencana. Rencana ini disusun berdasarkan review secara menyeluruh terhadap bencana-bencana yang potensial, yang mencakup lingkup fasilitas, lokasi geografis, atau industri. Rencana ini juga merupakan pernyataan dari tanggapan yang tepat untuk proses pemulihan yang bersifat efektif terhadap biaya dan cepat. Oleh karena itu, rencana yang dibuat haruslah mengidentifikasi di mana, yang mana, dan bagaimana record-record dapat diperoleh. 
Hal-hal Lain Yang Perlu Diperhatikan Dalam Menyusun Disaster Recovery Plan :
Berikut adalah daftar hal-hal lain yang perlu dipertimbangkan ketika membuat Information Disaster Recovery Plan sebuah perusahaan :
memastikan keamanan para pekerja dan pengunjung pada lokasi di mana mereka berada;
melindungi record dan informasi penting;
memastikan keamanan fasilitas dan lokasi-lokasi bisnis;
memastikan ketersediaan material, perlengkapan, dan peralatan;
mengurangi risiko bencana yang diakibatkan oleh kesalahan manusia  atau kegagalan peralatan yang digunakan;
data-data dan fasilitas penting lainnya telah ditata dengan baik sehingga memudahkan proses pemulihan ketika bencana alam terjadi;

Prasyarat Dalam Pembuatan Disaster Recovery Plan

Prasayarat 1: Informasi dipandang sebagai Sumber Daya Perusahaan
Prasyarat 2: Asuransi Yang Cukup
Prasyarat 3: Program Record  Yang Penting
Prasyarat 4: Jadwal Penyimpanan Record
Prasyarat 5: Sistem Klasifikasi dan Penggunaan Kembali Record
Prasyarat 6: Program Sekuritas Yang Cukup
Back Up Database
Backup mengacu pada pembuatan salinan data dari database, sehingga salinan ini dapat digunakan untuk mengembalikan data semula dari peristiwa kehilangan data ataupun kerusakan data.
Alasan Melakukan Back Up
Melindungi database dari berbagai jenis kegagalan, antara lain:
Statement failure:
User error
Network failure
Instance failure 
Media failure
Jenis Backup 
Physical Back up 
Logical Back up

Jenis-jenis Recovery 
1.User-Managed Recovery 
2.RMAN Recovery
 
 
 
 
 
 
 
 
 
 

Senin, 28 Maret 2011

RESUME DATABASE ADMINISTRATOR - 120 - M5

APPLICATION PERFORMANCE AND DATABASE SECURITY

  • Application Performance
Pengertian application performance adalah optimalisasi penggunaan sumber daya untuk meminimalkan pertentangan, memungkinkan beban kerja kemungkinan terbesar untuk diproses.

Perbandingan Antara Dua Database :
a. My SQL
Merupakan sebuah system manajemen database. Database adalah sekumpulan data yang terstruktur. Untuk menambah, mengakses dan memproses data yang tersimpan pada database komputer, kita membutuhkan manajemen database seperti MySQL.
MySQL merupakan database yang sangat cepat, dapat diandalkan dan mudah untuk digunakan. Jika hal itu yang anda cari maka anda harus mencobanya. Selain itu, source programnya pun dapat anda dapatkan secara gratis dan syntax-syntaxnya mudah untuk dipahami dan tidak rumit serta pengaksesan database dapat dilakukan dengan mudah dan cepat.

+ Kelebihan My SQL:
1. Dapat bekerja di beberapa platform yang berbeda, seperti LINUX, Windows, MacOS dl.
2. Dapat dikoneksikan pada bahasa C, C++, Java, Perl, PHP dan Python.
3. Memiliki lebih banyak type data seperti : signed/unsigned integer yang memiliki panjang data sebesar 1,2,3,4 dan 8 byte, FLOAT, DOUBLE, CHAR, VARCHAR, TEXT, BLOB, DATE, TIME, DATETIME, TIMESTAMP, YEAR, SET dan tipe ENUM.
4. Mendukung penuh terhadap kalimat SQL GROUP BY dan ORDER BY. Mendukung terhadap fungsi penuh ( COUNT ( ),COUNT (DISTINCT), AVG ( ), STD ( ), SUM ( ), MAX ( ) AND MIN ( ) ).
5. Mendukung terhadap LEFT OUTHER JOIN dengan ANSI SQL dan sintak ODBC.
6. Mendukung ODBC for Windows 95 (dengan source program). Semua fungsi ODBC 2.5 dan sebagainya. Sebagai contoh kita dapat menggunakan Access untuk connect ke MySQL server.
7. Menggunakn GNU automake, autoconf, dan LIBTOOL untuk portabilitas.
8. Kita dapat menggabungkan beberapa table dari database yang berbeda dalam query yang sama.
9. Ditulis dengan menggunakan bahasa C dan C++. Diuji oleh compiler yang sangat jauh berbeda.
10. Privilege (hak) dan password sangat fleksibel dan aman serta mengujinkan ‘Host-Based’ Verifikasi.



+ Kekurangan My SQL :
Untuk koneksi ke bahasa pemrograman visual seperti vb, delphi, dan foxpro, mysql kurang support, karena koneksi ini menyebabkan field yang dibaca harus sesuai dengan koneksi dari program visual tersebut, dan ini yang menyebabkan mysql jarang dipakai dalam program visual.
Data yang ditangani belum begitu besar.

b. OracleDatabase Storage Engine ini bisa menyimpan data sampai ukuran tera byte, dan database oracle juga meyediakan yang gratisan versi home edition untuk sekedar yang ingin belajar oracle aja sedangkan untuk versi enterprisenya kita harus bayar. Untuk bagian query-nya oracle tetap menggunakan standard bahasa SQL. Oralce bisa digunakan diberbagai platform seperti unix, windows, atau yang lainnya.
Untuk masalah keamanan oracle bisa dibilang baik. Untuk masalah perfomance oracle kebanyakan bermain di harddisk jadi kalau anda ingin menggunakan oracle anda harus menyediakan space harddisk yang cukup besar. Untuk backup oracle mempunyai extensi sendiri namanya file DMP.
Kelebihan Oracle :
1. Ketika kita mengakses database dan kemudian ada kejadian seperti listrik mati misalnya maka data yang sudah kita simpan tidak rusak/hilang.
2. Database Clusters, dengan menggunakan teknologi Real Application Clusters (RAC). Salah satu fungsi dari RAC adalah memberikan perlindungan terhadap kelangsungan data dalam perusahaan sehingga apabila terjadi crash pada salah satu server database, maka tidak akan mempengaruhi kinerja perusahaan. Hal ini disebabkan karena teknologi RAC memungkinkan untuk membuat beberapa database server menjadi seolah-olah satu database server, sehingga apabila ada database server yang down, kinerja database server tersebut akan di-take over oleh server-server yang lain.
3. Row-Level Locking, fitur ini dapat melakukan lock tidak hanya pada table-level saha, akan tetapi dimungkinkan untuk melakukan lock lebih jauh lagi sampai pada row-level. Sehingga user-user dapat melakukan akses data dalam suatu tabel secara bersamaan, lebih cepat dan lebih akurat.
4. Data Partitioning, Oracle memungkinkan kita untuk melakukan partisi ke suatu tabel maupun indeks. Hal ini akan dapat meningkatkan kemampuan kita untuk dalam melakukan manajemen data.
5. Oracle OLAP (Integrated Online Analytical Processing), Oracle memiliki fungsi OLAP (yang sebelumnya hanya dapat kita temui pada OLAP database) yang terintegrasi dengan baik ke dalam relational database, sehingga kita tidak memerlukan database lain selain Oracle itu sendiri.
6. Virtual Private Database, fitur ini memberikan dan meningkatkan fleksibilitas jaminan security sampai pada row-level security. Hal ini akan membuat aplikasi kita menjadi semakin aman sewaktu kita melakukan transaksi melalui Internet.
7. Intelegent Self-Managing, untuk para DBA, fitur ini akan membuat proses database tuning dan database manajemen menjadi lebih mudah.
8. Flashback Query, fitur ini memungkinkan kita untuk melihat status data kita mundur beberapa waktu (flash back) sampai batas yang kita tentukan, sehingga apabila terjadi kesalahaan data pada waktu yang lalu, maka kita dapat melakukan koreksi tanpa harus melakukan database recovery.
9. Oracle Data Mining & Data Warehousing, fitur ini memberikan kemudahan bagi perusahaan yang ingin men-develop aplikasi Business Intellegent yang bertujuan untuk membantu eksekutif perusahaan dalam menentuksan strategi perusahaan berdasarkan analisis data yang di-generate oleh Oracle Data Mining.

  • Security Database
Keamanan database adalah suatu cara untuk melindungi database dari ancaman, baik dalam bentuk kesengajaan atau pun bukan. Ancaman adalah segala situasi atau kejadian baik secara sengaja maupun tidak yang bersifat merugikan dan mempengaruhi system serta secara konsekuensi terhadap perusahaan/organisasi yang memiliki system database. Keamanan database tidak hanya berkenaan dengan data yang ada pada database saja, tetapi juga meliputi bagian lain dari system database, yang tentunya dapat mempengaruhi database tersebut. Hal ini berarti keamanan database mencakup perangkat keras, perangkat lunak, orang dan data.
Agar memiliki suatu keamanan yang efektif dibutuhkan kontrol yang tepat. Seseorang yang mempunyai hak untuk mengontrol dan mengatur database biasanya disebut Administrator database. Seorang administratorlah yang memegang peranan penting pada suatu system database, oleh karena itu administrator harus mempunyai kemampuan dan pengetahuan yang cukup agar dapat mengatur suatu system database.

Senin, 21 Maret 2011

RESUME DATABASE ADMINISTRATOR - 102 - M4

System & Database Perfomance

Data Dictionary
Terdapat beberapa perintah untuk menampilkan user dalam sebuah database, dengan beberapa kegiatan user itu sendiri. Kita dapat mencoba beberapa perintah - perintah tersebut seperti :


select * from dictionary
Jika anda menggunakan printah diatas ini, maka hasil perintah ini akan menghasilkan tampilan semua user yang ada dalam database tersebut beserta privilege atau hak masing - masing dari user tersebut. Selain itu, fungsi dari perintah select *from dictionary adalah untuk menampilkan banyak tabel - tabel apa saja pada user tersebut dan semua hal yang berhubungan dengan sistem.

Dalam data dictionary, jika dalam melakukan kegiatan pencarian menggunakan kata - kata atau embel - embel dba_ maka jika dijalankan, akan muncul tampilan penting yaitu semua hal yang berhubungan dengan database. Jika anda menggunakan embel - embel lainnya seperti user_ maka informasi yang akan tampil hanyalah informasi user yang sedang login pada saat ini. Tetapi jika anda menggunakan embel - embel all_ maka kita dapat melihat informasi user apa saja yang telah login dalam database ini, serta hak yang diberikan setiap user yang login pada saat itu. 

Role
Role adalah penggabungan beberapa fungsi yang dapat dipanggil dengan membuat satu paket atau menjadi satu kesatuan untuk dijadikan sebuah tampungan beberapa fungsi tersebut dan dapat dipanggil sesuai dengan kebutuhan sekarang dan nanti.

Untuk lebih jelasya dapat melihat ilustrasi dari gambar dibawah ini :
Dari gambar diatas dapat dilihat bahwa, jika User A dan User B yang masing - masing user tersebut dapat melakukan select, update, dan juga delete dan mempunyai hak dan grand dalam mengakses Tabel A. Maka setidaknya untuk mennyederhanakan sebuah proses tersebut dibutuhkan suatu hal untuk meringkasnya yaitu Role. Kita contohkan saja jika kita membuat select, update, dan delete untuk Tabel A dan kemudian kita konekkan dengan setiap user yang membutuhkan perintah - perintah tersebut terhadap role yang sudah dibuat .

Jika dilihat system perfomance memiliki unsur - unsur penting seperti :

Enviroment
  • OS
  • Allied Agent
  • Hardware Configuration
  • Component of DBMS, fokus terhadap Arsitektur
DBMS Instalation & Configuration
  • Type
  • Memory Usage
  • Data Cache
  • "Open" Dbase Object
  • Database Log
  • Locking & Contention
System Monitoring
  • Last Run - Packet Sun
  • Current Sun - Packet Error
  • Second - Total Read
  • CPU Busy - Total Write
  • I/O Busy - Total Errors
  • Idle - Connection
  • Packet Received


Optimasi Database
Biasa dilakukan pada database besar yang memiliki banyak data, tetapi sangat merepotkan apabila data yang terdapat dalam database tersebut sedikit. Karena memang penggunaannya untuk manajemen data yang banyak. Unsur - unsur dari optimasi database adalah :
  • Partitioning
  • Raw Partitioning vs File System
  • Indexing
  • Denormalization
  • Clustering
  • Interleaving Data
  • Free Space
  • Compression
  • File Placement & Alloation
  • Page Size
  • Reorganization

Sabtu, 12 Maret 2011

RESUME DBA - 102 - M3

Data Avaibility dan Performance Management
Data Avaibility
Definisi : Ketersediaan data pada database yang diakses oleh semua user dan dapat diperoleh setiap saat ketika dibutuhkan.
Empat Komponen Data Avaibility :
• Manageabilit : kemampuan untukmembuat dan memelihara lingkungan yang efektif yang memberikan layanan kepada pengguna
• Recoverability : kemampuan untuk membangun kembali layanan jika mengalami kesalahan atau kegagalan komponen
• Reliability : kemampuan untuk memberikan pelayanan pada tingkat tertentu untuk jangka waktu lain
• Serviceability : kemampuan untuk menentukan adanya masalah, diagnosamasalah, dan memperbaiki masalah
Data Avaibility dipengaruhi oleh :
  • Bentuk Relasi tabel data
  • Hak akses user
  • Tersedia bandwidth antara perangkat dan koneksi jaringan media
  • Mekanisme untuk ketersediaan tinggi dan keamanan mereka sendiri dan aksesibilitas
  • Prioritas dan jenis data yang akan dibuat tersedia
  • Pemulihan peran dan tanggung jawab
  • Jenis file system dan tingkat akses
  • Jenis penyimpanan / pengambilan perangkat atau media termasuk hardware dan software
  • Service Level Perjanjian antara entitas yang bertanggung jawab dan dipengaruhi
  • Pengolahan overhead dari mekanisme yang terkena dampak
  • Disaster Recovery
Performance Management
Definisi : Kemampuan dalam menanggapi kinerja sebuah aplikasi, server, jaringan, dekstop, maupun database itu sendiri.
- Mengoptimalkan sumber daya untuk meningkatkan kemampuan melewatkan data, memperkecil terjadinya crash dalam suatu proses serta menangani beban.
Lima faktor yang mempengaruhi Kinerja Database :
(1) Workload (Beban Kerja). Biasanya seperti transaksi online, banyak proses yang menumpuk yang sedang berjalan, ad hoc query, analisis data warehouse, dan sistem command yang datang beberapa kali.
(2) Throughput. Throughput merupakan kemampuan sebuah computer dalam memproses data.
(3) Resources (Sumber Daya). Ex. Software and Hardware
(4) Optimization (Optimasi). Optimasi database, memformula query dls.
(5) Contention (Kres).


Oracle 10 versi 2.0 release 1.
Listener : mendengarkan / menerima respon dari client.
Dedicated : 1 request langsung dilayani
Share : -1 respon bisa melayani beberapa request
- Database disetting bisa melayani beberapa request apabila sumber daya memungkinkan.
Flash area recovery : tempat menyimpan data-data
Redo : untuk mencatat transaksi apa yang disimpan di Buffer
Sekpoint : memberi tanda bahaya-bahaya tertentu

Minggu, 06 Maret 2011

RESUME DBA - 102 - M2

Database Change Management

Database Change Management adalah proses menentukan apa yang harus dilakukan perubahan ke database, menentukan perubahan tersebut, untuk mengevaluasi dampak dari perubahan dan kemudian mengubah penyebaran mereka. Perubahan pada skema database mungkin diperlukan untuk beberapa alasan, termasuk persyaratan bisnis baru, merger, perubahan undang-undang dan meminta perubahan lingkungan. Skema perubahan mungkin melibatkan perubahan pada dua objek database logis (misalnya, tabel, kolom, kunci primer dan kendala) dan objek database fisik (misalnya, database, ruang meja, kolam buffer dan indeks). Mengubah objek database, terlepas dari jenis, sering kali tidak operasi sepele. Perubahan sering berdampak pada objek tergantung dan kadang-kadang data yang mendasarinya. Proses analisis dan memelihara ketergantungan secara tradisional memakan waktu dan rawan kesalahan.
Typical database environment
 

 
Dengan paket standar pelayanan dan diperpanjang,  lingkungan database dibagi minimal 3: pengembangan, QA (quality assurance) dan produksi. Satu atau lebih skema / database dapat digunakan dalam 3 lingkungan database diberikan tanpa biaya tambahan yang disediakan aplikasi tersebut tetap dalam ruang parameter pengalokasian dan penggunaan CPU, memori dan I / O. Jika perlu, dapat dimasukkan contoh database tambahan (pelatihan, prototipe) dalam paket biaya tambahan.