SQL Server 2012 Page Life Expectancy ulang ke 0 setelah sekitar 50 hari

12

Saya telah melihat perilaku aneh pada kluster HA 2-server dan saya berharap seseorang dapat mengkonfirmasi kecurigaan saya, atau mungkin menawarkan beberapa penjelasan lain ... Ini adalah pengaturan saya:

  • Instalasi 2-server SQL 2012 SP1
  • SQL AlwaysOn HA telah diaktifkan untuk beberapa database
  • CPU-nya adalah 2,4GHz, 4 core
  • RAM adalah 34 GB (ini adalah contoh AWS, karenanya angka ganjil)
  • Pemanfaatan sumber daya relatif rendah - setiap server memiliki memori 14+ GB gratis, dan SQL tidak dibatasi pada berapa banyak memori yang digunakan
  • Waktu akses disk baik-baik saja - jarang melebihi 15 ms / Baca atau Tulis
  • Database tidak besar - 1 GB, 1,5 GB, 7,5 GB
  • Proses SQL server menggunakan 16 GB Private Bytes, 15 GB Working Set

Secara keseluruhan, tidak ada masalah sumber daya yang dicatat. Sekarang untuk bagian yang aneh. SQL tidak dimulai kembali (proses telah berjalan selama hampir 6 bulan) tetapi tampaknya setiap ~ 50 hari, penghitung Page Life Expectancy turun menjadi (hampir) 0. Hingga saat itu ia terus naik, tidak ada tetes. Berikut adalah grafik perf:

masukkan deskripsi gambar di sini

Ketika saya melihat data penghitung (saya tidak memiliki angka pastinya, hanya agregasi per jam) tampaknya nilai penghitung PLE mencapai sekitar 4.295.000 detik (kira-kira 50 hari) setiap waktu (setidaknya setiap kali saya memiliki data).

Teori gila saya adalah bahwa nomor PLE disimpan dalam milidetik sebagai int panjang yang tidak ditandatangani (yang memiliki batas 4.294.967.295) dan pada 49,71 hari ia me-reset, baik dengan desain, atau karena bug. Ini akan menjelaskan perilaku dua server dan pola identik yang mereka miliki. Atau bisa jadi sesuatu yang sama sekali berbeda dan saya tidak masuk akal. :)

Adakah yang melihat sesuatu seperti itu, atau dapat menjelaskan perilaku ini?

PS Saya melihat posting ini , tetapi kasus saya tampaknya sedikit berbeda.

PPS Ini adalah repost - Saya awalnya mempostingnya di sini , tetapi disarankan audiens di sini lebih tepat.

Terima kasih!

CRCerr0r
sumber
Komentar bukan untuk diskusi panjang; percakapan ini telah dipindahkan ke obrolan .
Paul White 9

Jawaban:

3

Saya telah melihat perilaku ini di situs klien yang menjalankan SQL2012 SP1. Spesifik di sini adalah NUMA, dan PLE menunjukkan pola 'gigi gergaji' tetapi pada siklus per jam.

Beberapa utas tentang SQLServerCentral membahas tentang ini:

http://www.sqlservercentral.com/Forums/Topic1415833-2799-1.aspx http://www.sqlservercentral.com/Forums/Topic1424826-2799-1.aspx

hasil akhirnya adalah bahwa menerapkan SP1 CU4 tampaknya memperbaiki masalah.

CU4 berisi perbaikan yang tampak tidak bersalah Pembaruan tersedia untuk SQL Server 2012 Memory Management KB2845380

Layak dicoba?

Kev Riley
sumber
Terima kasih telah memposting ini (maaf untuk balasan yang tertunda, karena alasan tertentu saya tidak pernah mendapat pemberitahuan tentang posting Anda). Saya melihat pada tautan - tautannya terlihat agak mirip, jadi saya akan mencoba menduplikasi pengaturan di QA, menerapkan CU4 (atau bahkan mungkin langsung ke SP2), lalu periksa lagi. Dengan kecepatan yang saya lihat ini (setiap 50 hari) akan butuh waktu sebelum saya dapat mengonfirmasi, tetapi saya akan memposting kembali ketika saya memiliki hasil. BTW, pola saya masih bertahan - pendakian stabil selama ~ 50 hari, kemudian turun tajam hingga ~ 0, dan pendakian kembali - total 4 sejak layanan dimulai pada bulan Desember.
CRCerr0r
Perbarui ... Saya telah mengkonfirmasi ini di lingkungan QA kami. Statistik yang saya dapat dari sana adalah: Total Hari antara reset - 49,71 (+/- 1 menit); Nilai Max PLE mencapai - 4.294.961 (pada sampel 1 menit, sehingga bisa sedikit lebih tinggi). Itu cukup banyak menegaskan pengamatan produksi. Saya akan menerapkan CU4 dan melaporkan kembali dalam ~ 50 hari ... :)
CRCerr0r
1
Ada berita tentang ini?
Michael Green