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.