2008. augusztus 7., csütörtök

Adósság

Egy kis késéssel ugyan, de közzé teszem a félév során összehozott rendszertervet, melyet a témában írtam. Ez a rendszerterv közös alapokon nyugszik Nyárády Péter rendszerével. A vizsgaidőszak után kellett még egy kicsit dolgoznom rajta, míg tartalmilag és küllemre is megfelelt az elvárásaimnak.
Ezt most megosztom a nagyközönség számára is: Hallgatói Információs Rendszer - Rendszerterv
A félév során összesen 34 oldal dokumentációt írtam, melybe beletartozik az itt a blogon közzétett néhány cikk is.
A következő félévig jó nyaralást kívánok mindenkinek!

2008. július 15., kedd

"Gyorsfagyasztott" adatbázis szerver

Az elmúlt hét eseményei annyira felkorbácsolták itthon a hangulatot, hogy még mindig nem sikerült kihevernem teljesen. Épp a legfrissebb Oracle InDepth hírlevelet olvasgattam, amikor egy mondat a TECH DIVE rovatban hirtelen szemetszúrt: "Deploy Linux Faster with Oracle Validated Configurations". Érthető módon azonnal kattintottam, hogy a cím mögötti tartalom is előkerüljön. Mint kiderült, más is sok időt eltöltött már linux telepítéssel és véleményének hangot is adhatott, mert az Oracle-nek van egy csapata, akik előretelepített konfigurációkat gyártanak, tesztelnek és validálnak (szép magyar szó:D). Mikor ezt megtudtam, akkor szidtam az Istent, hogy ez a levél hamarabb is landolhatott volna a postaládámban. Viszont akkor nem biztos, hogy felfigyelek erre a mondatra. Mindegy. Tovább nézegetve a letölthető konfigurációkat rájöttem, hogy nem igazán ilyen garázs projektekhez állították össze őket, mint az enyém. Van a listán HP, Dell, IBM szerver, de sok más gyártó termékei is. Összesen 61 konfigurációt számolhatunk össze (foylamatosan bővítik), melyek megbízhatóan működnek. Vannak 10g, 11g szerverek OEL4 vagy OEL5-tel, VM-mel vagy anélkül, RAC-cal vagy nélküle. Szóval színes a lista. Az én AMD Sempron 2600+ -os x86-osomhoz nem találtam konfigurációt :D Talán egyszer majd arra is sort kerítenek...

2008. július 7., hétfő

11g on OEL5

Engem is utolért a végzet, mint sok más blogger kollégámat. Linuxra 11g-t telepíteni nem hogy nehéz, de egyenesen lehetetlen [...ha nem értesz hozzá:)] Itt megjegyezném, hogy a sokat szidott operációs rendszer kapott tőlem pár plusz pontot ez idő alatt - főleg a kényelem és használhatóság terén - , de azért a linuxot sem becsülöm le.

Nagy ötletem volt a félév végén. Próbáljuk ki, hogy amit megterveztünk hogyan működik valójában. Ehhez össze kell állítani egy tesztkörnyezetet, ami egy Oracle 11g szerverből áll, valamint egy vele hálózatba kötött gépből, amin egy kliens alkalmazást futtatunk, ami elvégzi a szükséges funkciókat. Arra gondoltam, hogy itt az alkalom kipróbálni az Oracle által szállított Enterprise Linux legújabb 5-ös verzióját (félreértés ne essék, életemben egy linux disztribúcióval volt dolgom, azzal sem sokáig), mert azt gondoltam, hogy ezzel lesz a legkevesebb telepítési és konfigurációs probléma. Tévedtem. Nem vehetjük kézpénznek az Oracle által támogatott Linux disztribúció (Oracle Enterprise Linux 5 - OEL5) és saját adatbázisuk (Oracle Database 11g) felhőtlen viszonyát.

Telepítés előtt felkutattam azokat a dokumentációkat, melyek segítenek a telepítésben és felhívják a figyelmet a kritikus pontokra (van belőlük bőven). Amíg vártam, hogy levánszorogjon az 5 CD-s OEL5, valamint a 11g (1.7G), átolvasgattam, hogy mire kell felkészülnöm, milyen műveleteket kell végrehajtanom a helyes konfiguráció elérése érdekében. Itt megemlíteném, hogy az Oracle munkatársai csak CD-s verzióban bocsátják rendelkezésünkre az ingyenes Linux disztribúciójukat. Természetesen van 1 DVD-s verzió is, de azt postai úton kell megrendelni valamennyi térítés ellenében. Mivel manapság CD-t nem használok, ezért kicsit hülyén éreztem magam, miközben DVD-re írom ki a 700 megás képfájlokat.

A linux telepítés viszonylag simán ment elsőre (legalábbis akkor még azt hittem), csak utána kezdődtek a gondok. Mondhatom, hogy amikor behelyeztem a letöltött és DVD-re kiírt 11g legújabb verzióját, megkezdődött vesszőfutásom.
A telepítési útmutatóban leírtaknak megfelelően létrehoztam a felhasználókat és könyvtárakat, megadtam a jogokat, ezzel nem volt semmi gond. A telepítő is elindult sikerrel, beállítottam a kívánt paramétereket, amolyan Windows User módjára nyomkodtam a Next-et. Ezután elkezdte felmásolni a fájlokat, de csak egy darabig, mert kis idő elteltével hibüzenetet kaptam, mely arról árulkodott, hogy szüksége lenne egy .oui fájlra, de sehol sem találja a DVD-n. Gondoltam hú de jó, még ez is, lehet hegesztgetni a frissen kiadott adatbázis telepítőjét. Rákerestem magam is a fájlra, hogy esetleg valami elérési út probléma állhat-e a probléma mögött, de nem találtam egyáltalán a médián. A következő lépés az volt, hogy a tömörített képfájlban megtalálom-e, mert ha igen, akkor a tömörítéssel lehetett gond. Természetesen abban meg volt, csak DVD-re nem került rá valahogy. Még egyszer kitömörítettem a TotalCommander-em beépített tömörítőjével, csak a teszt kedvéért. Nem csalatkoztam, a tömörítés hiánytalan volt. Egyetlen láncszem maradt a folyamatban, amely a hibát okozhatta, mégpedig az író program. Világ életemben az Ahead Nero programját használtam CD/DVD írásra, mert részletesen be lehetett állítani, de az új gépemen valamiért egy másik szoftver van fent. Roxio Creator Basic. Egyszerű felület, még az írási sebességet sem kell beállítani(természetesen van rá mód), és kész is a lemez. Most is jól elintézte, mert úgy néz ki, hogy a számára értelmezhetetlen fájlokat egy adatlemez készítésénél önkényesen kihagyja, és még csak nem is tájékoztat a műveletről. Így történt, hogy a ".oui" nevű fájl nem felelt meg az elnevezési konvenciónak és lemaradt a lemezről. Az esetből tanulva az archiv fájlt írtam ki a DVD-re és a tömörítést a felmásolás után parancssorból végeztem, ahogy a telepítési útmutató is ajánlotta.

Újra belevágtam a telepítésbe és sikerrel jártam. Egy aggasztó képernyő fogadott a konfigurációs panelnál. Mégpedig az operációs rendszer(OEL5) adatbázishoz szükséges hiányzó csomagjainak a listája. Nem volt rövid. Kérdem én. Miért hihányoznak ezek a csomagok? Miért nincsenek feltelepítve? Talán elrontottam a telepítést? Nem a default módot kellett volna választani, hanem a Telepítés adatbázis számára? De ilyen opció nem volt. Akkor miért nincsenek alap esetben telepítve ezek? Hiszen ki a fene választaná az Oracle által csomagolt operációs rendszert, ha nem az, aki az Oracle adatbázis-kezelőjét szeretné használni? Más biztos nem választja, hiszen igazából egy összepofozott RedHat Linuxról van szó. Nem értem. Ezzel a problémával más is szembe találkozott és nem hagyta szótlanul: oracle forum.

Belenyugodtam, hogy ez a telepítés nem lesz egy leányálom és tovább kutakodtam, mi módon fogok egy minden Error és Warning nélküli, jól működő Oracle adatbázist kapni Linuxra telepítve. A hivatalos telepítési doksiban van egy "Pre-installation tasks" rész, de azt eddig átugrottam, mert nem feltételeztem, hogy csomagokat kell telepítgetnem ehhez az "összeszokott pároshoz". Tévedtem. -Azt azért megemlítem, mivel gyakorlatlan Linux használó vagyok, ezért még egyszer megkíséreltem egy "Clear install"-t a pingvines csodából és nagyon megnéztem a telepítési módokat, hátha van olyan, hogy "Install Linux for Oracle Database", de sajnos nem volt. Sebaj, legalább nöttek a tapasztalati pontjaim Linux telepítésből.- Tehát nekiláttam a csomagok telepítésének a leírás alapján. Már az első lépés után egy halom hibaüzenetet kaptam, ami természetesen nem volt betervezve, így a leírás alapján nem tudtam(/lehet) felrakni a kívánt csomagokat, melyek megtalálhatóak a telepítő CD-ken. Igazából ezekre a csomagokra van szükség a 11g telepítéséhez:

* binutils-2.17.50.0.6
* compat-libstdc++-33-3.2.3
* compat-libstdc++-33-3.2.3 (32 bit)
* elfutils-libelf-0.125
* elfutils-libelf-devel-0.125
* gcc-4.1.1
* gcc-c++-4.1.1
* glibc-2.5-12
* glibc-2.5-12 (32 bit)
* glibc-common-2.5
* glibc-devel-2.5
* glibc-devel-2.5-12 (32 bit)
* libaio-0.3.106
* libaio-0.3.106 (32 bit)
* libaio-devel-0.3.106
* libgcc-4.1.1
* libgcc-4.1.1 (32 bit)
* libstdc++-4.1.1
* libstdc++-4.1.1 (32 bit)
* libstdc++-devel 4.1.1
* make-3.81
* sysstat-7.0.0

Ha default Linux installt csinálunk, akkor a következő csomagokat kell még feltelepíteni:

* compat-libstdc++-33-3.2.3
* compat-libstdc++-33-3.2.3 (32 bit)
* elfutils-libelf-devel-0.125
* gcc-4.1.1
* gcc-c++-4.1.1
* glibc-devel-2.5
* glibc-devel-2.5-12 (32 bit)
* libaio-devel-0.3.106
* libstdc++-devel 4.1.1
* sysstat-7.0.0

Itt hozzátenném, hogy nem csak ezekre a csomagokra lesz szükség, hanem a függőségek figyelembe vételével azokra is, amelyekre ezek támaszkodnak. Szerencsére minden szükséges csomag megtalálható az 1., 2., 3. CD-ken.

Most már készen állok az adatbázis telepítésére. Ezt mi sem bizonyítja jobban, mint a telepítő "Product-Specific Prerequisit Checks" oldalán a "Checking operating system package requirements" teszt megfeleltté van nyilvánítva. Igen! Megcsináltuk! :D A telepítés további részletei nem voltak érdekesek, pont úgy kell, mint Windows-on, hála a java alapú telepítő GUI-nak.

Nem esett még szó a tárhelyről. Elvileg ajánlatos Automatic Storage Managementet(ASM) alkalmazni, de mivel ezen a gépen van még két NTFS partíció, amolyan Windows célokra és nem nagyon bízom meg az ilyen automatikusan konfigurálódó, particionáló és formázó technológiákban, ezért ezt nem alkalmazom. A vas egy 2600+ Sempron, 1G memóriával. Ehhez egy 2Gb méretű SWAP-ot foglaltam le, valamint vagy 50Gb EXT3 fájlrendszerű tárterületet. Egyébként a telepítő doksiban is az EXT3-at ajánlják.

Összegzésül elmondanám, hogy a nehézségek ellenére nem bántam meg, hogy "felszenvedtem" egy 11g-t OEL5-re. Azonban megfontolandó, hogy ha erre a NAGYON támogatott operációs rendszerre ennyi megpróbáltatás árán sikerült telepíteni a szoftvert, akkor egy olyan rendszerrel mennyi gond lehet, amely a KEVÉSBÉ támogattottak listáján csücsül. Ha bárki hasonló telepítési gondokkal küzd, mint amikkel én is szembe találkoztam, annk egy jó tanács, hogy a csomagokat figyelmesen telepítse fel. Ehhez nyújt segítséget ez a pár dokumentáció:
* Installing Oracle Database 11g Release 1 on Enterprise Linux 5 (32- and 64-bit) by John Smiley
* Installation of Oracle 11g Release 1 (11.1.0.6.0) on RedHat EL 4, 5 and (Oracle) Enteprise Linux 4, 5
* Install 11g on Unbreakable Linux 5 failing on Community Discussion Forums, Oracle

Pém Gábor blogjában lehet még olvasni 11g telepítési HowTo-t. Ő Debian-nal próbálkozott és érdekes problémákba ütközött, melyekre mind megtalálta a megoldást:
* Oracle 11g telepítése Debian 4.0 Etch-re (AMD64) - Előkészületek
* Oracle 11g telepítése Debian 4.0 Etch-re (AMD64) - Az adatbázis telepítése
* Oracle 11g telepítése Debian 4.0 Etch-re (AMD64) - Telepítés utáni feladatok

2008. június 11., szerda

foci EB

Annak idején, amikor beadtam az írásbeli beszámolóm anyagát, akkor még korán sem voltam kész. De úgy gondoltam, hogy a tárgyfelelősnek így is jó lesz. Tudom, kicsit gonosz, de jó lett... Úgy érzem, hogy jóval kevesebb munkával is lehetett volna teljesíteni ezt az önlabot, ha csak erre a dolgozatra koncentrálok. De nem így lett, és utólag már nem bántam meg. A félévi munkámat reprezentáló dokumentum közel 34 oldal lett (összehasonlításul a tárgyfelelősnek szánt verzióval, ami 11 oldal minden klisével és képpel együtt), igaz van pár majdnem ugyan-olyan oldal, de képet csak egyet tartalmaz. A rövidebb dokumentumból pont az maradt ki, ami a félév lényege volt számomra, de ezt a véglegesben már pótoltam. Az adatbázis memória hangolása érdekes téma volt, de szerintem még nem sikerült kimerítenem teljesen. Az elméleti megfontolásaimat jó lenne teszteken is látnom, hogy tényleg gyorsabbá tudtam tenni ez által a lekérdezéseket. Lehet, hogy a nyáron összeállítok egy tesztkonfigurációt, amin megnézem mindezeket. Érdekes lenne a TimesTen-nel is tesztelni a teljesítményt. Majd meglátjuk. Mindezek előtt a maradék 4 vizsgámat szeretném sikerrel teljesíteni, ami még 20 kredit :D Eddig már zsebben van 21, de a szakirányos tárgyak még hátra maradtak. Na és a foci EB...

2008. május 29., csütörtök

II. Oracle Blogger Dinner

Második alkalommal kerül megrendezésre az Oracle Blogger Dinner (2008. június 9 17:00, Oracle irodaház), melynek nem titkolt szándéka, hogy lehetőséget teremtsen a magyarországi Oracle bloggereknek a személyes találkozásra. Kaptunk meghívást szép számmal, remélem mindenki el tud jönni. Ez csak egy rövid találkozás lesz, de nem esemény nélküli. A végleges program még nem hivatalos, de elöljáróban annyit elfecsegek, hogy lesz egy előadás Application Express témakörben, valamint többen fogunk a nemrég megrendezett HOUG2008-ról élménybeszámolót tartani.
Izgalmas eseménynek ígérkezik. Aki kapott meghívást de nem szeretne eljönni, az is gondolja meg, mert a kötetlen beszélgetések közben némi pizza és üdítő is található majd a teremben...

2008. május 18., vasárnap

Félév végi hajtás

Mint minden félévben, ebben is a szorgalmi időszak vége a leghúzosabb, mert minden munkának ekkor van a határideje. Ilyenkorra kell befejezni a házikat, összeállítáani a prezentációt, és a pótzh-kat is ekkor lehet csak megírni. Ezek közül számomra most mind kijutott, így nem tudtam a blogommal foglalkozni.
Most azonban sok mindenről kell beszámolnom, mert Önlab II-ből is elkészültek anyagok, amiket megosztok veletek.
Először is egy rendszerterv elkészítése volt a feladat ebben a félévben, ami még most sem készült el teljesen. A tárgyfelelősnek ezt írásban és szóban is be kellett mutatni. Az írásbelivel sajnos késtem pár napot, mert elnéztem a beadási határidőt a Pünkösd hétfő miatt. Na jó, nem néztem el, csak lusta dög voltam időre megcsinálni :). Meg is lett az eredménye :(. Be kell valljam, kicsit későn kaptam észhez, hogy egy rendszertervvel még adós vagyok. Nyárády Petivel összefogtunk, mivel hasonló a témánk - optimalizálás- , ezért az alapkoncepció lehetne közös. Marton Józsival gyorsan le is ültünk konzultálni, az első ötletünket lefújta, ami egy számlázó rendszer volt. Jogosan, teszem hozzá, mert nem tudjuk, milyen folyamatok zajlanak pontosan egy ilyen rendszerben. Aztán egy kézenfekvő dolog jutott eszünkbe. Hallgatói információs rendszer, vagyis Neptun, de mégsem az. Ez már jónak bizonyult. Petivel gyorsan össze is dobtuk az adatbázis sémát, amihez a szkriptet utána megcsinálta PLSQL és TSQL nyelven is. Ez volt a kiindulási alap. Innentől ő az SQL optimalizálással foglalkozott nagyrészt, én pedig a helyes rendszer konfiguráció - értem itt ezalatt az adatbázis memória kiosztását (SGA) - megalkotásával töltöttem az időmet. Azonban rossz stratégiát választottam. Úgy gondoltam, hogy először megcsinálom a teljes koncepciót, aminek nincsenek formai, csak tartalmi követelményei, és majd ebből kiemelem a lényeget és beadom azt a tárgyfelelősnek. Na emiatt kicsúsztam a határidőből és későn változtattam az elképzelésemen. A tanulmány megírásának a felénél belekezdtem a kiírt formai követelményekbe tuszkolni az irományt, ami nem volt túl egyszerű, és időm sem maradt elég, ráadásul nem sikerült mindent belerakni, amit szerettem volna. Végül leadtam 27 óra késéssel, ami 2 munkanapnak felelt meg, így 9% levonásra számíthattam a végleges jegyemből.
Szóbeli.
Egyéb házi feladatok írása közben összeállítottam a szóbeli prezentációmat, amit természetesen nem töltöttem fel a kívánt határidőre, mert elfelejtettem. Csak a beszámoló napján délben jutott eszembe, hogy van egy ilyen feltétele is a szóbelinek. Nem történt nagy baj, bevittem magammal pendrive-on. Elég kalandos volt Marton Józsit előkerítenem a szóbelire, mert legutoljára a szóbelimről 1 hónappal előtte beszéltünk, de nem elékeztettem közvetlenül előtte. Két beszámoló után kijöttem a teremből és elindultam megkeresni. Először a termében (IL109), aztán meg mindenféle kollégáját leszólítva a folyosón, meg más laborokba bekukkantva. Végül Erős Levente oldotta meg a problémámat, aki tudta a mobil számát és felhívta, hogy meg kell jelennie konzulens minőségben egy szóbeli beszámolón. Minden a helyén volt, jöhetett a prezentációm. Megtartottam. 10 és fél perc lett körülbelül, ami fél perccel volt több a megengedettnél. Marosits Tamás volt a hallgatóság és értékelő egyben. A szóbelimben és írásbelimben egyetlen kivetnivalója volt. Az, hogy nem különült el egyértelműen, hogy mi az, amit én csináltam, és mi az, amit közösen Péterrel. Ezt szóban meg is cáfoltam neki, de úgy tűnik valamiért mindenképp rosszabb jegyet akart nekem adni. Talán a két nap késés miatt, nem tudom. A lényeg az, hogy, a késés önmagában még nem rontott volna a jegyemen, de sajnos nem értékelte tökéletesre a beszámolóimat, így a végén csak 4-est kaptam a tárgyra.
A végleges, konzulensnek szánt beszámolómat csak később tudom befejezni, de nem maradok vele adós. Most a változatosság kedvéért Adatbázisok szerveroldali programozása vizsgám lesz, de utána befejezem a művem :D.

Anyagok
Írásbeli beszámoló a tárgyfelelősnek: link
Szóbeli prezentáció: link

2008. május 1., csütörtök

HOUG 2008 anyagok

Izsák Tamás jelezte egy hozzászólásban, hogy felkerültek a HOUG honlapjára a konferencia előadás anyagai. Akit érdekelnek a részletek, az nyugodtan válogathat közülük.
Kellemes olvasgatást!