Sybase Replication Server Homepage Sybase Slovensko
Zhrnutie
Replikačný server Sybase je vedúcou technológiou na trhu, ktorá umožňuje uľahčiť tvorbu aplikácií v distribuovanom prostredí. Vytvorením užitočnej nadbytočnosti sa zabezpečí, že dotazy a transakcie sa vykonávajú vždy lokálne a nemusia cez sieť WAN pristupovať ku vzdialeným databázam. Replikačný server zabezpečuje synchrónnosť databáz transparentne pre aplikácie. Je to riešenie, ktoré zvyšuje spoľahlivosť systému - odolnosť voči výpadkom časti systému. Replikácia rešpektuje transakčnú integritu dát a zaručuje obnovu konzistentnosti dát aj po výpadkoch spojenia, či časti systému. Používa sa u viac ako 6000 zákazníkom po celom svete, pričom mnohí z nich využívajú replikáciu nielen pre zdroje dát Sybase, ale aj pre heterogénne prostredia, dokonca bez Sybase SQL Servera.

Úvod
V súčasnosti veľké množstvo organizácií zvyšuje decentralizáciu svojej štruktúry: obchodné organizácie, organizácie poskytujúce služby apod. Tým sa zväčšuje počet vzdialených podriadených jednotiek. Zvyšuje to flexibilitu a efektívnosť organizácie, ale zároveň aj prináša nové otázky, predovšetkým akým spôsobom sa majú informačné systémy distribuovať na podriadené štruktúry. Je dôležité, aby sa zabezpečila spoločná výmena informácií, ale aj pokrytie špecifických potrieb jednotiek. Vyžadujú sa nové nástroje, ktoré by zjednodušili a zlacnili takéto distribuované prostredia a boli schopné sa prispôsobiť zmene okolností.

Alternatívy riešenia
Centralizované riešenia narážajú na otázku vysokej ceny a poruchovosti on-line prepojenia. Tiež nedávajú podriadeným jednotkám dostatočný priestor pre reagovanie na novovznikajúce potreby, ktoré sú pre ne špecifické.
Distribuované databázy využívajúce dvojfázové potvrdzovanie (commit) vyžadujú on-line prepojenie, a na nefunkčnosť systému stačí vypadnutie jedného uzlu. Komplexnosť aplikácií v takomto prostredí rastie geometricky s počtom uzlov. Pri potrebe dotazov nad dátami, ktoré sú umiestnené na rôznych serveroch, sa naráža na vážne výkonnostné problémy.
Replikačný server Sybase je produkt, ktorý umožňuje zásadným spôsobom zmeniť filozofiu budovania distribuovaných informačných systémov, lebo umožňuje vytvoriť užitočnú redundanciu (nadbytočnosť) dát na jednotlivých databázových serveroch systému. Tým má každá jednotka svoje lokálne dáta, ako aj lokálnu repliku dát iných jednotiek, či centrály, ktoré potrebuje pre svoju činnosť.
Synchronizáciu v takmer reálnom čase, ako aj obnovenie synchrónnosti dát po výpadku časti systému, zabezpečuje Replikačný server spôsobom, ktorý je pre aplikácie neviditeľný. Poskytuje veľmi vysokú flexibilitu pri prepájaní vzdialených ale aj heterogénnych databáz. Hlavnou výhodou riešenia s Replikačným serverom je práve nezávislosť aplikácií od konkrétneho prepojenia systému, dokonca od rozdielnosti štruktúry databáz, dátových formátov a pomenovacích konvencií podriadených jednotiek. Významná je aj úspora komunikačných nákladov a zvýšenie spoľahlivosti systému.


Funkcia Replikačného servera
Hlavným znakom riešení, založených na metóde “snapshotov“ je, že nemôžu zaručiť transakčnú integritu dát. Sú iba viac-menej prepracovanou metódou kopírovania dát z jedného miesta na druhé, ktoré nerešpektuje integritu dát a transakcií. Cieľom Replikačného servera je odchytiť transakcie na primárnom dátovom zdroji a zaistiť ich vykonanie na cieľových databázových serveroch so zachovaním transakčnej integrity. V súčasnej dobe je v prevádzke niekoľko tisícok rozsiahlych informačných systémov využívajúcich Replikačný server Sybase, ktorý dnes predstavuje overenú a spoľahlivú technológiu používanú už niekoľko rokov.

    Základné vlastnosti Replikačného servera možno zhrnúť do nasledujúcich bodov:
  • metóda asynchrónnej dynamickej replikácie
  • zaistenie konzistencie replikovaného systému za všetkých okolností
  • automatická synchronizácia zmien vykonávaných v replikovaných dátach pomocou asynchrónneho volania procedúr (APC)
  • schopnosť automatického riešenia kolízií (autocorrection option)
  • ožnosť replikácie na báze užívateľsky definovaných funkcií
  • vytváranie integrovaných replikačných systémov
  • otvorenosť voči databázovým systémom iných dodávateľov


Metóda asynchrónnej dynamickej replikácie
Replikačný server sa v skutočnosti skladá z dvoch komponent. Prvá z nich je tzv. Replikačný agent, zvláštny proces určený k monitorovaniu transakčného logu databázy, odovzdávajúcej dáta a transakcie odpovedajúce replikačnému predpisu distribučnému serveru, ktorý zaistí ich rozoslanie na miesta určenia. Vlastný databázový server aj obe komponenty pritom môžu bežať na tom istom, ale aj na rôznych počítačoch. Princíp asynchrónnej replikácie spočíva v tom, že sú distribuované iba dokončené a potvrdené (commited) transakcie. Distribúcia môže byť realizovaná jedným Replikačným serverom alebo systémom navzájom spolupracujúcich Replikačných serverov. Vo väčšine sa používa replikácia v takmer reálnom čase, ale je k dispozícii aj režim dávkového prenosu.
V prípade nefunkčnosti niektoré komponenty replikovaného systému (výpadok počítača v niektorom uzle, prerušenie spojenia apod.) sa nevybavené požiadavky uchovávajú vo frontoch a sú ďalej distribuované automaticky po obnovení spojenia.
Táto metóda teda umožňuje prenášať iba najmenšiu nevyhnutnú informáciu a súčasne zaisťuje dostupnosť replikovanej informácie v čase závisiacom iba na priepustnosti siete.


Zaistenie konzistencie replikovaného systému za všetkých okolnostíe
a) Fyzická konzistencia
Pri vykonávaní replikovaných transakcií v cieľovej databáze je automaticky kontrolované, či sú príslušné dáta v odpovedajúcom stave. V prípade zistenia nesúladu (napr. v prípade, že je povolené vykonávať zmeny v replikovaných dátach bez synchronizácie s primárnou stranou) je možné transakciu zablokovať a indikovať tento stav s požiadavkou na explicitné vyriešenie tejto situácie alebo zaistiť automatické riešenie kolízie (autocorrection option - pozri ďalej).
b) Logická konzistencia
Replikačný predpis umožňuje požadovať distribúciu dát obmedzených vertikálne (iba niektoré stĺpce tabuliek) aj horizontálne (riadky vybrané na základe komplexných výberových podmienok - klauzula where). V procese materializácie replikačných predpisov sa replikácia realizuje vždy práve iba pre dáta odpovedajúce podmienkam tohto predpisu na primárnej aj na replikovanej strane. To umožňuje udržiavať bez problémov konzistentné tabuľky, ktorých dáta sú replikované súčasne z viacerých primárnych zdrojov aj v prípade ich obnovovania (napr. v dôsledku zničenia disku) z jednotlivých partikulárnych záloh.


Automatická synchronizácia zmien pomocou asynchrónnych procedúr (APC)
Pokiaľ nie je zakázané replikované dáta meniť (nie sú read only), je potrebné riešiť obecný problém konfliktných požiadaviek. V prípade, že existuje on-line spojenie replikovanej databázy s primárnym dátovým zdrojom, umožňuje Replikačný server Sybase zaistiť koordináciu zmien pomocou unikátnej technológie asynchrónneho volania procedúr (APC). Princíp spočíva v tom, že pri požiadavku na zmenu replikovaných dát sa namiesto priamej operácie zápisu použije uložená procedúra, ktorej volanie sa automaticky replikuje na primárnu stranu a až po jej úspešnom vykonaní je v primárnej databáze generovaná a distribuovaná transakcia vykonávajúca vlastnú zmenu v replikovaných dátach. Tento mechanizmus je zvlášť užitočný v prípade, že existuje viac replík tých istých dát, do ktorých je možné vykonávať zmeny. V tomto prípade je primárna strana replikačného systému zodpovedná za synchronizáciu všetkých takýchto zmien.

Schopnosť automatického riešenia kolízií (autocorrection option)
Ak je povolené vykonávať zmeny replikovaných dát bez synchronizácie s primárnou stranou, je možné v prípade kolízií iba riešiť následky. To je možné v zásade dvoma spôsobmi:
a) Nastavením tzv. Autocorrection option určiť jednu zo strán ako rozhodujúcu, ktorej transakcie majú prednosť a vykonajú sa bez ohľadu na zmeny, ktoré vykonala druhá strana. Tento postup možno použiť iba v prípade, že na podriadenej strane nie je čiastočná nekonzistentnosť pre aplikáciu kritická.
b) V opačnom prípade sa zmeny do “derivovaných“ dát nevykonávajú, príslušné transakcie sú ukladané do špeciálnych front a jednotlivé prípady sa potom môžu individuálne riešiť (manuálne alebo automatizovane).


Možnosť replikácie na báze užívateľsky definovaných funkcií
Vlastná replikácia je realizovaná radou funkcií Replikačného servera, ktoré štandardne mapujú transakcie z primárneho dátového zdroja na replikovanú stranu. Obecne je však možné definovať vlastné užívateľské funkcie a triedy funkcií, ktoré umožňujú pre konkrétne replikačné predpisy distribuovať akúkoľvek obecnú požiadavku. V dôsledku tejto vlastnosti môže byť výsledkom replikovania transakcie vykonávajúcej zmenu primárnych dát napr. spustenie špecifickej činnosti na replikovanej strane, môže byť replikované spustenie uložených procedúr alebo je možné replikovať napr. špecifické administrátorské činnosti (synchrónne zálohovanie databáz a transakčných logov) apod. Okrem iného je možné predefinovať funkčné reťaze transakcií do tvaru špecifického pre iné databázové systémy, čo umožňuje priamu replikáciu v heterogénnom prostredí bez použitia špeciálnych prostriedkov.

Vytváranie integrovaných replikačných systémov
Pri budovaní informačného systému s viacerými Replikačnými servermi tvoria všetky jeho komponenty vždy jeden integrovaný systém. všetky komponenty tohto systému si medzi sebou vymieňajú riadiace informácie a sú prepojené systémom definovaných ciest (routes). Tieto cesty určujú tok informácií v celom systému. Táto možnosť výrazne redukuje počet nutných sieťových spojení v celom systéme, naviac umožňuje vytvárať alternatívne cesty v prípade nefunkčnosti niektorej z jeho častí alebo oblastí.
K produktu sa dodáva Replication Server Manager, ktorý umožňuje administráciu geograficky vzdialených Replikačných serverov z jedného počítača. Grafickým spôsobom sa zobrazujú informácie o stave, využití a problémoch jednotlivých komponent bez ohľadu na konkrétne umiestnenie, hardware, operačný systém a používané protokoly.


Otvorenosť voči databázovým systémom iných dodávateľov
Použitie užívateľsky definovaných tried replikačných funkcií umožňuje priamu replikáciu (zápis) do databáz iných výrobcov. Ak je požadované, aby tieto systémy plnili úlohu primárneho dátového zdroja, umožňuje Sybase použiť riešenie na báze otvoreného aplikačného rozhrania (API) pre vytvorenie procesu fungujúceho ako replikačný agent pre akýkoľvek dátový zdroj. Pre najvýznamnejšie relačné databázové systémy sú tieto špecifické produkty dodávané priamo Sybase.
Vďaka spoločnému rozhraniu OpenServer je ľahké integrovať Replikačný server a databázové brány k iným databázam z rodiny EnterpriseCONNECT do komplexného distribuovaného a heterogénneho systému. Replikácia je možná aj s prostrediami ako sú Lotus Notes a do ľubovoľných systémov podporovanými ODBC.


Ďalšie vlastnosti Replikačného servera
Replikačný server poskytuje aj špeciálne vlastnosti, ako je dynamické určovanie trasy pre transakcie, ktoré je vhodné pre “workflow“ aplikácie. Replikácia udalostí umožňuje reagovať na vzdialených jednotkách na aplikačne závislé udalosti spôsobom pre ne špecifickým.
Na definovanie spôsobu replikácie sa používajú grafické rozhrania s drag-and-drop programovaním alebo jazyk podobný SQL. Nástroje ponúkajú nápravné príkazy a akcie pri chybách.


Typické použitia Replikačného servera
    Replikačný server sa používa v niekoľkých typických úlohách, ktoré je možné v rámci jedného systému ľubovoľne kombinovať do zložitejších celkov:

  • centrálna konsolidácia - Replikačný server spravuje centrálnu databázu, ktorá je spojením databáz podriadených jednotiek, ktoré môžu používať rôzne platformy a rôzne DMBS. Umožňuje a urýchľuje dotazy nad všetkými dátami organizácie, ktoré sú relevantné pre centrálu.
  • decentralizácia - centrálne vytvárané dáta sa distribuujú do podriadených jednotiek, čím sa redukujú komunikačné náklady a znižuje sa zraniteľnosť systému.
  • vysoká dostupnosť - systém s replikačným serverom je odolný voči výpadkom časti systému za rozumnú cenu.
  • podpora rozhodovania “live“ - Replikačný server môže udržiavať repliku prevádzkovej databázy, nad ktorou môžu analytici vykonávať komplexné dotazy nad aktuálnymi dátami, bez toho aby akokoľvek ovplyvnili výkon prevádzkového systému.
  • zálohová databáza - Replikačný server môže udržiavať “warm standby“ repliku prevádzkovej databázy, na ktorú sa môže prakticky okamžite prepnúť spracovanie v prípade výpadku primárneho servera.


Systémové požiadavky:
  • počet serverov podporovaných jedným Replikačným serverom je obmedzený kapacitou počítača, transakčným objemom a kapacitou siete (replikačný server sa zvykne kvôli zvýšeniu spoľahlivosti inštalovať na samostatný, menej výkonný počítač)
  • veľkosť front pre uchovávanie transakcií sa začína pri 20 MB a je obmedzená iba diskovou kapacitou
  • veľkosť vykonateľného programu Replikačného servera je 6 MB
  • veľkosť replikačného agenta pre Sybase SQL Server je 3 MB


Podporované databázové systémy:
Sybase, Oracle, Informix (1. kvartál 98), DB2/MVS, IMS, VSAM, Btrieve

Zdroj dát (replikačný agent):
Replication Agent Toolkit for MVS - umožňuje vyvinúť replikačných agentov pre dátové zdroje ako sú Adabas, IDMS, Supra a Model 204
Replication Agent Toolkit for UNIX, NT– umožňuje vyvinúť replikačných agentov pre menej časté alebo špeciálne databázy cez zverejnené API


Cieľové databázy:
všetky podporované produktami EnterpriseCONNECT alebo ODBC

Produkty - všetky
Školenia
Technická podpora
Cenníky
Profil firmy
Partneri
Referencie
Novinky
@ e-mail
Design © 1998 Peter Švec