Meningkatkan ukuran cache tabel terbuka

Pemberi rekomendasi tabel terbuka Cloud SQL dalam jumlah banyak membantu Anda mendeteksi instance yang jumlah tabelnya yang dibuka secara bersamaan sama dengan nilai table_open_cache. Bagian ini kemudian memberikan rekomendasi tentang cara mengoptimalkan instance tersebut untuk meningkatkan performa.

Halaman ini menjelaskan cara kerja pemberi rekomendasi tabel terbuka dalam jumlah banyak dan cara menggunakannya.

Cara kerja Duet AI

MySQL bersifat multi-thread, dan klien dapat mengeluarkan kueri secara bersamaan pada tabel yang sama dari beberapa thread. Sehingga MySQL dapat memiliki tabel terbuka yang terpisah untuk setiap sesi. Jumlah tabel yang dibuka secara bersamaan dikelola oleh table_open_cache. Jika cache penuh dan tabel tambahan dibuka, MySQL akan menutup tabel yang paling lama digunakan. Jika semua tabel dalam cache saat ini sedang digunakan, MySQL akan memperluas cache untuk sementara dan menutup tabel segera setelah tabel tidak digunakan lagi.

Jika jumlah tabel terbuka melebihi nilai table_open_cache, performa database dapat terpengaruh selama workload yang tinggi. Hal ini karena ada lebih banyak thread yang dibuat dan pengendali tabel harus lebih sering membuka dan menutup tabel.

Pemberi rekomendasi tabel terbuka Cloud SQL dalam jumlah banyak menganalisis metrik untuk jumlah tabel yang terbuka pada instance Cloud SQL MySQL setiap hari. Jika jumlah tabel yang dibuka meningkat 1 setiap 2 detik atau lebih cepat dalam 24 jam sebelumnya, dan jumlah tabel terbuka sama dengan atau lebih dari nilai table_open_cache, pemberi rekomendasi akan menyarankan Anda untuk menyesuaikan flag table_open_cache.

Harga

Pemberi rekomendasi tabel terbuka Cloud SQL dalam jumlah banyak berada dalam Tingkat harga pemberi rekomendasi Standar.

Sebelum memulai

Sebelum Anda dapat melihat rekomendasi dan insight, lakukan tindakan berikut:

  • Agar mendapatkan izin untuk melihat dan bekerja dengan insight dan rekomendasi, pastikan Anda memiliki peran yang diperlukan.
    Tasks Peran
    Melihat rekomendasi Salah satu peran berikut: recommender.cloudsqlViewer atau cloudsql.viewer.
    Menerapkan rekomendasi Salah satu dari peran berikut: recommender.cloudsqlAdmin, cloudsql.editor, atau cloudsql.admin.
    Untuk mengetahui informasi lebih lanjut tentang peran, lihat memahami peran dan memberikan izin IAM.
  • Enable the Recommender API.

    Enable the API

Daftar rekomendasi performa instance

Anda dapat membuat daftar rekomendasi performa instance menggunakan Konsol Google Cloud, gcloud CLI, atau Recommender API.

Rekomendasi untuk meningkatkan performa instance hanya ditampilkan jika Anda memiliki instance yang mendekati batas nilai minimum performa.

Konsol

Untuk membuat daftar rekomendasi tentang performa instance menggunakan Google Cloud Console, ikuti langkah-langkah berikut:

  1. Buka halaman Cloud SQL Instances.

    Buka Instance Cloud SQL

  2. Klik Lihat semua di banner Tingkatkan rekomendasi cache tabel terbuka.

Atau, ikuti langkah berikut:

  1. Buka Hub Rekomendasi. Lihat juga Mulai menggunakan Hub Rekomendasi.

    Buka Hub Rekomendasi

  2. Di kartu Tingkatkan Performa Cloud SQL Instance, klik Lihat semua.

  3. Pilih instance dengan rekomendasi Tingkatkan cache tabel terbuka.

gcloud CLI

Untuk menampilkan daftar rekomendasi Tingkatkan Performa Instance menggunakan gcloud CLI, jalankan perintah gcloud recommender recommendations list sebagai berikut:

gcloud recommender recommendations list \
--project=PROJECT_ID \
--location=LOCATION \
--recommender=google.cloudsql.instance.PerformanceRecommender \
--filter=recommenderSubtype=MYSQL_HIGH_NUMBER_OF_OPEN_TABLES_BEST_PRACTICE

Ganti kode berikut:

  • PROJECT_ID: project ID Anda
  • LOCATION: Region, seperti us-central1

API

Untuk membuat daftar rekomendasi Tingkatkan Performa Instance menggunakan Recommendations API, panggil metode recommendations.list seperti berikut:

GET https://recommender.googleapis.com/v1beta1/projects/PROJECT-ID/locations/LOCATION/recommenders/google.cloudsql.instance.PerformanceRecommender.MySqlHighNumberOfTablesBestPractice/recommendations

Ganti kode berikut:

  • PROJECT_ID: ID Project Anda.
  • LOCATION: Region, seperti us-central1.

Jika pemberi rekomendasi mendeteksi instance yang memiliki tabel terbuka dalam jumlah banyak, rekomendasi ini akan membuat daftar dalam tabel bersama dengan rekomendasi performa lainnya. Setiap baris menampilkan ID instance, rekomendasi singkat, mesin database, lokasi, dan tanggal pembaruan terakhir.

Melihat insight dan rekomendasi mendetail

Anda dapat melihat insight dan rekomendasi mendetail tentang instance yang memiliki tabel terbuka dalam jumlah banyak menggunakan konsol Google Cloud, gcloud CLI, atau Recommender API.

Konsol

Untuk melihat insight dan rekomendasi mendetail tentang instance yang mendekati batas performa menggunakan Google Cloud Console, klik link rekomendasi dalam daftar instance.

gcloud CLI

Untuk melihat insight dan rekomendasi mendetail tentang instance yang mendekati batas performa menggunakan gcloud CLI, jalankan perintah gcloud recommender insights list sebagai berikut:

gcloud recommender insights list \
--project=PROJECT_ID \
--location=LOCATION \
--insight-type=google.cloudsql.instance.PerformanceInsight \
--filter=insightSubtype=MYSQL_HIGH_NUMBER_OF_OPEN_TABLES

Ganti kode berikut:

  • PROJECT_ID: ID Project Anda.
  • LOCATION: Region, seperti us-central1.

API

Untuk melihat insight dan rekomendasi mendetail tentang instance yang memiliki tabel terbuka dalam jumlah banyak menggunakan Recommendations API, panggil metode insights.list sebagai berikut:

GET https://recommender.googleapis.com/v1beta1/projects/PROJECT-ID/locations/LOCATION/insightTypes/google.cloudsql.instance.PerformanceRecommender.MySqlHighNumberOfOpenTables/insights

Ganti kode berikut:

  • PROJECT_ID: ID Project Anda.
  • LOCATION: Region, seperti us-central1.

Tabel berikut mencantumkan insight dan rekomendasi yang dihasilkan oleh pemberi rekomendasi tabel terbuka dalam jumlah banyak Cloud SQL untuk membantu Anda meningkatkan performa. Subjenis terlihat di hasil gcloud CLI dan API.

Insight Rekomendasi
Jumlah tabel terbuka sama dengan nilai flag table_open_cache.
Subjenis: MYSQL_HIGH_NUMBER_OF_OPEN_TABLES
Tingkatkan performa instance Cloud SQL dengan mengurangi jumlah tabel terbuka.
Subjenis: MYSQL_HIGH_NUMBER_OF_OPEN_TABLES_BEST_PRACTICE

Menerapkan rekomendasi

Mengevaluasi rekomendasi dengan cermat dan melakukan salah satu tindakan berikut:

  • Untuk memeriksa instance, klik Lihat instance. Lihat Mengoptimalkan performa instance dan ikuti rekomendasinya.

  • Untuk menolak rekomendasi agar tidak ditekankan dan tampak redup, klik Tolak.

  • Untuk menutup panel tanpa menerapkan atau menolak rekomendasi, klik Batal.

Mengoptimalkan performa instance Anda

Untuk mengoptimalkan performa instance, lakukan salah satu hal berikut:

  1. Meningkatkan nilai table_open_cache sebesar 500 hingga rekomendasi tidak muncul lagi. Rekomendasi ini diupdate setiap hari, jadi setelah Anda meningkatkan nilai table_open_cache, tunggu selama 24 jam sebelum memeriksanya kembali.

  2. Jika nilai open_tables lebih dari table_open_cache, tingkatkan nilai table_open_cache ke nilai open_tables.

    Untuk mengetahui informasi cara mengupdate flag database, lihat Mengonfigurasi flag database.

Langkah berikutnya