全部产品
Search
文档中心

AnalyticDB:Hasil diagnostik tingkat tahap

更新时间:Jul 02, 2025

AnalyticDB for MySQL menyediakan fitur diagnostik SQL untuk mengumpulkan statistik secara terpisah pada tingkat kueri, tahap, dan operator. Statistik ini digunakan untuk mendiagnosis masalah serta memberikan saran optimasi. Topik ini menjelaskan cara melihat dan menganalisis hasil diagnostik tingkat tahap.

Jenis hasil diagnosis

Catatan Untuk informasi lebih lanjut tentang cara melihat hasil diagnostik tingkat tahap, lihat Lihat Hasil Diagnostik.

Sejumlah besar data disiarkan

  • Masalah

    Penyiaran adalah metode yang digunakan untuk mentransmisikan data dari tahap hulu ke tahap hilir. Untuk informasi lebih lanjut, lihat Jenis Output Data. Jika suatu tahap menyiarkan sejumlah besar data, kueri dapat memakan sebagian besar sumber daya memori maksimum.

  • Saran
    • Pertama-tama, tentukan apakah operasi penyiaran saat ini sudah sesuai. Jika data dalam suatu tahap disiarkan, data siaran tersebut digunakan sebagai tabel kanan dalam join untuk membangun tabel hash di memori. Semakin kecil ukuran tabel kanan, semakin baik. Dalam skenario kueri dengan konkurensi tinggi, metode penyiaran dapat membantu mengurangi koneksi jaringan antar node dan meningkatkan stabilitas keseluruhan sistem. Gambar berikut menunjukkan proses eksekusi jika tabel kecil tidak disiarkan dalam skenario di mana kemiringan data terjadi dalam kondisi join.1

      Jika kemiringan data parah terjadi pada kolom b dari tabel Tsmall dan ketika data dalam tabel Tbig didistribusikan secara merata di seluruh node penyimpanan AnalyticDB for MySQL berdasarkan kolom a, ekor panjang waktu pemrosesan terjadi dalam redistribusi data tabel Tbig, dan ekor panjang juga terjadi ketika tahap hilir melakukan join.

      Gambar berikut menunjukkan proses eksekusi jika data tabel Tbig tidak didistribusikan ulang tetapi tabel Tsmall disiarkan.2

      Gambar di atas menunjukkan bahwa masalah ekor panjang pemrosesan yang disebabkan oleh kemiringan data dapat diselesaikan hanya dengan menyiarkan tabel Tsmall.

    • Dalam beberapa skenario seperti kedaluwarsa statistik, ukuran tabel yang diperkirakan tidak akurat, yang menyebabkan sejumlah besar data disiarkan. Dalam hal ini, Anda dapat menggunakan petunjuk JOIN_DISTRIBUTION_TYPE=repartitioned untuk menonaktifkan fitur penyiaran data.

Kemiringan data terjadi pada input tahap

  • Masalah
    Kemiringan data dapat terjadi pada data input tahap karena alasan berikut:
    • Kolom distribusi yang dipilih saat membuat tabel tidak sesuai. Operator pemindaian data dalam suatu tahap condong saat data sedang dipindai.
    • Kemiringan data terjadi saat data ditransfer melalui jaringan dari tahap hulu ke tahap saat ini.
  • Saran

Kemiringan data terjadi pada output tahap

  • Masalah

    Kemiringan data pada output tahap dapat menyebabkan waktu pemrosesan yang tidak merata dan ekor panjang. Jika pemrosesan tahap hilir kompleks, ekor panjang terjadi saat tahap hilir memproses data. Hal ini memengaruhi kinerja kueri keseluruhan.

  • Saran

    Periksa apakah kemiringan data terjadi pada kolom yang ditampilkan dalam hasil diagnostik. Sebagai contoh, ada sejumlah besar nilai null.