Saat Anda menghapus atau memperbarui data dalam database, data yang disimpan pada disk dapat menjadi tidak berurutan. Hal ini menghasilkan fragmen ruang yang menyia-nyiakan ruang disk dan menurunkan kinerja database. Database Autonomy Service (DAS) mendukung pemulihan fragmen otomatis untuk tabel MySQL yang memenuhi ambang batas tertentu, seperti ukuran tablespace dan tingkat fragmentasi. Pemulihan dilakukan selama Jendela pemeliharaan instans. DAS juga memeriksa beban kerja instans untuk meminimalkan dampak terhadap layanan Anda.
Prasyarat
Layanan Managed Alibaba Cloud diaktifkan untuk instans tersebut.
Instans termasuk salah satu tipe berikut:
RDS for MySQL Edisi Ketersediaan Tinggi, Edisi Perusahaan RDS Tiga Node, atau Edisi Kluster.
MyBase for MySQL Edisi Ketersediaan Tinggi.
Instans telah berjalan selama 14 hari atau lebih.
Instans memiliki setidaknya empat core CPU.
Informasi latar belakang
Fragmen tablespace biasanya terbentuk karena alasan-alasan berikut:
Rekaman dihapus, dan ruang aslinya tidak dapat digunakan kembali.
Rekaman diperbarui, dan ruang aslinya tidak dapat digunakan kembali. Hal ini biasanya terjadi pada bidang dengan panjang variabel.
Penyisipan rekaman menyebabkan pemisahan halaman (page splits), yang mengurangi faktor pengisian halaman.
Batasan
Pemulihan fragmen otomatis hanya didukung untuk tabel yang menggunakan Mesin penyimpanan InnoDB.
CatatanAnda dapat menjalankan pernyataan
SHOW TABLE STATUSatauSHOW TABLE STATUS LIKE 'table_name';untuk memeriksa mesin penyimpanan suatu tabel. Mesin penyimpanan ditentukan dalam bidang Engine pada keluaran.Pemulihan fragmen otomatis hanya didukung untuk tabel dengan ukuran tablespace dalam rentang 5 GB hingga 100 GB.
CatatanJika tablespace lebih kecil dari 5 GB atau lebih besar dari 100 GB, pemulihan fragmen otomatis tidak dilakukan untuk tabel tersebut.
Pemeriksaan pra-optimasi
DAS menjalankan perintah Optimize Table atau Alter Table pada Instans utama untuk memulihkan fragmen tablespace. Sebelum operasi Automatic Fragment Recycling, DAS secara otomatis melakukan pemeriksaan berikut pada database untuk meminimalkan dampak terhadap kinerja dan ruang database. Operasi Automatic Fragment Recycling baru dimulai setelah semua pemeriksaan berhasil dilewati.
Jika salah satu pemeriksaan berikut gagal, operasi Automatic Fragment Recycling pada tabel yang bersangkutan akan segera dihentikan.
Ruang tersedia pada instans minimal tiga kali lipat dari ruang fisik tabel yang akan dipulihkan.
CatatanSebagai contoh, untuk memulihkan fragmen pada Tabel_1 yang menempati ruang fisik 30 GB, database harus memiliki setidaknya 90 GB ruang kosong.
Tabel tidak memiliki indeks teks penuh (FULLTEXT).
Jika suatu pemeriksaan gagal, DAS menunggu 1 hingga 5 menit lalu menjalankannya kembali. Jika pemeriksaan tidak berhasil dalam Jendela pemeliharaan, DAS akan mencoba lagi selama Jendela pemeliharaan berikutnya. Setelah pemeriksaan berhasil, DAS melakukan Automatic Fragment Recycling.
Tidak ada Pekerjaan cadangan yang sedang berjalan pada instans.
Tidak ada operasi evolusi skema yang sedang berlangsung.
DAS memeriksa utilisasi CPU instans dan memperkirakan waktu yang dibutuhkan untuk Automatic Fragment Recycling. DAS memverifikasi bahwa utilisasi CPU kurang dari 70% pada periode waktu yang sama pada hari sebelumnya dan minggu sebelumnya, serta utilisasi CPU kurang dari 80% tepat sebelum operasi dimulai.
CatatanSebagai contoh, jika suatu tabel menempati ruang fisik 90 GB dan pemulihan fragmen diperkirakan memakan waktu 30 menit serta dijadwalkan mulai pukul 03.00 pada 10 Desember, kondisi-kondisi berikut harus terpenuhi:
Utilisasi CPU dari pukul 03.00 hingga 03.30 pada 9 Desember 2020 harus kurang dari 70%.
Utilisasi CPU dari pukul 03.00 hingga 03.30 pada 3 Desember 2020 harus kurang dari 70%.
Utilisasi CPU pada pukul 03.00 pada 10 Desember 2020 harus kurang dari 80%.
Tidak ada Pernyataan SQL yang membutuhkan waktu eksekusi lebih dari 3 detik yang sedang berjalan pada tabel target.
Tidak ada transaksi yang tertunda. Transaksi tertunda adalah transaksi yang memegang kunci tetapi belum dikomit selama lebih dari 15 detik.
Jumlah sesi aktif pada instans kurang dari 64.
Jika pemeriksaan gagal, Anda tidak dapat menggunakan fitur Automatic Fragment Recycling. Anda dapat memulihkan fragmen tablespace dengan menjalankan perintah OPTIMIZE TABLE secara manual. Untuk informasi selengkapnya, lihat Gunakan perintah OPTIMIZE TABLE untuk melepaskan tablespace instans MySQL.
Mengaktifkan pemulihan fragmen otomatis
Masuk ke Konsol DAS.
Di panel navigasi sebelah kiri, klik Operation Center > Instance Monitoring.
Temukan instans target, klik ID instans, lalu buka halaman detail instans.
Di panel navigasi sebelah kiri, klik Autonomy Center.
Pada halaman Autonomy Center, klik Autonomy Service Settings di sebelah kanan.
Pada tab , aktifkan sakelar fitur otonomi.
Pada tab Optimization and Throttling, pilih Automatic Fragment Recycling dan konfigurasikan parameter berikut.
PentingKetika Penggunaan penyimpanan Instansiasi basis data memenuhi ambang batas yang ditentukan, DAS secara otomatis memulihkan fragmen ruang selama Maintenance Window instans.
Parameter
Deskripsi
Tablespace
Ukuran minimum tablespace dari satu tabel fisik yang memicu pemulihan fragmen otomatis. Nilainya harus berada dalam rentang 5 GB hingga 100 GB. Nilai default adalah 10 GB.
Jika satu tablespace terlalu besar, pemulihan dapat memakan waktu lama. Pilih nilai sesuai kebutuhan.
CatatanJika tablespace semua tabel dalam Instansiasi basis data lebih kecil dari 5 GB atau lebih besar dari 100 GB, sistem tidak akan melakukan pemulihan fragmen ruang.
Fragmentation Rate
Tingkat fragmentasi dari satu tabel fisik yang memicu pemulihan fragmen otomatis. Nilainya harus berada dalam rentang 10% hingga 99%. Nilai default adalah 20%.
Tingkat fragmentasi yang tinggi mengurangi frekuensi optimasi ruang. Pilih nilai sesuai kebutuhan.
CatatanJika tingkat fragmentasi semua tabel dalam Instansiasi basis data lebih rendah dari 10%, sistem tidak akan melakukan pemulihan fragmen ruang.
CatatanSebagai contoh, jika Anda mengatur Tablespace menjadi 5 GB dan Fragmentation Rate menjadi 10%, pemulihan fragmen otomatis akan dipicu untuk semua tabel dengan ukuran tablespace antara 5 GB hingga 100 GB dan tingkat fragmentasi minimal 10%.
Klik OK.
Opsi: Klik Event Subscription Settings untuk mengonfigurasi notifikasi event untuk pemulihan fragmen otomatis. Untuk informasi selengkapnya, lihat Aktifkan fitur langganan event.
Konfigurasikan Alert Template untuk berlangganan peringatan mengenai status pemulihan fragmen otomatis pada Instansiasi basis data Anda.
Sistem merekomendasikan templat peringatan dan menambahkan aturan peringatan untuk event otonomi yang sesuai. Anda dapat mengikuti petunjuk untuk menyelesaikan konfigurasi.
CatatanJika Anda telah mengonfigurasi templat peringatan untuk instans tersebut, tambahkan aturan peringatan untuk event otonomi yang sesuai ke dalam templat tersebut sesuai petunjuk.
Untuk mengonfigurasi templat peringatan dan aturan peringatan sendiri, lihat Konfigurasikan templat peringatan dan Konfigurasikan aturan peringatan.
Anda dapat memilih Alert Contact Group untuk menerima Notifikasi.
Klik Add Contact untuk membuat kontak peringatan.
Klik Create Contact Group untuk membuat kelompok kontak peringatan.
Temukan kontak tersebut dan klik Edit untuk mengubahnya atau Remove untuk menghapusnya.
Untuk informasi selengkapnya, lihat Kelola kontak peringatan.
Klik Submit Configuration dan konfirmasi konfigurasi peringatan di kotak dialog.
Referensi
Jika ruang penyimpanan Instansiasi basis data Anda tidak mencukupi, Anda dapat melakukan operasi berikut:
Gunakan Storage Analysis untuk melihat Penggunaan penyimpanan Instansiasi basis data dan mengidentifikasi masalah penyimpanan.
Aktifkan Automatic Space Expansion. Jika ruang penyimpanan Instansiasi basis data menjadi tidak mencukupi, ruang penyimpanan akan diperluas secara otomatis untuk memastikan stabilitas layanan.
API Terkait
API | Deskripsi |
Mengonfigurasi parameter fitur pemulihan fragmen otomatis untuk beberapa Instansiasi basis data secara asinkron. | |
Menanyakan aturan pemulihan fragmen otomatis dari Instansiasi basis data tertentu. | |
Menonaktifkan fitur pemulihan fragmen otomatis untuk beberapa Instansiasi basis data secara batch. |