Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Jelaskan Plan Cost Pain Point

Sebelumnya hari ini, saya bekerja dengan pengembang pada kueri yang memiliki kinerja buruk. Kueri ini besar dan kompleks, dan awalnya tampak seperti upaya yang menakutkan untuk mencari tahu di mana letak masalah kinerjanya. Dengan Explain Plan, terkadang kami dapat menggunakan biaya untuk membantu mempersempit titik kesulitan kinerja dari kueri yang besar dan kompleks.

Melihat Rencana Penjelasan dari kueri ini, kita dapat melihat bahwa biaya keseluruhannya cukup tinggi.

Saat melihat detailnya, kita dapat melihat bahwa pemindaian tabel LENGKAP (FTS) pada tabel DETAIL_RECORD memiliki biaya tinggi 51018. Perhatikan bagaimana tingginya biaya FTS menyebar ke rencana. Semua operasi di atas FTS ini memiliki biaya tinggi karena tingginya biaya akses tabel tunggal ini. Mengakses tabel CIMS_POLICIES_TO_PROCESS memiliki biaya yang relatif rendah, tetapi operasi HASH JOIN menerima biaya tinggi hanya karena tingginya biaya untuk mengakses tabel DETAIL_RECORD.

Biaya keseluruhan hanya sedikit lebih dari biaya untuk mengakses tabel ini. Jelas bahwa FTS pada tabel ini merupakan kontributor terbesar pada titik kesulitan dari kueri yang dianalisis.

Dengan melihat biaya Explain Plan dengan cara ini, kami dapat dengan cepat fokus pada satu area kueri yang sangat kompleks yang menyebabkan kinerja paling buruk. Tanpa analisis biaya yang dilakukan di sini, menentukan bagian mana dari kueri di bawah ini yang menyebabkan masalah akan membutuhkan banyak pekerjaan.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Pembaruan Oracle Hang

  2. Cara Memformat Bulan dalam Angka Romawi di Oracle

  3. Bagaimana cara memvalidasi alamat email menggunakan PL/SQL?

  4. cara membangun kembali antrian wf_Java_deferred

  5. Apakah mungkin untuk melewatkan nama tabel sebagai parameter di Oracle?