A böngészőháború tovább zajlik
Tilos idézni a Wikipediát
A Vermont állami Middlebury főiskola történelem tanszékén úgy határoztak, hogy a diákok a jövőben nem használhatják forrásként a Wikipédiát vagy bármilyen hasonló kiadványt.
Contig
Milliós email-ek
Visual Basic linuxon
Adatbázis-piac
[…]
Megbízható NTFS-driver linuxhoz
Torvalds kontra Gnome
Nem hinném, hogy jót tenne az ügyüknek az ha, ha örökké gyepálják egymást. Az meg főleg furcsa, hogy Torvalds, akit sokan példaképüknek tekintenek, hogy vetemedhet ekkora arroganciára még akkor is, ha a Gnome esetleg tényleg pocsék (én se szeretem) és nem fejlődik úgy, ahogy sokan szeretnék. Érdemes majd a hazai hozzászólásokat is végigolvasni.
.NET Micro
MS Research “végtermékek”
– Kernel optimization tools
– Performance optimization tools
– Junk-mail filter
– Enhancements for using multiple monitors
– Smart tags technology
– Sequential Clustering
– Multiple storage organizations
A Windows Vista felpörgette a PC-piacot
A következő Windowst 2009-re ígérik
Adatbázis pillanatok – VI.
- A "semmisségi" (undo) naplózás megköveteli, hogy az adatok a tranzakció befejezésekor nyomban a lemezre íródjanak,
ezzel (esetleg jelentősen) növelve a végrehajtandó lemezműveletek számát. - Másik oldalról a "helyrehozó" (redo) naplózás, minden módosított adatbázis-blokk pufferben tartását igényli, egészen
a tranzakció rendes és teljes befejezéséig (COMMIT), a napló kezelésével együtt, ami (esetleg jelentősen) növeli
a tranzakciók átlagos pufferigényét. - Mindkét naplózási módszer az ellenőrzőpont-képzése közben ellentétes igényeket támaszt a pufferek lemezre írása szempontjából, kivéve ha az adatbázis-elemek teljes blokkok vagy blokkok sokasága.
Van azonban egy harmadik módszer is, amely a tevékenységek elvégzési sorrendjének rugalmasságát növeli azáltal, hogy bővíti a naplózott információk körét. Ezt a módszert "semmisségi/helyrehozó" (undo/redo) naplózásnak nevezik, amely ugyanolyan típusú naplóbejegyzéseket használ, mint a korábban említettek. E módszerben az adatbázis-elem értékének módosítását leíró naplóbejegyzés négy részből áll: <T,X,v,w> . Ez a <T,X,v,w> bejegyzés azt jelenti, hogy a "T" tranzakció az "X" adatbázis-elemének korábbi "v" értékét "w"-re módosította.
Van azonban egy előírás, melyet mindenképp be kell tartani: Mielőtt az adatbázis bármely "X" elemének értéke (valamely "T" tranzakció által végzett módosítás miatt) a lemezen átíródna, ezt megfelőzően a <T,X,v,w> módosítást leíró naplóbejegyzésnek a lemezre kell kerülnie. A "semmisségi/helyrehozó" naplózás eme szabálya csak azokat a feltételeket kényszeríti ki, amelyek a semmisségi és a helyrehozó neplózási szabályok mindegyikében szerepelnek. Speciálisan a <COMMIT T> bejegyzés megelőzheti és követheti is az adatbázis-elemek lemezen történő bármilyen megváltoztatását.
Helyreállítás során a módosítást leíró naplóbejegyzésben megtalálható a "T" tranzakció hatásainak semmisségéhez szükséges régi (v), és a helyrehozásához szükséges új (w) adatbázis-elem értékek is.
A "semmisségi/helyrehozó" módszer helyreállítási alapelvei:
- a legkorábbitól kezdve kell helyreállítani minden befejezett tranzakció hatását,
- a legutolsótól kezdve kell semmissé tenni minden be nem fejezett tranzakció tevékenységeit.
Természetesen mindkét eljárásra szükség lehet. A rugalmasság lehetővé teszi, hogy a COMMIT bejegyzés és a lemezen végrehajtott adatbázis-módosítások egymáshoz viszonyított sorrendje kötetlen legyen, így előfordulhat az is, hogy egy befejezett tranzakció néhány vagy összes változtatása még nem került a lemezre, és az is, hogy egy be nem fejezett tranzakció néhány vagy összes módosítása már a lemezen is megtörtént.
Nyilvánvalóan az se okozhat már túl sok meglepetést, hogy a korábbiakhoz képest a "semmisségi/helyrehozó" naplózás is alkalmaz ellenőrzőpontokat (check point), csak egy picit egyszerűbben, mint ahogy az eddig megismert módszereknél ez látható volt:
- a naplóba <START CKPT (T1,…Tk)> naplóbejegyzés kerül, ahol a ‘T1,…Tk" az összes, éppen aktív tranzakciók száma,
- ezután a naplóbejegyzés tartalma a lemezre kerül (FLUSH),
- valamint lemezre kerül még az összes úgynevezett "piszkos" puffer is, tehát azok, melyek egy vagy több módosított
adatbázis-elemet tartalmaznak (a helyrehozó naplózástól eltérően itt az összes "piszkos" puffer a lemezre íródik,
nem csak a már befejezett tranzakciók által módosított), - végül egy <END CKPT> bejegyzés kerül a naplóba, majd a napló tartalma ismét a lemezre kerül (FLUSH).
A "semmisségi/helyrehozó" naplózás által, a merevlemezre való írások sorrendjének rugalmassága végett megengedhető, a még be nem fejezett tranzakciók adatainak lemezre való kiírása. Ez egyben azt is jelenti, hogy lehetséges az olyan, teljes blokknál kisebb adatbázis-elemek használata, melyek közös memóriapufferbe kerülnek. Egyetlen szabályt kell csak betartani, mégpedig azt, hogy: a tranzakció semmilyen értéket nem írhat (még a memóriapufferbe se), amíg nem válik biztossá, hogy az nem fog abortálni.
Úgy vélem a naplózás témakörét a lehetőségeinkkhez képest alaposan kimerítettük. Az eddig említett módszerek a leginkább használatosak, de nem kizárt, hogy vannak más megoldások is.
Mint ahogy a sorozat legelején is írtam, ezekkel a témákkal én csak a felszínt kapirgálom. Valójában ott lent a mélyben, hatalmas, szunnyadó anyagrészek megismerésére volna még szükség (pl.: indexek kezelése, lekérdezésfordító, lekérdezésvégrehajtó, konkurenciavezérlés). Jó lenne, ha más is egyszerű, de közérthető módon ismerkedhetne meg velük. Manapság nem elég csépelni a billentyűt meg közben szörnyű okosságokat mondani különböző fórumokon, mert valljuk be, azt egy középiskolás informatikus is tud. Az se elég, ha valaki tud SQL-utasításokat írni, melyek működnek valahogy. Ahhoz azonban, hogy valaki igazán hatékony, gyors és jól működő, több ezer ember igényeit kiszolgáló adatkezelő rendszereket készítsen fontos, hogy értse mi miért zajlik a háttérben. Ehhez pedig sokat kell tanulni, olvasni, tapasztalni.
Mindig is mondtam, hogy természetesen én nem magamtól vagyok ilyen tudálékos, hanem gyakran forgatom a hazai és külföldről származó szakirodalmat. Ilyen pl. Molina-Ullmann-Widom: "Adatbázis-rendszerek" című kötete, mely két részből áll: ALAPVETÉS, MEGVALÓSÍTÁS, és amelyek nélkül félkarú óriásnak (se) érezheti magát az ember.
Windows 7
Pár szó az Oracle optimalizálóról
- szabály alapú, vagy más néven RBO (Rule Base Optimizer), illetve
- költség alapú, vagy más néven CBO (Cost Base Optimizer).
A fentiek tudatában nem lehet elégszer ismételni a következőket: CBO alkalmazása mellett, attól, hogy valaki, valamelyik szerver akármelyik sémáján(adatbázisán), a saját SELECT-jének gyorsítása érdekében létrehozott statisztikákat, és az hiperűrsebességgel dolgozik, még nem biztos, hogy egy másik sémán, egy másik szerveren is ugyanolyan gyorsan fog működni, sőt. Majdnem biztos, hogy máshol tetűlassú lesz (vagy legalábbis megbízhatatlan) akkor, ha az optimalizálási mód és a statisztikák nem állnak megfelelően. Tehát csak óvatosan a CBO-val!
Hozzászóláshoz be kell jelentkezni!