Posted By: medved (A~z na v~eky Mikov~ce.) on 'CZdatabases' Title: Re: Big database Date: Tue Apr 6 09:55:31 1999 > > Tady ma Sybase svoji ojedinelou technologii v databazovem serveru > Adaptive > No, nevim, zda ojedinelou, myslim, ze Oracle ma podobny server pouzivajici > neco takoveho, jina vec je, ze jsou snad o neco malo pomalejsi. No... Mas pravdu jen z casti... (jak vidim, je zajem taxe do toho dam ;-) Adaptive server IQ (IQ) pouziva dve celkem fikane technologie - jednak je to jiny zpusob ukladani dat - PO SLOUPCICH a druhak je to tzv. bit-wise indexing (to je to, co je patentovane). Oracle nyni zahrnul do sve databaze 8i tzv. bitmap indexy - neco, co se trochu blizi bitwise indexum, ale ma to dve nevyhody - tato indexova struktura je ulozena vedle jlasickych db struktur a konkretni data jsou ulozeny v klasickem formatu. Tady je videt rozdilny pristup mezi Sybase a Oraclem - Oracle ma jediny db server pro vsechny typy aplikaci (jak transakcni, tak DSS), kdezto Sybase ma na specielni problemy specializovane nastroje. Oba pristupy maji sve klady i zapory. Nicmene nyni k IQ... 1) ulozeni dat po sloupcich Rychlost databazoveho serveru je vzdy urcena tim, jak pracuje s disky - kolikrat musi pristoupit na hdd aby dostal pozadovany vysledek. Tam vznikaji nejvetsi prodlevy. DB servery toto resi ruznymi cachemi apod. Klasicke databazove servery majui data ulozeny po rdcich - vzdy cely radek z tabulky je ulozen pohromade. V pripade dotazu pres celou tabulku (count (*)) dojde tedy k precteni UPLNE VSECH dat v tabulce. Naproti tomu ma IQ ulozeny data po sloupcich - pri takovemto dotazu by tedy stacilo precist jen napr. primarni klic tabulky (jeden sloupec) - a zrychleni je na svete. Tady musim rici, ze takovyto druh dotazu ('prurezovy') je prave typicky pro DSS aplikace. U transakcnich aplikaci se vetsinou jedna o pristup na vice atributu jednoho radku, takze tam je rozhodne lepsi ulozeni po radcich. 2) bitwise indexy IQ neuklada data, ale jejich indexy - ma nekde ulozenu tabulku hodnot, a uklada pouze indexy k ni - napriklad u sloupce 'barva', ktery muze nabyvat dejme tomu tri hodnot (cervena, zelena a zluta) uklada IQ tuto tuto informaci pouze do 3 (!) bitu (jeden pro zlutou, druhy pro zelenou a treti pro cervenou) - uz jen timto se masivne urychli beh IQ, ale v pripade dotazu na radky s barvou= cervena, se cte POUZE JEDEN BIT (ten, co odpovida cervene) na radek (v pripade zase nejakeho count-u). Takoveto ulozeni dat (po sloupcich a pouze indexy) umoznuje data ve sloupcich efektivne kompresovat - proto ma vysledna databaze cca 80% objemu zdrojovych data (zmensebi celkoveho objemu = dalsi zrychleni). Na druhe strane ale IQ ma ponekud 'nechutne'naroky na HW - podle instalacni prirucky potrebuje na UNIXu 512 MB RAM jen pro sebe a cca4 GB swapu (ja jsem to rozebeh i na SUN LX s 32 MB RAM, ale pak jsem uvaril disk se swapem :-)))). > > Server IQ - diky patentovanemu ukladani dat dojde k neskutecnemu zrychleni > > dotazu (jde to pry az do nekolika_set_krat rychlejsich odezev) a zaroven > > dochazi ke ZMENSENI databaze na velikost nizsi nez je velikost zdrojovych > > dat > > - z 20GB na, dejme tom, 18GB. Ale updaty techto dat nejsou zas tak rychle > a > > prodo je to spose databaze pro DSS aplikace - tedy tam, kde se pres noc > > nalejvaji data a pres den se z nich jenom cte. > Ony updaty nejsou totiz vubec. Sybase IQ podporuje ze zakladnich operaci > akorat select, delete a insert - tedy tahle database a programovani pod ni > je > uplne o necem jinem. S tema inserty je to u IQ 11.x problem - pri nalejvani dat se cela databaze zamcena - proto take na IQ 11.x nejdou udelat TPC-D testy - ty vyzaduji soubezny zapis a cteni. Co se tyce napriklad ulozenych procedur apod. - jde to udelat, ale neni to trivialni. Stejne tak vytvareni databazove struktury plne odpovida tomu, ze se jedna o DSS databazi - musi se definovat pri nacrhu databaze ocekavana kardinalita sloupcu apod. Ale to se musi delat u kazde DSS aplikace... CO se tyce tech selectu - tak ty jsou uplne stejne jako v transakcnich databazich - na rozdil od jinych DSS-only db serveru. Dale jsem mel moznost dostat do paratku novou verzi IQ - verzi 12. Ta uz takovymi neduhy netrpi - daji se tam definovat ulozene procedury, uzivatelske funkce a dokonce lze ve viceuzivatelskem rezimu konecne zapisovat a cist zaroven (jsem zvedavej na ty TPC-D testy :-). Dokonce ta IQ 12 dokaze tzv. multiplex - vice HW stroju pristupujicich do sdileneho diskoveho pole se spolecnymi daty... (doufam, ze jsem nikoho neotravil) > Krysa > rat@atrey.karlin.mff.cuni.cz Jsem Krysa > http://atrey.karlin.mff.cuni.cz/~rat Bye Medved ...a nejhorsi ze vseho jsou trpaslici.