170 likes | 277 Views
DATABASE ADMINISTRATION. Pertemuan ke - 7. Application Performance source : Database Administration the complete guide to practices and procedures chapter 12 by. Craig S. Mullins. Performa aplikasi fokus membahas tentang tuning dan optimasi kode aplikasi dan SQL statement
E N D
DATABASE ADMINISTRATION Pertemuanke-7
Application Performancesource : Database Administrationthe complete guide to practices and procedureschapter 12by. Craig S. Mullins
Performa aplikasi fokus membahas tentang tuning dan optimasi kode aplikasi dan SQL statement • Aplikasi yang didesain dan di buat dengan buruk akan sangat mempengaruhi performa database • 80% masalah databae, ketika di track, akan kembali pada masalah aplikasi
Designing Applications for Relational Access • Isu yang berkembanguntuk application performance antara lain • Type of SQLvalid Planned/unplanned, dynamic / static, embeded /stand alaone • Programming language sesuai tujuan penggunaan ? optimal • Transaction design and processing. sesuai denganACID (atomicity-otomatis, consistency-konsisten, isolation-isolasi, and durability-kuat )properties
Designing Applications for Relational Access • Locking strategy tipe lock benar ? Tipe lock lama? • COMMIT strategy. apakah setiap aplikasi menggunakan SQL commit? • Batch processing apakah batch program sesuai fitur sequential processing DBMS • Online processing aplikasi online mengembalikan info yang berguna? Optimal info per akses?
Relational Optimization • Optimizer jantung dari DBMS • Optimizer engine yang bertanggungjawabuntukmenentukanbest possible database navigation strategyuntuksetiap SQL request. • Developer aplikasiharusmenspesifikan data apa yang dibutuhkansaat coding SQL • DBMS supply information dimana data diletakkan, • relational optimizermemutuskanbagaimananafigasi data secaraefisien • End user harusmemilikipengetahuandimanadanbagaimana data aktualdisimpan, optimisertahu info tersebut
Setiap RDBMS memiliki embedded relational optimizer merenderSQL statements menjadi executable access paths. • Setiap vendor relational memilikisedikitperbedaanpada relational optimisernyaperbedaan step danperbedaaninformasi • Intidari proses samaantara DBMS satudengan yang lain • Optimiser parse SQL statement perform kebeberapafaseoptimasi
SQL Coding and Tuning for Efficiency Step yang munculuntuksetiap SQL statement • Indetifikasikebutuhanbisnis • Memastikankebutuhan data tersediapada database • Terjemahkandaribisnis requirement ke SQL • Test akurasi SQL danhasilnya • review akses path untukmengetahuiperforma • Tweak SQL untukmendapatkanakses path yang lebihbaik • Code optimization hints. • Ulangilangkah 4 sampai 7 hinggaperformaditerima • Ulangilangkah 8 apabilamunculmasalahperformaatau DBMS barudiinstall • Ulangiseluruh proses jikadibutuhkanuntuk proses bisnisbaru
SQL Rules of Thumb • Rule 1: sesuai • DBA harus tahuapa yang sesuaidengankebutuhan • Rule 2: hati-hatiterhadapapa yang ditanyakan • Letakkanpredikat yang restriktifpadatempat yang dbacapertama kali • Rule 3: KISS • Keep it simple, Stupid • Rule 4: Ambilapasaja yang dibutuhkan
Rule 5: hindari Cartesian Products • Rule 6: bijak untuk penggunaan OR
Rule 8: ketahuimana yang terbaikkerjanya • Rule 9: Isu COMMIT yang terlalusering • Rule 10: bijakdalampenggunaankode generator • Rule 11: pertimbangkanpenggunaan store prosedure
Additional SQL Tuning Tips • Gunakan index untukmenghindari sorting • buat index untuk query yang bermasalah • Jikamemungkinkanjanganmenggunakanaritmatic di SQL predikat (where), gunakan programming application untuk operator aritmatik • Gunakanfungsi SQL untukmeminimalkan effort programming • Gunakancontrainuntukmeminimalkan coding cek • Janganlupaefektersembunyidari trigger. Sebabbisajadisatu delete dapatmempengaruhibanyakhal.termasukjikaadamasalahbisajadi trigger delete inipenyebabmasalah
Summary • Manajemen Performa aplikasi dan SQL tuning adalah area komplek yang mebutuhkan partisipasi aktif dari programmer dan DBA • Setiap DBMS beroperasi secara berbeda, maka DBA termasuk programmer perlu mengetahui setiap langkah untuk SQL dan application performance manajemen untuk DBMS mereka • Relational optimizer mengkombinasikan akses path strategi untuk membentuk akses path yang efisien untuk setiap SQL request • Optimizer adalah bagian yang komplek dari sebuah software, dan DBMS vendor terkadang tidak memberikan petunjuk yang cukup pada customer cara penggunaannya • SQL peformance tuning lebih tepat disebut proses artistic yang berulang, daripada disebut bagian dari science
Tugas kelompok setelah UTS • Install oracle (enterprise edition) • letakkan cara install dan screenshot instalasi di blog masing-masing • Akandigunakanuntukkuliahselanjutnya