Diit.cz - Novinky a informace o hardware, software a internetu

DB2 si poradí s databázemi malé firmy i globální korporace

01 Rodina DB2
Software DB2 pomáhá organizovat společnostem velký příval dat tak, aby je uměly efektivně zužitkovat. IBM při jeho vývoji vycházela z desítek let zkušeností práce na databázových technologiích a investic do analytických nástrojů. V dnešní době IBM nabízí softwarovou řadu DB2 10, která získaná data neustále komprimuje a analyzuje, což IT specialistům ve společnostech uvolňuje ruce pro jiné důležité činnosti. Správu dat přitom zlevňuje.

Společnost IBM vyvíjí DB2 od roku 1983. Číslice 2 v názvu znamená, že se jedná o druhou generaci IBM databází, založenou na relačním modelu dat a dotazovacím jazyku SQL. Mimochodem byl to právě zaměstnanec společnosti IBM E.F.Codd, který popsal teorii Relačního modelu dat a udal tak směr vývoje databázových systémů, jak je známe dnes. Tyto historické zkušenosti a vysoká míra inovace zajišťují, že databáze vždy splňuje ty nejvyšší nároky na provoz a vývoj. Pojďme se podrobněji podívat na poskytované edice DB2, způsoby jejich licencování a samozřejmě na architekturu databáze, především na práci s XML a na kompresi dat.

DB2 na platformách

Databázový software DB2 lze nasadit na mnoha platformách, avšak základní rozdělení by mohlo zahrnovat následující dvě skupiny. První je určena pro nasazení na mainframech, pojmenovaná je DB2 for z/OS a je dostupná ve verzi 10. Druhá se využívá na platformách Linux, UNIX a Windows, odtud též plyne její název DB2 for Linux, UNIX and Windows (zkráceně LUW). Nyní se nachází ve verzi 9.7.

IBM poskytuje pro různě velké společnosti velkou škálovatelnost svých produktů. V případě DB2 můžeme edice seřadit od použití v malých firmách až po nasazení na velké servery s nejnáročnější pracovní zátěží.

Everyplace Edition

Jak již název napovídá, tato verze může běžet na všech malých počítačích typu PDA či mobilních zařízení. Podporuje podmnožinu vlastností databázového serveru a SQL funkcionality. Tato databáze je multiplatformní a podporuje mnoho mobilních operačních systémů, jako je Embedded Linux, Microsoft Windows CE, Palm OS či Symbian. Databázi můžeme rozdělit na Enterprise Edition, která obsahuje mechanismy synchronizace s hlavním serverem a Express Edition, která se odlišuje způsobem licencování. Největší využití nalezne jako mobilní databáze v terénu s možností synchronizace s hlavním datovým serverem.

Express Edition

Tento produkt je poskytován za velmi přitažlivou vstupní cenu a najde optimální využití v segmentu malých a středně velkých podniků. Obsahuje technologii pureXML, funkce pro autonomní a vzdálenou správu, komprimaci záloh a je připraven pro virtualizaci a Cloud Computing. Výhodou této edice je rychlá a snadná instalace, naopak ji limituje použití až 4 procesorových jader a 4GB paměti. Při výběru licence máme na výběr: podle počtu uživatelů, PVU, serverů nebo lze zakoupit roční licenci.

Express-C

Jde o plně vybavený datový server DB2 určený pro malé podniky a pro jednotlivá oddělení velkých podniků, jakož i pro vývojáře a podnikové partnery, kteří zajišťují služby pro tyto klienty. DB2 Express-C lze rychle nainstalovat, snadno použít a obsahuje schopnosti samosprávy. Rovněž obsahuje veškeré klíčové funkce rozšiřitelnějších vydání DB2 včetně převratné technologie pureXML.

DB2 Express-C je k dispozici ke stažení a nasazení bezplatně, omezeními k použití této verze jsou však 2 procesorová jádra a 2 GB paměti. Pro uživatele vyžadující technickou podporu nebo doplňkové funkce, tj. klastrování pro dosažení vysokého výkonu nebo replikaci dat, lze zakoupit volitelné roční předplatné, které navíc zvyšuje počet procesorových jader na 4 (maximálně 2 procesory) a paměť na 4 GB. Je to ideální a finančně nenáročný způsob jak se seznámit s DB2 databází a vyzkoušet si ji v produkčním prostředí.

Workgroup Server Edition

Je navržena pro větší pracovní zátěž nežli edice Express a obsahuje navíc rozšíření pro vysokou dostupnost. Limituje ji 16 GB paměti a 16 procesorových jader nebo 4 procesory.

Enterprise Server Edition

Tento databázový software stojí za nasazení v případě aplikací vyžadujících neomezenou flexibilitu a rozšiřitelnost. Je schopný obsloužit i ty nejnáročnější pracovní zátěže. Obsahuje též funkce pro snížení celkových nákladů vlastnictví databáze a to především špičkové schopnosti účinné komprimace, které snižují potřeby úložiště až o 80 %.

Možnosti licencování

Pro zakoupení licence ke všem edicím lze využít následujících dvou typů oprávnění:
 

•     Licence na autorizovaného uživatele (Per Authorized User)

Tato licence je vázána na konkrétního uživatele v rámci organizace nebo mimo ni, který může navázat jedno nebo více připojení k databázovému systému DB2 a počítá se jako jeden autorizovaný uživatel. Pokud se tento autorizovaný uživatel připojí k jiným databázovým serverům DB2, jsou pro tato připojení vyžadovány další licence. Navíc při zakoupení této licence se musí dodržet minimální počet uživatelů.

•     Licence podle hodnotových jednotek procesoru (Processor Value Unit Pricing)

Pro každý databázový produkt DB2 se musí zakoupit odpovídající počet hodnotových jednotek procesoru pro úroveň nebo vrstvu všech procesorových jader, která jsou aktivována a připravena k použití na serveru, na níž je software implementován.

Některé edice navíc nabízejí i další možnosti licencování

•     Licence podle virtuálního serveru s omezeným použitím (Per Server)

Pro každý virtuální server, na kterém je nainstalován produkt DB2 Express Edition, je nutné zakoupit tuto licenci. Množství prostředků přidělené všem instancím nesmí přesahovat 4 procesorová jádra a 4 GB paměti.

•     Licence podle soketu (Per Socket)
Soket můžeme definovat jako soustavu elektrických obvodů (patici), do níž je zapojen čip procesoru, který může obsahovat jedno nebo více procesorových jader. Poté je pro každý soket na serveru, na kterém běží DB2 Workgroup Server Edition, nutné získat tuto licenci. Na fyzickém serveru mohou být maximálně 4 sokety procesoru a 16 GB paměti.

Architektura databáze a možnosti administrace

Architektura DB2 je založena na instanci. Je to nezávisle prostředí, ve kterém vytváříme databáze, a v tomto prostoru běží aplikace pracující s databází. Na jednom databázovém serveru DB2 můžeme vytvářet více instanci. Například pod jednou instancí můžeme provozovat produkční databáze. Pomocí další mít testovací a vývojové databáze. Díky filozofii instancí jsou naše databáze izolované v rámci instance. Pád nebo chyba databáze v testovacím prostředí neovlivní databázi v produkčním prostředí. V rámci instance můžeme vytvářet víc než jednu databázi. Na fyzické úrovni je instance tvořena třemi základními částmi: pamětí, diskovými prostory a procesy.

Databáze je kolekce databázových objektů, jako jsou tabulky, pohledy, indexy, triggery a další. Data tabulek jsou potom ukládána na logické diskové prostory, tzv. tablespace. Jsou to tabulkové prostory, které specifikují úložiště dat. Na fyzické úrovni reprezentuje tabulkový prostor jeden či více datových souborů, do kterých se ukládají databázová data.

02 Architektura DB2 instance

Architekturu databáze ukazuje obrázek výše. Jsou na něm dvě instance, které osahuji databáze. Zde je ještě zajímavé, že databáze MYDB1 a SAMPLE mají tabulkové prostory, které se jmenuji stejně. To je v pořádku, protože databáze jsou nezávisle jednotky v rámci instance.

DB2 databázi lze snadno spravovat a konfigurovat, a to buď pomocí příkazového řádku, nebo grafického nástroje. Nejpoužívanější grafický nástroj pro konfiguraci je IBM Data Studio. Je to nástroj, který splňuje požadavky jak administrátorů, tak i vývojářů. Nabízí vývojářům možnost vyvíjet a testovat procedury, webové služby či triggery.

PureXML

Mezi nejzajímavější vlastnost DB2, která převyšuje konkurenční databáze, lze považovat pokročilou práci s XML. Do této doby jsme zpracovávali XML soubory těmito způsoby: buď jsme je ukládali jako textový řetězec nebo jako CLOB objekt. Při zpracování jsme museli dokument celý načíst do paměti a pak zpracovat. Nevýhodou byla velká paměťová náročnost a pracné zpracování dokumentu. Mohli jsme také XML dokument rozdělit a uložit do odpovídající struktury v relačních tabulkách. Při změně struktury nebylo snadné tyto změny promítnout v relačních tabulkách.

S příchodem PureXML se nám naskytla elegantní možnost zpracovávat XML dokumenty. Díky této vlastnosti můžeme ukládat a zpracovávat XML v nativním formátu. Při zpracování se ukládá celý dokument v hierarchickém formátu a je zpracováván pomocí DB2 engine. Na rozdíl od databáze založené na XML, DB2 umožňuje integraci XML dokumentu a relačních dat v jedné databázi, a to i v rámci řádků databázové tabulky. Díky této flexibilitě můžeme přistupovat buď k relačním nebo XML datům či k oběma součastně.

Přistupovat k datům v DB2 můžeme:

  • Pomocí SQL k relačním datům
  • Pomocí SQL/XML k XML datům
  • Pomocí XQuery  k XML datům
  • Pomocí XQuery k relačním datům  

PureXML nabízí efektivní a univerzální možnost správy XML dokumentu. Díky tomu lze dosáhnout zlepšení výkonnosti aplikací. Nativní XML úložiště dat je plně integrováno do databáze DB2.

03 Ruzne pristupy k DB2 datum

Výhody PureXML

  • můžeme používat stávající relační strukturu databáze a ukládat XML dokumenty ve sloupci typu XML
  • snížení času potřebného k vývoji XML aplikaci prostřednictvím zjednodušení kódu.
  • rychlejší zpracování XML dokumentu díky optimalizovanému ukládaní a indexování.
  • testy provedené s použitím PureXML technologie ukázaly výrazné zlepšení výkonu aplikaci pracující s XML

Komprese dat

Hardware pro uchovávání dat je vůbec nejdražší položkou v databázovém řešení. Pro velké datové sklady a databáze s velkým množstvím dat i malá úspora místa na disku přináší značné finanční úspory, snížení elektrické náročnosti napájení a chlazení. Je si toho vědoma i společnost IBM a proto rozšířila DB2 databázi o možnost komprese dat. Tato vlastnost nám umožňuje výrazně zredukovat místo na disku, snížit I/O operace a dosáhnout úspor operační paměti. DB2 poskytuje kompresi na různých úrovních.

  • komprese na úrovni řádek databázových tabulek
  • indexová komprese
  • komprese implicitních a null hodnot

Komprese na úrovni řádku

Nejčastěji používána komprese. Je založena na principu datového slovníku. Při kompresi DB2 zkoumá celé řádky a u opakujících se znakových řetězců provede kompresi. Díky šikovné implementaci DB2 pozná, u kterých řádků má cenu provádět kompresi a které má ponechat. Mezi hlavní přínosy řádkové komprese patří značná úspora místa na disku. Úspory se mohou lišit v závislosti na typu dat. U textových dat lze v průměru dosáhnout komprese kolem 45 % až 75 %.

Indexová komprese

Používá se pro redukci dat reprezentující indexy. Implicitně je nastavená, pokud je nastavená řádková komprese. Lze dosáhnout úspor místa na disku okolo 30 % až 50 %.

Komprese implicitních a null hodnot

Při této kompresi se implicitní a null hodnoty neukládají v databázi. Je vhodné ji použít, pokud mají data mnoho implicitních hodnot.

Jak je vidět komprese je alfou a omegou DB2 databáze, která se vyplatí nasadit u systémů uchovávajících velké množství dat, zejména datových skladů. Drobnou nevýhodou je větší vytížení procesoru.

Marcel Syruček a Alex Petronyuk

Softwarová divize IBM Česká republika
Tagy: 
IBM

Diskuse ke článku DB2 si poradí s databázemi malé firmy i globální korporace

Žádné komentáře.