SQL Server változáskövetés valós idejű SQL Server replikációhoz

mi az SQL Server változáskövetés?

az SQL Server Változáskövetése a Microsoft SQL Server adatbázisában végrehajtott összes módosítás rögzítésének egyik módja. A megadott időablakban készült táblák bármelyikének beillesztése, frissítése vagy törlése rögzítésre kerül. Ez az információ az SQL Server replikációs céljaira áll rendelkezésre. Az SQL Change Tracking beolvassa a tranzakciós naplókat, hogy megtalálja az adatok változásait, és rögzíti a változásokat a könnyű használat érdekében. Ez egy extrém könnyű mechanizmus, amely rögzíti a növekményes változásokat egy megadott ablakban. Ismerje meg az SQL Server CDC és az Oracle CDC

az SQL Change Tracking az SQL Server replikáció szerves része

amikor az adatokat SQL Server-adatbázisból kell átvinni vagy replikálni az adattavakba vagy az adattárházakba, az SQL Change Tracking funkció különösen hasznos, mivel segít a növekményes adatok hatékony replikálásában, így az adattó/ raktár mindig naprakész, és központosított hely a különböző SQL Server-tárolókból származó adatokhoz való hozzáféréshez.

az SQL Server a Microsoft által kifejlesztett relációs adatbázis-kezelő rendszer. Elsődleges feladata az adatok hatékony tárolása és visszakeresése, és általában az alkalmazások használják az adatok tárolására és visszakeresésére. Az SQL Server 2008-as verziói támogatják a változáskövetési funkciókat.

SQL Server változáskövetés – megjegyzés:

  • az SQL Server összes kiadása támogatja ezt a funkciót
  • engedélyeznie kell a Változáskövetést az adatbázis szintjén és a táblázat szintjén az összes nyomon követendő táblához
  • a tábláknak rendelkezniük kell az adatbázisban meghatározott elsődleges kulccsal

ezeket a lépéseket az alábbiakban részletesen ismertetjük:

a változáskövetés engedélyezéséhez

alter database databasename
set change_tracking = be
(change_retention = 7 nap, auto_cleanup = be)

például:

ALTER DATABASE Adventureworks2019
állítsa be a CHANGE_TRACKING = be
(CHANGE_RETENTION = 7 nap, AUTO_CLEANUP = be)

a táblázat szintjén:

használja a <databasename>
GO
ALTER TABLE table name
ENABLE change_tracking
with (TRACK_COLUMNS_UPDATED = on);

például:

ADVENTUREWORKS2019 használata
go
Alter Table dimcustomer
change_tracking engedélyezése
with (track_columns_updated = on);

change a követés engedélyezve van az adatbázis szintjén

válassza a *
lehetőséget a SYS-ből.change_tracking_databases
ahol database_id = DB_ID (‘databasename’);

például:

válassza a *
lehetőséget a sys-ből.change_tracking_databases
ahol database_id = DB_ID (‘Adventureworks2019’);

eredmények:

ellenőrizze, hogy a változáskövetés engedélyezve van-e a táblázat szintjén

adatbázisnév használata;
SELECT sys.schemas.name mint schema_name, sys.tables.name mint table_name
a sys-től.change_tracking_tables
csatlakozzon a sys-hez.táblázatok sys.asztalok.object_id = sys.change_tracking_tables.object_id
csatlakozzon a sys-hez.sémák a sys – en.sémák.schema_id = sys.asztalok.schema_id;

például:

használja Adventureworks2019;
válasszon sys.schemas.name mint schema_name, sys.tables.name mint table_name
a sys-től.change_tracking_tables
csatlakozzon a sys-hez.táblázatok sys.asztalok.object_id = sys.change_tracking_tables.object_id
csatlakozzon a sys-hez.sémák a sys – en.sémák.schema_id = sys.asztalok.schema_id;

eredmények:

SQL Server változáskövetés: előnyök és hátrányok

  • a táblának elsődleges kulcsot kell megadnia. A változáskövetés nem alkalmazható elsődleges kulcs nélküli táblákra.

előnyök

  • rendkívül könnyű megoldás, a változáskövetés a legtöbb esetben nagyon hasznos.
  • az SQL Server összes kiadása támogatja, így ez egy nagyon sokoldalú megoldás.

SQL Server változáskövetési korlátozások vagy kihívások egyéni kódolással

  • bár a natív SQL Server változáskövetési funkció segít a változások rögzítésében, jelentős kódolást kell elvégezni, hogy rögzítse ezeket a változásokat, és felhasználja őket az SQL replikációhoz egy adattárházba vagy Adattavba.
  • nem csak a megbízhatóságról és a robusztusságról kell gondoskodni, hanem a folyamatos karbantartásról, az adatokkal kapcsolatos problémákról, valamint az új táblák és adattípusok kezeléséről is.
  • a riasztási és felügyeleti megoldást kézzel kell kódolni, és ha megnézzük a különböző komponenseket, amelyek szükségesek ahhoz, hogy ez működjön, a kézzel kódolt megoldás nem kínál gyors időt az értékelésre, és költséges lehet A fejlesztése és karbantartása.

a No Code, automatizált módon, hogy rögzítse változások SQL Server segítségével BryteFlow

  • BryteFlow egy GUI alapú eszköz, amely segít, hogy rögzítse a változásokat SQL Server változáskövetés és számos más mechanizmusok. További információ a megoldásról
  • ez egy kód nélküli módszer az adatok átvitelére különböző adattárházakba és adattavakba
  • automatikusan létrehozza a sémákat a célponton az optimális adattípusokkal, és megvalósítja a cél legjobb gyakorlatait
  • a célpontra replikált adatok automatikusan tárolhatók az SCD type 2 előzményekkel, ha konfigurálva van
  • automatizált, kifinomult adategyeztetés-ez egy másik vállalati szintű szolgáltatás, amelyet általában nem kínálnak a piacon
  • a bryteflow vállalati szintű SQL Server replikációt és vízálló biztonságot kínál létesítmények a helyszínen, a felhőben vagy hibrid megközelítést alkalmazva.

következtetés

a kódolás-intenzív megközelítéssel ellentétben egyszerű, valós idejű SQL Server replikációt kínálunk Változáskövetéssel a BryteFlow használatával. Csak mutasson és kattintson a beállításra. Sokszorosítani nagy mennyiségű adat könnyen párhuzamos menetes kezdeti szinkronizálás és particionálás, majd delta sync. A táblázatok automatikusan létrejönnek az adatok felhelyezésével vagy az SCD Type 2 előzményekkel. A használt SQL Server verziónak vagy kiadásnak megfelelő többszörös adatrögzítési beállításokat kap (az összes verzió/kiadás támogatott). Készüljön fel az adatok felhasználására a rendeltetési helyen, legyen az S3, Redshift, Snowflake, Azure Synapse vagy SQL Server.

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.