Közös katalogizálás - A rendszergazda szemszögéből

(Sándor Ákos)

   A VOCAL-ról

   Magyarországon először a Voyager integrált könyvtári rendszer valósította meg azt az elképzelést, hogy az integrált rendszert használó könyvtárak nem csak a helyi (lokális) adatbázisukban tárolják adataikat, hanem egy központi szerveren is. Ehhez olyan fejlesztéseket kellett alkalmazni, amelyek viszonylag egyszerűen idomultak az egyébként is szerver-kliens modellt alkalmazó szoftverhez. A kliens oldali katalogizáló komponensnél ez a fejlesztés egy újabb menüpont beiktatását tette szükségessé, ami azon túl, hogy a helyi adatbázisba betölti az elkészült rekordot, továbbküldésre egy speciális queue-ba is beteszi a marc rekordot a helyi szerveren. A szerver oldalon pedig olyan, háttérben futó alkalmazásra volt szükség, amely a sorba állított rekordokat egy TCP socket-on keresztül a megadott helyre továbbítja. Ez a megoldás a felhasználóknak nem okozott többletmunkát, ugyanis a katalogizáló könyvtáros a „Mentés a helyi adatbázisba” menüpont helyett egy "Mentés a helyi adatbázisba és VOCAL-ba" menüpontot használ azóta. Sőt! Ez a megoldás a rendszergazdáknak sem okozott jelentős többletmunkát, hiszen a háttérben futó rekordküldő alkalmazásnál nincs szükség semmilyen "kézimunkára", ugyanis, ha a távoli szerver elérhető, akkor elküldi a rekordot és csak a socket lezárását követően törli a lokális queue-ból. Ha nem elérhető, akkor egy előre meghatározott idő múlva újra megpróbálja a kapcsolat felépítését és megy minden a maga útján.


Voyager/Corvina rendszer közös katalogizálási folyamata

   A VOCAL szerveren működő integrált rendszerhez pedig egy olyan komponens került kifejlesztésre, amely a "felpostázott" rekordokat tölti be az adatbázisba úgy, mintha a helyi adatbázis katalogizáló moduljából kerültek volna mentésre. Ez a rekordfogadó alrendszer alkalmas arra, hogy a közös katalogizálás szabályai szerint fogadja, esetenként átalakítsa a mentett rekordokat. Így lehetőség van olyan szabályok megfogalmazására is, mint például az, hogy egy marc rekord feltöltésekor mely marc mezők azok, amelyek hozzáíródnak, és melyek azok, amik felülíródnak a közös katalógusban már bentlévő bibliográfiai rekordnál.

   Mindeközben az integrált könyvtári rendszerhez készített módosítások, többlet szolgáltatások indokolták, hogy a szoftver egyik jelentős mérföldkövénél átkeresztelődjön, s onnantól Corvina névvel azonosítjuk az integrált könyvtári rendszert.

   A VOCAL rendszer üzemeltetése során a tagkönyvtárakkal történt adategyeztetések voltak a legfajsúlyosabb tennivalók, ugyanis a Corvina rendszerek által preferált USMARC szabvány szerinti adatcsere formátum használata is csak akkor lehet jó megoldás az adatcserére, ha a szabványt betartják a tagkönyvtárak. Illetve, ha kellő mértékig szabályozzák a USMARC-tól való helyi eltéréseket is. Mindez egyébként egy Vocal katalogizálási szabályzatban rögzítésre is került, aminek betartásával menthetnek a tagkönyvtárak a közös adattárba rekordokat.

   A MOKKA-ról

   A Corvina rendszer sikeresen pályázott a MOKKA megvalósítására, amelyben nagy szerepe volt a VOCAL mentén felgyülemlett szakmai tapasztalatoknak is. A feladat itt annyiból vált bonyolultabbá, hogy nem egyforma integrált könyvtári rendszerekből kell az adatokat fogadni, hanem a MOKKA tagkönyvtárainál már meglévő, különböző rendszerekből. Ehhez készült egy feltöltést segítő Corvina kiegészítés, amelyet például heti rendszerességgel használnak az egyes tagkönyvtárak integrált könyvtári rendszerei mellett az adatok továbbításához a MOKKA felé. Ez a periodicitás természetesen lehet sűrűbb, akár online is, és lehet ritkább, akár havonta egyszer megtörténő is. A felküldésre szánt rekordok mennyisége befolyásolja a gyakoriságot.

   A MOKKA feltöltési szabályrendszere a VOCAL-nál használthoz képest jelentősen megváltozott. A duplumellenőrzésen kívül valamennyi tagkönyvtárra nézve meg kellett állapítani a felküldött rekordok fajtáját (HUNMARC vagy USMARC), illetve az azokban használt karakterkódolást. Ez utóbbi a legnehézkesebb, mert sok esetben a helyi rendszerekben tárolt rekordok sem egységesek. Ennek oka nyilván abban keresendő, hogy a helyi rendszereknek is volt előélete és sok esetben már valahonnan átkonvertált rekordokkal kezdtek el dolgozni a könyvtárak. Manapság 3. sőt 4. generációs integrált rendszerekről beszélhetünk. A duplumellenőrzés módszere folyamatos javításon esik át, mert a megfigyelt tagkönyvtári szokások mentén finomításra szorulnak ezen szabályok. Jelenleg a véglegesnek szánt módszer bevezetése zajlik.

   Technikai háttér

   A közös katalógusok működéséhez az adatbázist működtető nagy teljesítményű számítógép, az azon futó operációs rendszer, az adatbázis-kezelő és az integrált könyvtári rendszer felügyeletét kell ellátni. A szerverek ezen kategóriájánál viszonylag ritka, hogy hardware probléma lépjen fel, bár előfordulhat. Ez ellen egyedül az adatbázis folyamatos mentésével lehet védekezni. Sajnos anyagi megfontolások miatt általában nincs lehetőség a mentéseknek az eredetitől teljesen független hardware/software környezetben történő felépítésére, ami miatt érdemes folyamatosan együtt élni az ilyen rendszerekkel, hogy a minimálisra csökkenhessenek a kockázati tényezők.

   A Corvina rendszer Solaris operációs rendszer környezetben működik mind a Vocal, mind pedig a Mokka esetében. Az operációs rendszer állandó felügyeletet igényel. Első sorban a rendelkezésre álló tárterületet kell figyelemmel kísérni, mind az adatbázisban tárolt éles adatok mentén, mind pedig az archiválásra szánt mentett adatok mentén. Ezen kívül figyelni kell a szerver terheltségét, azaz a rendszerben futó processzek által okozott terheltséget. Ha nem is napi gyakorisággal, de időnként az operációs rendszer naplófile-jainak (log) átnézése is hozzájárul a szerver biztonságos üzemeltetéséhez. (A Corvina rendszer egy újabb állomásához érkezett, amit a piaci igények diktálnak. Nevezetesen lehetőség nyílik arra, hogy PC-n futó Linux operációs rendszeren is telepítésre kerülhet, amely a hardverköltségek jelentős csökkentéséhez vezet. A jelenlegi tervek szerint 2005 őszén a MOKKA adatbázisa is átköltözik - lehet, csak tükörszerverként - PC-s Linuxos környezetbe.)

   Jelenleg mindkét bibliográfiai adatbázis Ingres adatbázis-kezelőben van tárolva. Itt az Ingres működésével /működtetésével kapcsolatban napi rendszerességű tennivaló gyakorlatilag nincs. Arra kell figyelni, hogy az adatbázis gyarapodására elegendő háttértároló kapacitás legyen. A VOCAL és a MOKKA hamarosan áttér az Oracle adatbázis-kezelőre, mert a rendszert fejlesztő cég a legújabb verziójú Corvina esetében már ezt támogatja. Így az újabb fejlesztések, a support is csak ehhez az adatbázis-kezelőhöz vehetők igénybe. Így például az Oracle telepítésekor megfelelő méretű adatbázisfile-t választva nem fogyhat el a tárolókapacitás azáltal, hogy a bibliográfiai rekordhalmaz gyarapodik, mert előre foglalódik az a tárterület, ami az adatbázis-kezelőnek rendelkezésre áll.

   Az integrált könyvtári rendszer szerver oldali komponenseit összefoglaló néven Corvina backendeknek hívjuk. Ezek között az alkalmazások között vannak azok a szoftver komponensek, amelyeken keresztül az úgynevezett OPAC funkciókat elérhetővé teszi a rendszer. Ezek egyik elemi része a CCL (Common Command Language) által biztosított kereső. Praktikus, mert lehet akár parancssorból használni a szerveren, akár a kliensek OPAC programjain keresztül, valamint a nagyközönségnek szánt webes interfacen keresztül is. Ez egy olyan szoftverréteg az adatbázis-kezelő és a felhasználó között, amelyen keresztül csak keresni lehet a bibliográfiai és authority rekordok között (csak "readonly" műveletek végrehajtását teszi lehetővé).