Pos ini juga tersedia dalam bahasa berikut. Jepang, Korea Show
Dampak kinerja instrumen skema kinerja MySQL tom__bo 16-05-2019 Insinyur LINE Hai, yang di sana. Saya Otsuka (tom__bo), terutama bertanggung jawab atas operasi MySQL dan pengembangan berbagai alat administrasi dan verifikasi DB. Dalam postingan ini, saya akan menulis tentang eksperimen saya tentang kinerja MySQL ketika konsumen kinerjanya, yaitu database 0 database, aktif dan berjalan. Saya belajar tentang skema_kinerja dan 1 dari sebuah buku berjudul 詳解MySQL5. 7 (Jepang)Database dan tabel untuk pemantauan kinerjaBiasanya saat Anda ingin mendapatkan informasi kinerja di MySQL, Anda menggunakan instrumen Skema Kinerja atau tabel 1 (atau sistem. tampilan metrik dengan ringkasan tabel performa). Dengan informasi performa ini, Anda dapat memahami eksekusi internal MySQL, terutama berapa banyak peristiwa yang dihasilkan dan berapa banyak waktu yang diperlukan di mesin penyimpanan InnoDB. Selalu ada biaya untuk pemantauan kinerja — dengan kata lain, biaya overhead. Saya menjalankan tes sederhana untuk mengukur overhead tersebutSebelum masuk ke hasil eksperimen, izinkan saya menjelaskan secara singkat cara menggunakan database _______ 60 _______ dan tabel 4. Versi MySQL untuk eksperimen ini adalah MySQL Community 5. 7. 22tabel performance_schemaSkema Performa MySQL mungkin yang pertama kali terlintas dalam pikiran saat memantau performa MySQL. Skema Kinerja mengumpulkan data seperti berapa kali aktivitas berinstrumen dilakukan dan berapa lama waktu yang dibutuhkan. Data peristiwa tersebut dikumpulkan menggunakan "titik instrumentasi" yang ditempatkan di sana-sini dalam kode sumber MySQL. Beberapa titik instrumentasi yang sering digunakan untuk pengguna diaktifkan secara default, menyediakan data yang tersedia tanpa konfigurasi tambahan. Jika Anda ingin mengaktifkan titik instrumentasi tertentu, Anda perlu mengubah konfigurasinya. Lihat Konfigurasi Startup Skema Performa untuk informasi lebih lanjut Dua komponen utama struktur Skema Performa adalah
Tabel penyiapan Skema Performa termasuk 5, ________0______6, 7, 8, 9 dan 0 memungkinkan Anda menentukan konfigurasi untuk rekaman yang sesuai (i. e. bagaimana dan data apa yang dikumpulkan). Secara default, objek (mis. e. database), utas, dan aktor (i. e. pengguna klien) diaktifkan untuk pemantauan. Untuk instrumen dan konsumen, Anda dapat menggunakan 5 dan 7 tabel untuk mengaktifkan pemantauan instrumen atau konsumen tertentuData yang tersediaMari kita lihat kategori data kinerja apa saja yang dapat dikumpulkan dari instrumen. Anda dapat memeriksa daftar kategori dengan performance_schema. tabel setup_instrumen. Seperti yang ditampilkan di bawah, di MySQL 5. 7. Versi 22, total ada 1.032 instrumen dan kategori dibedakan menggunakan 3. Daftar kategori tingkat atas diwakili oleh 3 pertama adalah sebagai berikut
Daftar 5. 2 on page 188 of the book, 詳解MySQL5. 7, menunjukkan bahwa jumlah instrumen meningkat kecuali untuk kategori idle dan transaksi. Untuk MySQL8. 0. 13, kategori kesalahan ditambahkan dengan jumlah total instrumen menjadi 1.217. Cara menggunakan tabel performance_schemaTabel 5 memiliki 6 dan 7 kolom untuk modifikasi sedangkan 7 tabel memiliki 6 kolom untuk modifikasi. Jika Anda memiliki hak istimewa UPDATE, Anda dapat mengubah nilai kolom ini menjadi 0 untuk mengaktifkan atau 1 untuk menonaktifkanSaat nilai 7 kolom 5 tabel disetel ke 0, instrumen akan diatur waktunya. Untuk instrumen memori, kolom 7 di 5 tabel diabaikan karena operasi memori tidak diatur waktunya. Dengan kata lain, jika kolom _7 disetel ke 0 untuk instrumen memori, kueri akan berhasil tetapi nilai rekaman akan menyatakan TIDAKAnda dapat merujuk ke contoh berikut dari setiap tabel
INFORMASI_SCHEMA. INNODB_METRIKInformasi mesin penyimpanan InnoDB yang dikumpulkan oleh innodb_monitor disimpan di 4 tabel. Anda dapat mengumpulkan informasi yang tidak dicantumkan oleh performance_schema dan 1. Tabel 4 memiliki kolom 3 untuk nama unik penghitung, 4 kolom untuk kategori penghitung dan penghitung lainnya untuk diagnosis performa. Anda dapat menemukan deskripsi untuk setiap penghitung di kolom 5Berikut adalah contoh tabel _Data yang tersediaMySQL5. 7. 22 memiliki total 235 loket yang dikelompokkan menjadi 17 subsistem. Seperti dijelaskan di atas, setiap subsistem memungkinkan Anda mengumpulkan data statistik untuk setiap penghitung seperti status, hasil pemantauan, dan data gabungan. Tabel berikut menunjukkan jumlah penghitung untuk setiap subsistem. Anda dapat melihat kolom Nama Modul pada tabel di bawah ini. Nama modul dapat digunakan untuk mengaktifkan, menonaktifkan, atau mengatur ulang semua penghitung untuk subsistem tertentu. Saya tidak mengerti semua detailnya, tetapi Anda perlu menentukan nama modul saat Anda ingin mengaktifkan penghitung di tingkat subsistem. Silakan merujuk ke referensi berikut untuk informasi lebih lanjut
Cara PenggunaanAnda dapat mengaktifkan, menonaktifkan, dan mengatur ulang penghitung menggunakan variabel berikut. Dan, Anda dapat menggunakan salah satu opsi konfigurasi berikut untuk menetapkan penghitung. 7, 8 (subsistem), 9 (ekspresi string) atau 0.
Misalnya, Anda dapat mengaktifkan subsistem indeks dengan kueri berikut
SYS. TAMPILAN METRIKMySQL5. 7. 7 dan versi yang lebih tinggi menyertakan skema sistem, yang memberikan tampilan yang meringkas informasi berikut.
Silakan lihat dokumen sys-metrics untuk informasi lebih lanjut. Berikut ini adalah ringkasan tampilan metrik menurut setiap kategori (kolom 4).
Perhatikan bahwa angka untuk "Metrik InnoDB -. " pada tabel di atas sama dengan atau lebih kecil dari angka dari 4 tabel. Tampilan metrik menyediakan akses mudah ke angka kasarnya, tetapi terbatas pada 6 dan 7. Tidak menambah banyak nilai hanya untuk memiliki informasi parsial. Di sini, saya akan lebih fokus pada ________0______1 tabelEksperimen SayaMempersiapkanInilah lingkungan yang telah saya siapkan untuk eksperimen saya
Detail konfigurasi dan informasi perangkat keras yang tidak berdampak material pada pemantauan kinerja tidak disediakan di sini. Detail eksperimenSaya menyiapkan skenario sysbench oltp_read_write dengan opsi berikut dan menjalankan benchmark untuk membandingkan performa setiap konfigurasi berdasarkan jumlah transaksi (i. e. TPS, Transaksi Per Detik). Ukuran database, yang diberikan dengan 9 perintah sysbench, kira-kira. 2. 4 GB. Saya menjalankan skenario oltp_read_write sebagai berikut.
Saya menambahkan konfigurasi berikut ke 0 file dan memutar ulang 1tidak membaca 2di putaran berikutnya
Hasil EksperimenDengan menggunakan opsi di atas, saya menjalankan serangkaian eksperimen untuk membandingkan transaksi per detik (TPS) dari kombinasi yang berbeda dari semua 6 dan 7 kolom instrumen/konsumen dari performance_schema dan innodb_metrics versus setelan default. Hasilnya ditunjukkan pada tabel di bawah iniSETUP_INSTRUMENTS ALL 'ENABLED' COLUMNSETUP_INSTRUMENTS ALL 'TIMED' COLUMNALL INNODB_METRICSTPSTPS rasio vs DEFAULTAVERAGE LATENCYCOMMENTNONODISABLED3506. 251. 0312. 28Semua DINONAKTIFKAN untuk performance_schema dan innodb_metricsNONODEFAULT3496. 401. 0292. 29Semua DINONAKTIFKAN untuk instrumen performance_schemaDEFAULTDEFAULTDISABLED3391. 850. 9982. 36Semua DINONAKTIFKAN untuk innodb_metricsDEFAULTDEFAULTDEFAULT3399. 321. 002. 35DEFAULTDEFAULTDEFAULTENABLED3389. 690. 9972. 36Semua DIAKTIFKAN untuk innodb_metricsYESDEFAULTDEFAULT2906. 150. 8552. 75All ENABLED untuk instrumen performance_schemaYESYESDEFAULT2837. 440. 8352. 82All ENABLED untuk instrumen performance_schema termasuk TIMEDYESDEFAULTENABLED2908. 340. 8562. 75All ENABLED untuk performance_schema dan innodb_metricsYESYESENABLED2825. 310. 8312. 83All ENABLED untuk performance_schema dan innodb_metrics termasuk TIMEDMari kita analisis hasil untuk setiap skenario, menggunakan TPS dan rasio TPS vs DEFAULT. Tidak mungkin instrumen akan dinonaktifkan secara default di dunia nyata, tetapi ini pasti mempercepat kinerjanya. Konfigurasi KesimpulanSaya menjelaskan tentang Apa dan Bagaimana tentang Skema Performa dan tabel 1 dan membagikan hasil pembandingan berdasarkan skenario oltp_read_write sysbench untuk berbagai kombinasi penonaktifan atau pengaktifan semua nilai. Ketika semua hal diaktifkan, kinerja turun sekitar 15%. Seperti yang saya katakan sebelumnya, percobaan ini didasarkan pada skenario sederhana (query) tanpa overhead yang signifikan. Jadi, di dunia nyata, Anda perlu mengatur konfigurasi dengan cerdas, mengingat situasi Anda. Saya harap percobaan kecil saya di sini bisa menjadi petunjuk Anda saat Anda perlu membuat pilihan
Bagaimana cara mengaktifkan skema kinerja di MySQL?Untuk mengaktifkan semua instrumen Skema Kinerja yang tersedia, jeda perangkat penunjuk Anda di atas Diaktifkan Sepenuhnya dan klik lingkaran pada bilah geser . Skema SYS dibundel dengan MySQL Server 5. 7 ke atas, dan MySQL Workbench menggunakan versi itu.
Bagaimana cara menonaktifkan skema kinerja di MySQL?Variabel performance_schema AKTIF atau NONAKTIF untuk menunjukkan apakah Skema Performa diaktifkan atau dinonaktifkan. . OFF , FALSE , atau 0. Nonaktifkan instrumen AKTIF , BENAR , atau 1. Aktifkan dan atur waktu instrumen TERHITUNG. Aktifkan dan hitung (bukan waktu) instrumen Apa skema kinerja di MySQL?Skema Kinerja MySQL adalah fitur untuk memantau eksekusi MySQL Server pada level rendah. Skema Kinerja memiliki karakteristik ini. Skema Kinerja menyediakan cara untuk memeriksa eksekusi internal server saat runtime
Bagaimana cara mengaktifkan skema kinerja di RDS MySQL?Mengonfigurasi Skema Performa untuk pengelolaan otomatis . Pilih Grup parameter Pilih nama grup parameter untuk instans DB atau klaster DB Multi-AZ Anda Masukkan performance_schema di bilah pencarian Pilih parameter performance_schema Pilih Edit parameter Pilih parameter performance_schema |