RESUME DBA - PERTEMUAN 5

Application Performance

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

Jangan over-tune terbaik untuk menghentikan tuning ketika kinerja mencapai tingkat layanan standar untuk pengguna bisnis yang bersedia membayar.
Tetap Fokus à Sebagai DBA, Anda harus memahami tujuan untuk setiap tugas Anda melakukan
dan tetap terfokus pada hal itu.
Jangan panik à DBA diharapkan untuk mengetahui segala sesuatu tentang DBMS ia berhasil. Seorang DBA yang baik tahu di mana harus mencari jawaban dan yang untuk meminta bantuan Berkomunikasi dengan jelas à DBA harus menjadi pusat komunikasi yang, koordinasi diskusi dan beban kerja antara pengguna bisnis, programer, manajer, dan DS
Menerima kenyataan à Banyak organisasi bicara tentang menjadi proaktif tetapi dalam kenyataannya sangat sedikit memiliki kepentingan dalam menghentikan masalah kinerja sebelum terjadiMembandingkan 2 database yaitu My SQL dan Oracle .

A. My SQL: Adalah sebuah system manajemen database. Database adalah sekumpulan data yang terstruktur. Data-data itu dapat suatu daftar belanja yang sangat sederhana sampai ke galeri lukisan atau banyaknya jumlah informasi pada jaringan perusahaan. 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. Oracle :Man this is a great database. Database 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.

Database Security
Keamanan Data base
Prinsip Hak Minimum
1. Hanya menginstall software yang diperlukan oleh mesin
2. Aktifkan layanan yang hanya diperlukan oleh mesin
3. Berikan OS dan akses database hanya pada para pengguna yang membutuhkan akses
4. Membatasi akses ke root atau account administrator
5. Membatasi akses ke account SYSDBA dan SYSOPER
6. Membatasi jumlah user dengan hak akses administrator

Menerapkan Prinsip Hak Minimum
1. Melindungi data dictionary
2. Menolak hak akses yang tidak perlu dari PUBLIC
3. Membatasi akses direktori-direktori pada sistem operasi yang dapat diakses oleh user
4. Membatasi jumlah user dengan hak akses administrator
5. Menbatasi autentikasi user pada database secara remote

Melindungi Data Dictionary
Directionary dengan memastikan parameter inisialisasi berikut di set FALSE
07_DICTIONARY_ACCESSIBILITY = FALSE;
Konfigurasi ini mencegah user dengan ANY TABLE system privilege mengakses table dasar dari data dictionary
Nilai FALSE juga mencegah user SYS dari logging selain SYSDBA
Default nilai parameter ini FALSE. Jika di set TRUE, maka harus ada alasan yang benar-benar sesuai.

Menolak Hak Akses dari Luar yang Tidak Diperlukan
1. Menolak hak akses yang tidak perlu dan role-role dari database server dengan group PUBLIC
2. Mengeksekusi paket-paket yang harus tolak dari PUBLIC, antara lain :

ü UTL_SMTP
ü UTL_TCP
ü UTL_HTTP
ü UTL_FILE

Membatasi User dengan Role DBA
Menolak hak akses seperti berikut :

1. Menolak hak akses system dan object secara penuh
2. Koneksi hak akses SYS, SYSDBA dan SYSOPER

Membatasi Autentikasi User pada Database Secara Remote
1. Autentikasi secara remote hanya digunakan ketika anda memberikan kepercayaan kepada client dengan autentifikasi sewajarnya
2. Proses autentifikasi remote :
ü User mengakses database dari luar
ü Remote autentikasi dilakukan oleh User
ü User masuk ke database
3. Instance diinisialisasi parameter dengan setting default

Mengelola Akun User Standar
1. DBCA membatasi dan mengunci semua account, kecuali:SYS, SYSTEM, SYSMAN, DBSNMP
2. Untuk membuat database secara manual, kunci dan batasi akun yang tidak digunakan

Implementasi Fitur- Fitur Keamanan Password Standar
Fitur-Fitur Standart Keamanan
Memberikan Fungsi Verifikasi Password
Untuk memberikan fungsi password verifikasi lakukan kebutuhan password antara lain :
1. Panjang minimun 4 karakter
2. Password tidak boleh sama dengan Username
3. Password harus memiliki sedikitnya 1 huruf, 1 angka, dan 1 huruf khusus

Mengawasi Aktifitas yang Mencurigakan
Mengawasi atau mengaudit harus menyatu dengan prosedur keamanan. Berikut hal yang harus diperhatikan dalam melakukan audit dalam database Oracle antara lain :

1. Melakukan Pengauditan Wajib
2. Standart Database Auditing
3. Fine-Granted Auditing (FGA)

Standart Database Auditing
Diaktifkan melalui parameter AUDIT_TRAIL
1. NONE : Mematikan kumpulan history dari audit
2. DB : Mengaktifkan Audit dari data yang ada di database
3. OS : Mengaktifkan audit dari OS

Yang dapat di audit yaitu :
1. Event Login
2. Hak Akses System
3. Hak Akses Object

Fine-Granted Auditing (FGA)
Mengawasi data yang diakses berdasarkan isi
Audit SELECT, INSERT, UPDATE, DELETE
Dapat dihubungkan ke tabel atau view
Menghubungkan dengan paket DBMS_FGA


Mengupdate Keamanan
Alamat web site keamanan database oracle technology network :
http://otn.oracle.com/deploy/security/alerts.htm

System and Database Performance

Optimize System Performance

Layanan Pelanggan maju membantu Anda meningkatkan performa dan mengoptimalkan lingkungan Oracle Anda melalui pilihan penilaian proaktif terus-menerus, termasuk pengujian, pemantauan, pengukuran, dan pemodelan. Nikmati akses pilihan para ahli teknis dan konfigurasi, kinerja, dan layanan tips untuk penggunaan yang lebih efektif dari sumber daya TI Anda dan manajemen yang lebih baik dari lingkungan anda.
.
Data Dictionary
Select * From dictionary
Perintah tersebut diatas akan menampilkan semua nama user dan privilagenya. Disana kita juga dapat melihat tabel apa saja pada setiap user serta apapun yang berhubungan dengan sistem.
Jika Data Dictionary dalam pencarian dengan memberikan "dba_" maka akan menampilkan semua yang berhubungan dengan database.
Jika "all_" maka kita akan dapat melihat user siapa saja yang sedang login saat itu dan grand yang diberikan kepada setiap user.
Jika "user_" maka kita dapat melihat user yang sedang login saja.
Misalkan ada user DBA, HR, SCOTT (seperti pada gambar 1) dan dimasing-masing user tersebut mempunyai objek sendiri-sendiri. Tabel setiap userpun dapat disamakan persis nama dan isinya (Struktur dan Objeknya).
Optimasi Database
  1. Partioning
  2. Raw Partition Vs File System
  3. Indexing
  4. Denormalization
  5. Clustering
  6. Interleaving Data
  7. Free Space
  8. Compression
  9. File Placement & Allocation
  10. Page Size
  11. Reorganization
Role
Role adalah penggabungan beberapa fungsi yang dapat dipanggil dengan membuat satu paket tempat untuk dijadikan tampungan beberapa fungsi tersebut dan dapat dipanggil sesuai dengan kebutuhan.
Misalnya, dari gambar diatas adalah jika terdapat 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 meringkas ebuah proses tersebut kita membutuhkan Role. Katakan saja kita membuat select, update dan delete untuk Tabel A dan kemudian kita konekkan setiap user yang membutuhkan perintah tersebut terhadap role yang sudah dibuat.


Data Availability
  • Data Availability merupakan ketersediaan data pada database yang diakses semua user dan dapat diperoleh setiap saat ketika dibutuhkan. Data Availability dimaksudkan sebagai suatu kesiapan data dimana ketika user membutuhkan data tersebut maka data tersebut merespon secara langsung.
  • Secara tidak langsung ketersediaan data tersebut selalu dipengaruhi oleh beberapa hal, salah satunya yang paling penting adalah Disaster Recovery. Disaster recovery ini bisa terjadi karena virus atau manusia itu sendiri. Seorang DBA (Database Administrator) setidaknya melihat apakah database tersebut terancam oleh sesuatu hal. Jika iya, maka DBA harus menyediakan plan b (atau strategi cadangan) dalam mengantisipasi pencegahan/penanggulangannya (bias dikatakan siap siaga – jaga-jaga).
Komponen – Komponen Data Availability
Data Avaibility terdiri dari 4 komponen, dimana komponen – komponen tersebut menjadi satu dan saling berhubungan untuk memastikan bahwa sistem dapat dijalankan dan proses bisnisnya dapat dilakukan sesuai dengan kebutuhan. Komponen – komponen tersebut terdiri dari :
  • Manageability -- Yaitu kemampuan untuk membuat dan memelihara lingkungan yang efektif yang memberikan layanan kepada pengguna.
  • Recoverability -- Yaitu kemampuan untuk membangun kembali layanan jika mengalami kesalahan atau kegagalan komponen.
  • Reliability -- Yaitu kemampuan untuk memberikan pelayanan pada tingkat tertentu untuk jangkan waktu lain.
  • Serviceability -- Yaitu kemampuan untuk menentukan adanya masalah, pemeriksaan secara menyeluruh, dan memperbaiki masalah itu sendiri.
Manfaat dari Data Avaibility
  • Dapat diakses dari jarak jauh
  • Data tersedia pada saat dibutuhkan
  • Kemampuan menangani crash agar service tetap berjalan seperti biasa
  • Pemindahan atau penghapusan data yang sudah tidak diperlukan agar menghemat tempat penyimpanan data
Perfomance Management
Performance Management yaitu kemampuan dalam menanggapi kinerja sebuah aplikasi, server, jaringan, dekstop, maupun database itu sendiri. Berikut adalah contoh - contoh Performance Management :
  1. Mengoptimalkan sumber daya untuk meningkatkan kemampuan melewatkan data, memperkecil terjadinya crash dalam suatu proses serta menangani beban.
  2. Dalam aturannya setidaknya seorang DBA menggunakan aturan 80/20. Maksudnya yaitu, aturan 80% adalah dari hasil dan 20% adalah dari usaha. Yang kuncinya adalah F.O.K.U.S. – FOKUS pada suatu masalah yang dihadapi dan jangan terpancing pada efek solusi atau masalah tersebut.
5 faktor yang mempengaruhi Kinerja Database :
  • Workload (Beban Kerja) -- Seperti transaksi online, analisis data warehouse, dan sistem command yang datang beberapa kali.
  • Throughput -- Merupakan kemampuan sebuah computer dalam memproses data.
  • Resources (Sumber Daya) -- Contohnya : Software and Hardware.
  • Optimization (Optimasi) -- Optimasi database, memformula query dls.
  • Contention (Kres) -- Yaitu kondisi di mana dua atau lebih komponen dari beban kerja sedang mencoba untuk menggunakan satu sumber daya dengan cara yang bertentangan. Seiring dengan peningkatan ke-kres-an data serta penuruanan data yang melewati proses.
Keterkaitan Data Availability dan Performance Management
Dari hal - hal diatas, maka dapat kita simpulkan bahwa ketersediaan data akan langsung direspon oleh kinerja komputer dalam kecepatan / ketanggapan merespon data yang diproses oleh komputer.



ISTILAH DALAM ORACLE :
  • Listener : merupakan proses terpisah yang berjalan pada database server dalam komputer, dan menerima request / permintaan koneksi klien yang masuk dan mengelola lalu lintas permintaan ini ke server database.
  • Dedicated Server Processes: merupakan sebuah proses dimana jika ada suatu request, maka request tersebut langsung dilayani oleh proses tersebut. ( 1 request, 1 layanan )
Proses Oracle Database Dedicated Server
  • Shared Server Processes : merupakan proses yang bisa melayani beberapa request dalam 1 respon dengan catatan sumber daya dalam komputer tersebut kapasitas memorynya memungkinkan untuk disetting Shared Server Process.
Proses Oracle Database Server

tns names :
( description =
( address = ( protocol = TCP ) ( HOST = localhost )(port = 1521))
( connect_data =
( server = dedicated )
( service_name = ora10g )
)
)
PERFORM MANAGEMENT
Perform Management terdiri dari :
  1. Monitoring
  2. Tunning
  3. Management
FAKTOR YANG MEMPENGARUHI KINERJA DATABASE
  1. Beban kerja
  2. Througput -- kemampuan untuk melewatkan data.
  3. Resources -- sumber daya dalam komputer
  4. Optimalization -- bisa tidaknya query optimation melakukan tunning sendiri / atau bisa tidaknya menangani konflik ( kress ).

Daftar Pustaka :

Postingan Lebih Baru Postingan Lama Beranda