Die Lebenserwartung von SQL Server 2012-Seiten wird nach etwa 50 Tagen auf 0 zurückgesetzt

12

Ich habe auf einem 2-Server-HA-Cluster ein merkwürdiges Verhalten festgestellt und gehofft, dass jemand meinen Verdacht bestätigen oder vielleicht eine andere Erklärung anbieten kann ... Hier ist mein Setup:

  • Eine SQL 2012 SP1-Installation mit zwei Servern
  • SQL AlwaysOn HA wurde für einige Datenbanken aktiviert
  • CPUs sind 2,4 GHz, 4 Kerne
  • RAM ist 34 GB (es ist eine AWS-Instanz, daher die ungerade Zahl)
  • Die Ressourcennutzung ist relativ gering - jeder Server verfügt über mehr als 14 GB freien Speicher und SQL ist nicht auf die zu verwendende Speicherkapazität beschränkt
  • Die Zugriffszeit auf die Festplatte ist in Ordnung - sie überschreitet selten 15 ms / Lese- oder Schreibzugriff
  • Datenbanken sind nicht groß - 1 GB, 1,5 GB, 7,5 GB
  • Der SQL Server-Prozess verwendet 16 GB Private Bytes und 15 GB Working Set

Insgesamt werden keine Ressourcenprobleme festgestellt. Nun zum merkwürdigen Teil. SQL wird nicht neu gestartet (der Prozess wurde fast 6 Monate lang ausgeführt), aber es scheint, dass der Zähler für die Seitenlebenserwartung alle ~ 50 Tage auf (fast) 0 fällt. Bis zu diesem Zeitpunkt steigt er stetig an, keine Tropfen. Hier ist ein perfektes Diagramm:

Bildbeschreibung hier eingeben

Wenn ich mir die Zählerdaten ansehe (ich habe nicht die genaue Zahl, nur eine stündliche Aggregation), scheint der PLE-Zählerwert jedes Mal (zumindest jedes Mal, wenn ich Daten für habe) ungefähr 4.295.000 Sekunden (ungefähr 50 Tage) zu erreichen.

Meine verrückte Theorie ist, dass die PLE-Zahl in Millisekunden als vorzeichenloses Long-Int (mit einem Limit von 4.294.967.295) gehalten wird und nach 49,71 Tagen entweder aufgrund des Designs oder eines Fehlers zurückgesetzt wird. Dies würde das Verhalten der beiden Server und das identische Muster erklären. Oder es könnte etwas völlig anderes sein und ich mache einfach keinen Sinn. :)

Hat jemand so etwas gesehen oder kann er dieses Verhalten erklären?

PS Ich habe diesen Beitrag gesehen, aber mein Fall scheint etwas anders.

PPS Dies ist ein repost - ich ursprünglich geschrieben hier , aber das Publikum war hier beraten , besser geeignet.

Vielen Dank!

CRCerr0r
quelle
Kommentare sind nicht für längere Diskussionen gedacht. Diese Unterhaltung wurde in den Chat verschoben .
Paul White 9

Antworten:

3

Ich habe dieses Verhalten auf einem Client-Standort festgestellt, auf dem SQL2012 SP1 ausgeführt wird. Die Besonderheiten hier waren NUMA und PLE, die ein "Sägezahn" -Muster zeigten, jedoch in einem stündlichen Zyklus.

Einige Threads in SQLServerCentral haben dies behandelt:

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

Das Endergebnis war, dass das Anwenden von SP1 CU4 das Problem zu beheben schien.

CU4 enthält das unschuldig aussehende Update. Für SQL Server 2012 Memory Management KB2845380 ist ein Update verfügbar

Einen Versuch wert?

Kev Riley
quelle
Vielen Dank, dass Sie dies gepostet haben (entschuldigen Sie die verspätete Antwort, aus irgendeinem Grund habe ich nie eine Benachrichtigung über Ihren Beitrag erhalten). Ich habe mir die Links angesehen - sie sehen sich ziemlich ähnlich, also werde ich versuchen, das Setup in QA zu verfälschen, CU4 anzuwenden (oder wahrscheinlich sogar direkt zu SP2 zu wechseln) und es dann erneut zu überprüfen. Bei dem Tempo, das ich sehe (alle 50 Tage), wird es eine Weile dauern, bis ich es bestätigen kann, aber ich werde zurückschicken, wenn ich Ergebnisse habe. Übrigens, meine Muster sind immer noch gültig - stetiger Anstieg für ~ 50 Tage, dann starker Abfall auf ~ 0 und erneuter Anstieg - insgesamt 4 seit Beginn des Dienstes im Dezember.
CRCerr0r
Update ... Ich habe dies in unserer QS-Umgebung bestätigt. Die Statistiken, die ich von dort erhalten habe, sind: Total Days between resets - 49.71 (+/- 1 Minute); Maximaler PLE-Wert erreicht - 4.294.961 (bei 1-minütigen Proben, könnte also etwas höher sein). Das bestätigt ziemlich genau die Produktionsbeobachtungen. Ich werde CU4 anwenden und mich in ~ 50 Tagen wieder melden ... :)
CRCerr0r
1
Gibt es Neuigkeiten zu diesem Thema?
Michael Green