Memóriaoptimalizált rendszerverziójú temporális tábla teljesítménye

A következőkre vonatkozik: Sql Server 2016 (13.x) és újabb verziók felügyelt Azure SQL-példány

Ez a cikk konkrét teljesítményszempontokat tárgyal, amikor rendszerverzióban optimalizált memóriaoptimalizált időbeli táblákat használsz.

Ha rendszerverziót ad hozzá egy meglévő, nem időleges táblához, teljesítménybeli hatást gyakorol a frissítési és törlési műveletekre, mert az előzménytáblát automatikusan frissítik.

Teljesítménnyel kapcsolatos szempontok

Minden frissítés és törlés egy belső memóriaoptimalizált előzménytáblában lesz rögzítve. Váratlan memóriafogyasztást tapasztalhatsz, ha a munkaterhelésed sokat használja ezeket a két műveletet. Vegye figyelembe a következőket:

  • Egyetlen lépésben ne végezzen tömeges törléseket az aktuális táblából. Fontolja meg az adatok több kötegben való törlését, a kötegek között manuálisan kezdeményezett adatkiürítéssel a sp_xtp_flush_temporal_history használatával, vagy SYSTEM_VERSIONING = OFF közben.

  • Ne végezz egyszerre hatalmas táblafrissítéseket, mert kétszer annyi memóriát használhat, amennyi egy nem időbeli memóriaoptimalizált tábla frissítéséhez szükséges. Ez a kétszeres memóriahasználat ideiglenes, mivel az adatöblítési feladat rendszeresen működik, hogy a belső átmeneti táblák memóriahasználata az előrejelzett határokon belül maradjon állandó állapotban. A határ az aktuális időbeli táblázat memóriahasználatának 10 százaléka. Fontolja meg, hogy a tömeges frissítéseket több szakaszban vagy a SYSTEM_VERSIONING = OFFsorán végezze, például frissítéseket használva az újonnan hozzáadott oszlopok alapértelmezett értékeinek beállításához.

Az adatöblítési feladat aktiválási időszaka nem konfigurálható, de szükség szerint manuálisan is végrehajthatja sp_xtp_flush_temporal_history.

Fontold meg a klaszteres columnstore-t tárolási lehetőségként egy lemezalapú történettáblához, különösen, ha analitikai lekérdezéseket tervezel történelmi adatokon futtatni, amelyek aggregált vagy ablakos funkciókat használnak. Ebben az esetben a fürtözött oszlopcentrikus index optimális választás az előzménytáblához. A fürtözött oszlopcentrikus indexek jó adattömörítést biztosítanak, és beszúrásbarát viselkednek, igazodva az előzményadatok létrehozásának módjához.