Seriál o replikaci na SQL Serveru 2012 – I. díl

Prvním dílem začíná další seriál o technologiích dostupných v SQL Serveru, tentokráte se zaměřením na replikace.

Existují tři základní druhy replikací, a všechny mají stejný cíl. Tímto cílem je duplikace dat. Nejčastěji vytváříme další kopii dat pro reporting, zálohu, ale může být využíta i pro tzv. scale-out scénář pro zvýšení výkonu. Kopie dat může být vytvořena ve stejné databázi, na stejném serveru nebo klidně ve vzdáleném datacentru. Kopie dat mohou být synchronizovány v daných intervalech, nebo udržovány v neustálé synchronizaci. Máme možnost zvolit a konfigurovat replikaci jako jednosměrnou, z jednoho serveru na druhý, nebo i obousměrnou pro přenos a synchronizaci z obou serverů.

Druhy replikací

Každý druh replikace, který je dostupný, se hodí pro odlišné scénáře. Mezi hlavní kritéria pro volbu jednotlivých možností patří frekvence změn, množství změn, velikost publikace, zdroj změny dat, ale také například latence mezi jednotlivými servery a dostupná konektivita atd.

Snapshot replikace

Snapshot replikace funguje samostaně, ale je také základem pro další dva druhy replikací a to transakční a merge replikaci, které ze snapshotu vycházejí. Při snapshot replikaci musí snapshot agent podle rozvrhu vždy vytvořit kopii replikovaných objektů (jednotlivé databázové objekty jako tabulky, pohledy atd) a tyto uložit do snapshot adresáře, do kterého mají přístup další účastníci replikace. Každý snapshot vzniká vždy na novo, je tedy náročný na systémové prostředky – čas, úložiště, procesor.

Transakční replikace

Před samotným využitím transakční replikace je nutné synchronizovat datový zdroj (objekty, schéma a dataset) s cílovým serverem pomocí prvotního snapshotu. Jakmile snapshot agent vytvoří první snapshot je nutné jej pomocí distribučního agenta přenést na synchronizované servery. Následně jsou přenášeny všechny na subscriber server všechny změny, které jsou provedené na zdrojovém serveru.

Merge replikace

Stejně jako transakční replikace i merge replikace začíná úvodním snapshotem. Následně mohou být data měněna jak na publisher, tak na subscriber serveru. Publisher server je server, který nabízí data (publikaci) pro replikace. Subscriber je server, který tuto publikaci konzumuje a na který jsou data replikována. Tuto dvojici serverů ještě doplňuje distributor, což je server, který se stará o distribuci publikací z publisher serveru na subcriber servery. Protože u merge replikace je možné data měnit jak na publisher tak na subscriber serveru a tyto změny navzájem mezi oběma rolemi replikovat, dochází zde k problémům. Je nutné vyřešit tzv. konflikt, kdy změna např. jednoho řádku v tabulce může zároveň nastat jak na straně publisher serveru, tak na straně subscriber serveru. Pro tyto případy je merge replikace vybavena mechanismy na řešení konfiktů.

Co nabídne Enterprise edice

Co se jednotlivých možností týče z licenčního hlediska, tak všechny tři druhy replikací jsou běžně dostupné v rámci edicí Standard, Business Intelligence a Enterprise. U nižších edicí je zpravidla možné konfigurovat server jako subscriber roli. Výjimku tvoří 2 funkce, které jsou dostupné pouze u edice Enterprise a to Oracle publishing, které dovoluje replikovat data z Oracle serverů. Do budoucna se dále s touto funkcionalitou však nepočítá. Pro jakékoli synchronizace v rámci nehomogenního prostředí je doporučováno SSIS řešení. Druhou funkcí dostupnou pouze u Enterprise edice je tzv. Peer to Peer transakční replikace. Jedná se o řešení nabízející vysokou škálovatelnost a vysokou dostupnost, zejména u přístupu k datům pro čtení. Data jsou synchronizována mezi několika servery a díky tomu je možné jednotlivé požadavky klientů rozdělit mezi několik nodů a tím dosáhnout vyššího výkonu aplikace.

Snapshot Replikace

Snapshot replikace může fungovat zcela samostatně, ale je také základem pro další druhy replikací. Při tvorbě snapshotu dochází ke kopii databázových objektů, dle nastavení publikace. Pokud chceme vytvořit publikaci pro replikaci, musíme v management studiu použív volbu New Publication. SQL umí vytvořit i publikaci pro Oracle servery, je tedy možné data synchronizovat i napříč platformami.

Klepněte pro větší obrázek

Po zvolení položky New publication je nutné vybrat databázi, ze které budeme replikovat data a jednotlivé objekty (tabulky, pohledy, funkce, procedury atd). U tabulek je následně možné provést vertikální a horizontální filtering, můžeme si tedy zvolit publikované sloupce a řádky, které bude možné replikovat na další servery. Po nastavení parametrů pro zabezpečení je publikace hotová a snapshot replikace připravená.

Klepněte pro větší obrázek

U vytvořené publikace je k dispozici celá škála konfiguračních parametrů, od nastavení expirace snapshotu, přes zabezpečení, možnosti uložit snapshot na FTP server a mnoho jiných.

Klepněte pro větší obrázek

Důležitou volbou, která byla v průběhu konfigurace replikace k dispozici je volba tzv. distribučního serveru. Tato konfigurace je i dostupná přímo přes management studio.

Klepněte pro větší obrázek

Distribuční server hraje klíčovou roli při přenosu dat. Na distribučním serveru jsou uložena data, která jsou připravena pro jednotlivé subscriber servery. Jedna z úloh v SQL Agentovi, která je odpovědná za vytváření snapshotů je ukládá přímo na distribuční server. Pro malé scénáře je publishing a distribuční server jeden a ten stejný, ale pro komplexní konfigurace je možné tyto role od sebe navzájem oddělit a tím také lépe hlídat zátěž na jednotlivých serverech (rolích v replikaci). Na distribučním serveru je v SQL Agentovi připravená další plánovaná úloha, která má za úkol přenést data z distribučního serveru na všechny subscriber servery. Subscriber server role je cílový server, na který replikujeme data.

Při konfiguraci subscriber serveru potřebujeme zvolit publikaci na publikačním serveru, kterou chceme na tento server replikovat.

Klepněte pro větší obrázek

Tato publikace obsahuje námi vybrané objekty z publisher serveru, tedy tabulky, pohledy, procedury, funkce, indexované pohledy atd. Jakmile vybereme cílovou databázi (máme možnost vytvořit novou přímo z konfigurace subscription)a nastavíme zabezpečení replikace, máme skoro hotovo. Snapshot replikace je plánována na zvolený interval. Všechny změny budou tedy promítnuty do cílové databáze až po uplynutí intervalu, který si zvolíme. Protože snapshot replikace zpravidla dosahuje větších velikostí je vhodné ji plánovat na takovou denní dobu, kdy jsou naše servery co nejméně zatíženy, a také kdy konektivita mezi našimi servery je dostatečná na rychlý přenost těchto dat. Každý další snapshot vždy přenáší celou publikaci (tedy zvolené objekty v databázi) nezávisle na faktu, jestli byla data od poslední tvorby snapshotu změněna, či nikoli.

Závěrem

Cílem prvního dílu bylo představit základní pojmy z oblasti replikací a popsat rozdíly mezi třemi dostupnými druhy replikací. Protože snapshot replikace je základem všech dalších replikací, ukázali jsme si základní nastavení a možnosti vytvoření publikace, subscription a možnosti distribution serveru. V dalších dílech tohoto seriálu si společně detailně představíme zbývající replikace, včetně jejich dalších nastavení.

Autor: Marek Chmel, MVP

Články ze série Microsoft TechNet nevytváří redakce Živě.cz, ale partneři programu Microsoft TechNet. Jsou publikovány v rámci mediálního partnerství Živě.cz a společnosti Microsoft.

Váš názor Další článek: Jak nejlépe zabezpečit webové stránky

Témata článku: Microsoft, Rychlý přenos, Cílový server, Jimi, SQL, Díl, Ono, Jednotlivý díl, Důležitý sloupec, Základní konfigurace, Duplikace, Stejný cíl, Seriál, Subscriber, Stejné parametry, Stejná úloha, Server, Dostatečná změna, Datový zdroj, Dostupné funkce, Dostupná konektivita, Replika


Určitě si přečtěte

Acer Swift 7: Notebook tenký jako mikrotužková baterie

Acer Swift 7: Notebook tenký jako mikrotužková baterie

** Celý notebook včetně displeje se vejde pod 9 mm ** Výkon stačí pro kancelář, ale porazí ho stroje za třetinu ceny ** Ještě tenčí než předchozí generace, ale už ne tolik kompromisů

Tomáš Holčík | 34

Portál občana už funguje. Na státní web vypadá až překvapivě použitelně

Portál občana už funguje. Na státní web vypadá až překvapivě použitelně

** Portál občana už funguje, vyřídíte na něm první požadavky ** Funkce se budou postupně rozšiřovat ** Web je docela moderní a přehledný

David Polesný | 66

Odposlouchávali jsme děravou domácnost: Katka z Brightonu právě sedí doma, zatímco její manžel hraje asi golf

Odposlouchávali jsme děravou domácnost: Katka z Brightonu právě sedí doma, zatímco její manžel hraje asi golf

** Na internetu jsou tisíce nezabezpečených chytrých domácností ** Podívali jsme se na jednu z britského Brightonu ** Útočník sestaví kompletní socioekonomický profil rodiny

Jakub Čížek | 31

Američtí mariňáci si tisknou kasárna z betonu na 3D tiskárně

Američtí mariňáci si tisknou kasárna z betonu na 3D tiskárně

** Americká námořní pěchota nedávno představila 3D tištěná kasárna pro vojáky ** Ty jim tiskne velká 3D tiskárna na beton ** Výsledkem je solidní obytný prostor, který je slušně chráněný před nepřátelskou palbou

Stanislav Mihulka | 18

Lenovo přivezlo na IFA 2018 skutečné inovace. Tyto tři notebooky stojí za to

Lenovo přivezlo na IFA 2018 skutečné inovace. Tyto tři notebooky stojí za to

** Yoga C930 nabídne revoluční reproduktor v kloubu displeje ** Yoga Book C930 představuje zdařilý reparát podivného Yoga Booku ** ThinkPad X1 Extreme se může pochlubit extrémní výbavou v tenkém těle

Tomáš Holčík | 16

Vyzkoušeli jsme eObčanku a přihlásili se s ní na weby úřadů. Vážně to funguje!

Vyzkoušeli jsme eObčanku a přihlásili se s ní na weby úřadů. Vážně to funguje!

** Máme eObčanku, máme čtečku, vyzkoušeli jsme přihlášení na weby úřadů. ** Objevily se drobné problémy, podařilo se nám je vyřešit. ** Používání eObčanky pro online identifikaci je velmi pohodlné.

Marek Lutonský | 35

Co je srdce nového iPhonu? Apple A12 Bionic, první 7nm čip nabitý výkonem

Co je srdce nového iPhonu? Apple A12 Bionic, první 7nm čip nabitý výkonem

** Apple v nových iPhonech používá nový vlastní čip A12 Bionic ** Jde o první 7nm čip na světě ** Kromě vyššího klasického výkonu dostala neuronová část masivní navýšení rychlosti zpracování umělé inteligence

Karel Javůrek | 38


Aktuální číslo časopisu Computer

Megatest: 13 grafických karet

Srovnání 7 dokovacích stanic s USB-C

Jak na perfektní noční fotografie

Kvalitní zdroje informací pro sebevzdělávání