1 INTEGRACJA SIECI BIBLIOTEK W ROZLEGŁYM SYSTEMIE INFORMATYCZNYM Leszek Masadyński Wstęp Sieć Internet jest dzisiaj podstawowym medium, dzięki któremu można połączyć komputery pracujące w różnych lokalizacjach. W szczególności sieć tę można wykorzystać do zrealizowania systemu bibliotecznego, w którym wiele placówek wykorzystuje wspólną bazę danych. Przykładami takich systemów mogą być sieci bibliotek publicznych w skali miasta lub regionu (powiat, województwo), sieci bibliotek tematycznych (np. pedagogicznych), sieci bibliotek uczelnianych, szkolnych itp. Najnowsze rozwiązania zastosowane w systemach SOWA i SOWA2 umożliwiają tworzenie takich rozwiązań. W referacie wskażemy wybrane problemy wdrażania i eksploatowania systemów w sieci rozległej. Architektura klient/serwer Do zrealizowania systemów pracujących z wykorzystaniem sieci Internet opracowaliśmy nowe wersje popularnych systemów SOWA i SOWA2, wykorzystujące nowoczesną architekturę klient/serwer. Oprogramowanie składa się z części "serwerowej", która instalowana jest w miejscu przechowywania bazy danych (np. w bibliotece "centralnej") oraz części "klienckiej", która instalowana jest na komputerach bezpośrednich użytkowników. Ponieważ podstawowym protokołem komunikacyjnym w Internecie jest TCP/IP wykorzystaliśmy ten protokół do łączności między "serwerem" a "klientami". Jak wspomniano łączność odbywa się dzięki sieci Internet, dlatego wszystkie biblioteki powinny posiadać odpowiednie łącza, które dla części "serwerowej" muszą zapewniać stały adres dostępowy. Oprogramowanie "klienckie" może działać nawet w oparciu o stosunkowo słabe łącze komutowane (modem). Nasze oprogramowanie pracuje na najbardziej popularnym sprzęcie komputerowym, jakim są mikrokomputery klasy PC. Część "serwerowa" wymaga systemu Linux lub Windows w wersji XP, 2000 lub NT. W wersji Linux możliwe jest wykorzystanie darmowej bazy danych PostgreSQL (architektura jest w tym przypadku trójwarstwowa). Programy "klienckie" można zainstalować w dowolnym systemie Windows. Wybór modelu scentralizowany-rozproszony Przewidzieliśmy oprogramowanie umożliwiające budowanie systemów z katalogiem scentralizowanym lub systemu rozproszonego. W pierwszym przypadku oprogramowanie "serwerowe" instalowane jest tylko w jednym, wybranym punkcie sieci. Jedna baza danych jest współdzielona przez wszyskich użytkowników systemu. Model scentralizowany jest bardzo wygodny w sieciach miejskich bibliotek publicznych, w których najczęściej zakup i opracowanie materiałów odbywa się w "centrali". Ze względu na popularność tego rozwiązania w dalszej części referatu zajmiemy się wyłącznie systemami scentralizowanymi. W modelu rozproszonym oprogramowanie "serwerowe" instalowane jest odrębnie w każdej z placówek. Nie istnieje wspólna baza danych - zamiast niej każda placówka tworzy swój odrębny katalog. Zapytania do katalogu centralnego są rozpraszane do poszczególnych katalogów poprzez specjalne oprogramowanie tzw. serwera katalogu rozproszonego, zainstalowane w wydzielonym punkcie sieci. Model rozproszony jest najprostszą metodą zintegrowania zasobów informacyjnych przygotowywanych przez odrębne placówki. Nasze rozwiązanie serwera katalogu rozproszonego umożliwia zintegrowanie odrębnych katalogów utrzymywanych zarówno w systemie SOWA, jak i SOWA2. Wybór formatu katalogowania
2 W systemach z katalogiem scentralizowanym kluczowym elementem projektu jest ustalenie formatu katalogowania. System SOWA oferuje stosunkowo prosty w użyciu format umożliwiający katalogowanie na drugim poziomie szczegółowości praktycznie dowolnych materiałów bibliotecznych, ze szczególnym uwzględnieniem materiałów tworzących inwentarze (zasoby) biblioteczne. Format jest z powodzeniem stosowany przez kilkaset bibliotek tworzących katalogi księgozbiorów, zbiorów specjalnych, czasopism itp. Dzięki dostępności katalogów w Internecie możliwe jest pobieranie gotowych opisów bibliotecznych "on-line" z dowolnie wybranej biblioteki. W bardziej złożonym systemie SOWA2 format katalogowania nie jest integralną częścią oprogramowania, ale stanowi element, który dla potrzeb konkretnego katalogu może być dowolnie zaadaptowany. Dzięki temu projektując katalog możemy wybrać format MARC-21, format MARC-BN lub zastosować format wg własnej specyfikacji. Format MARC-21 jest międzynarodową normą stosowaną w największych bibliotekach. Umożliwia katalogowanie dowolnych materiałów bibliotecznych. Format jest bardzo rozbudowany, dlatego jego użycie wymaga odpowiednio wykwalifikowanych pracowników. Format MARC-BN proponujemy użytkownikom systemu MAK, którzy mogą w ten sposób - przy przejściu na SOWA2 - zachować dane. Zaimplementowaliśmy wiele formatów ukierunkowanych na szczególne zastosowania. Największą popularność zyskał format o roboczej nazwie SOWA/TSXT, który przeznaczony jest do tworzenia katalogów bibliograficznych. Umożliwia katalogowanie artykułów, fragmentów wydawniczych, recenzji itp. Format umożliwia automatyczne redagowanie drukowanych bibliografii (powstają w ten sposób np. kolejne zeszyty Bibliografii Regionalnej Wielkopolski). Powstało wiele implementacji formatów dla danych przejmowanych z innych systemów (np. ISIS). Ciekawą własnością systemu SOWA2 jest możliwość tworzenia katalogów zawierających rekordy o kilku różnych formatach. Cecha ta pozwala m.in. tworzyć kartoteki wzorcowe, bądź też katalogi obejmujące mieszane materiały biblioteczne (np. zbiory specjalne). Usługi oferowane przez serwery systemów SOWA i SOWA2 Zdalne katalogowanie to podstawowa usługa wymagana od każdego systemu bibliotecznego pracującego z wykorzystaniem Internetu. Dzięki niej tworzenie katalogu odbywa się we współpracy wszystkich bibliotek rozległej sieci. Biblioteki mogą wykorzystać istniejące w bazie rekordy bibliograficzne do wprowadzenia własnych informacji inwentarzowych (zasobowych). Katalogowanie można wspomagać przejmowaniem opisów z innych baz. Poprzez Internet można pobierać opisy "online" z katalogów o tych samych formatach SOWA lub SOWA2, a także z innych systemów udostępniających dane protokołem Z39.50 (tylko format MARC-21). Można w ten sposób pobierać dane np. z katalogu Biblioteki Narodowej, katalogu Nukat, bibliotek pracujących w systemach Horizon, Aleph, Hirtua i in. Dane wymieniane między katalogami o różnych formatach można automatycznie konwertować (np. SOWA do MARC-21 lub MARC-BN i na odwrót). Zdalne wyszukiwanie i zestawienia umożliwiają m.in. zorganizowanie dla katalogu serwisu WWW. W naszych systemach przyjęto dwa niezależne języki wyszukiwawcze. Pierwszy, stosowany przy szukaniu informacji o konkretnej pozycji katalogowej oparty jest na przeglądaniu katalogu poprzez indeksy (autorski, tytułowy, przedmiotowy i in.). Drugi, stosowany do przygotowania zestawień bibliograficznych wykorzystuje zapytania umożliwiające wyszukanie rekordów poprzez podanie - często złożonego - wyrażenia wyszukiwawczego. Zestawienia mogą mieć formę zestawienia liniowego (w szczególności mogą być redagowane w formacie RTF - WORD), tabelaryczną (np. księga inwentarzowa, zestawienia statystyczne), kart katalogowych (katalogu alfabetycznego, odsyłaczy i in.) oraz naklejek identyfikujących poszczególne jednostki inwentarzowe (kody kreskowe). Szczególną formą zestawienia jest eksport danych do pliku (np. ISO2709 lub tekstowego). Możliwość wykonywania zestawień statystycznych zdalnie bardzo upraszcza sprawozdawczość poszczególnych placówek. Zdalna obsługa inwentarzy konieczna jest w katalogu centralnym obejmującym zasoby (inwentarze) placówek. Poza wydrukiem księgi inwentarzowej usługa umożliwia przygotowanie
3 jednostek inwentarzowych do wycofania, przeprowadzenie procedury wycofania tych jednostek z inwentarza (protokoły ubytkowania) oraz tworzenie zestawień ilościowo/wartościowych dotyczących nabytków i ubytków, struktury zbiorów itp. W ramach tej usługi każda placówka może dosługiwać swoje inwentarze oraz okresowo, zdalnie przeprowadzać kontrolę zbiorów (skontrum). Zdalne gromadzenie umożliwia przygotowanie zakupu centralnego na podstawie zamówień (dezyderatów) składanych poprzez poszczególne placówki. Zdalna wypożyczalnia umożliwia prawidłowe zorganizowanie pracy pozornie odrębnych wypożyczalni w poszczególnych placówkach. W naszym rozwiązaniu wspólna dla wszystkich jest baza czytelników, co oznacza, że wydana w dowolnym miejscu legitymacja uprawnia czytelnika do korzystania ze wszystkich placówek. Rejestracja odwiedzin, wypożyczeń, rezerwacji i zamówień odbywa się z podziałem na poszczególne wypożyczalnie, dlatego zestawienia statystyczne dla placówek mogą być wykonywane odrębnie. Zamawianie i rezerwowanie są usługami z których czytelnik korzysta poprzez serwis WWW. Przyjęliśmy, że można zarezerwować egzemplarz w jednej, wskazanej placówce lub - jeśli nie ma dostępnych egzemplarzy - zamówić tytuł. Zamówić tytuł można równocześnie w wielu placówkach; zamówienie zostanie zrealizowane przez placówkę, w której najszybciej pojawi się egzemplarz tego tytułu. Przykład pierwszy: System Bibliografii Regionalnej Województwa Łódzkiego W bibliotekach publicznych województwa łódzkiego wykorzystywane są trzy systemy biblioteczne: MAK (Biblioteka Narodowa), SOWA i SOWA2 (firma SOKRATSS-software). Wybrane biblioteki tworzą własne bazy bibliograficzne dotyczące zagadnień regionalnych. Zadanie zbudowania katalogu obejmującego wszystkie informacje bibliograficzne dotyczące województwa łódzkiego stało się jednym z elementów kontraktu wojewódzkiego realizowanego od 2002 r. Uczestniczymy w realizacji tego zadania przede wszystkim jako projektanci i wykonawcy oprogramowania Systemu Bibliografii Regionalnej, ale także w zakresie nadzoru wdrożeniowego. Kolejnym krokiem decyzyjnym było przyjęcie formatu danych stosowanego w katalogu centralnym Bibliografii Województwa Łódzkiego. Początkowo zaproponowaliśmy zbudowanie katalogu wieloformatowego, który umożliwia gromadzenie rekordów o wielu formatach ze szczególnym uwzględnieniem tych, którymi dotychczas posługiwały się biblioteki województwa łódzkiego (MARC-BN, SOWA, SOWA-2/TSXT, MARC-21). Katalog wieloformatowy mógłby przejąć istniejące dane bez konieczności ich konwersji. Różnorodność formatów wewnętrznych w zasadzie może być niezauważalna przy prezentacji danych (np. w wydruku bibliografii), ale komplikuje język wyszukiwawczy i zasady wprowadzania danych. Ostatecznie przyjęto, że w ramach Bibliografii Regionalnej Województwa Łódzkiego stosowany będzie format MARC-21 zarówno dla rekordów bibliograficznych, jak i rekordów kartotek wzorcowych. Decyzja ta należała do zamawiającego. Pomimo tego iż w 2002 r. dysponowaliśmy oprogramowaniem, które w ogólności spełniało wymagania zamawiającego, zaproponowaliśmy realizację zadania w dwóch etapach. W pierwszym został zainstalowany serwer systemu SOWA-2 (Linux). Serwer udostępnia specjalny protokół komunikacyjny oparty na TCP/IP. Dostarczone oprogramowanie "klientów" obejmowało program podstawowy (SOWA_TCP), program importu danych MARC 21 (plik tekstowy lub ISO-2709) oraz program klienta protokołu Z39.50 zintegrowany z usługą przejmowania danych do katalogu centralnego. Oprogramowanie klienckie jest zainstalowane w wybranych bibliotekach województwa łódzkiego oraz w pracowni komputerowej WiMBP w Łodzi. W pierwszym etapie dane były wprowadzane jedynie dla potrzeb testowania i szkolenia personelu bibliotek. Równocześnie uzgadnialiśmy jeszcze elementy formatu danych, szczególnie w zakresie pól niestandardowych (grupa 9XX). W wyniku zebranych doświadczeń musieliśmy zweryfikować budowę formularzy wprowadzania danych. Pierwotnie proponowaliśmy stosowanie różnych formularzy dla różnych rodzajów materiałów. Po wstępnym okresie eksploatacji okazało się,
4 że przyjęta przez nas budowa formularza w zastosowaniu do różnorodnych materiałów jest mało elastyczna, dlatego opracowany został mechanizm dynamicznego formularza, który użytkownik kształtuje na bieżąco. Uzyskaliśmy w ten sposób ujednolicenie zasad wprowadzania danych dla wszystkich rodzajów rekordów MARC-21. Zebrane w pierwszym etapie doświadczenia zainspirowały nas opracowaniem zupełnie nowego oprogramowania serwera systemu. Ponieważ założyliśmy, że baza powinna umożliwiać roczny przyrost ok. 70.000 rekordów, zaproponowaliśmy zrealizowanie systemu docelowego na serwerze SQL. Dla potrzeb Bibliografii Regionalnej wykorzystaliśmy darmowy system zarządzania bazą danych Postgres, ale nasze rozwiązania testowaliśmy także na innych systemach. Aby zachować zgodność z wcześniejszym oprogramowaniem klienckim, zbudowaliśmy serwer aplikacji, który bezpośrednio korzysta z SQL. Trójpoziomowa architektura systemu: klient - serwer aplikacji - system zarządzania bazą danych należy do najnowocześniejszych rozwiązań informatycznych. Istotnym elementem Systemu Bibliografii Regionalnej są funkcje umożliwiające wymianę danych z innymi systemami. Przewidzieliśmy trzy rodzaje takich narzędzi: eksport i import plików (tekstowy lub ISO 2709), pobieranie "on-line" (protokół Z39.50) oraz programy konwertujące dane z formatów innych niż MARC-21. Pliki MARC-21 tekstowe lub ISO 2709 można uzyskać poprzez Internet za pomocą przeglądarki WWW (np. Karo, strony domowe Nukat, BN). Katalogi wielu dużych bibliotek dostępne często także poprzez Z39.50, co znacznie ułatwia przejmowanie danych (jeden przycisk zamiast uruchamiania kilku odrębnych programów). Niestety, na ogół nie są udostępniane rekordy kartotek wzorcowych. Wyjątkiem jest Słownik Języka Haseł Przedmiotowych Biblioteki Narodowej, który można otrzymać w formie pliku (nie jest dostępny "on-line"). Dostęp do kartotek wzorcowych Nukat mają jedynie biblioteki stowarzyszone i to wyłącznie poprzez specjalne oprogramowanie, tak więc kontrola "on-line" nie jest możliwa. Wydaje się, że problemy aktualności kartotek wzorcowych Systemu Bibliografii Regionalnej można rozwiązać jedynie poprzez dostęp "on-line" do centralnej kartoteki haseł. Brak takiej kartoteki w chwili obecnej uniemożliwia automatyczne synchronizowanie katalogów. W ramach Systemu Bibliografii Regionalnej przewidujemy dostęp "on-line" zarówno do rekordów bibliograficznych, jak i wzorcowych. Możliwość ta zostanie wykorzystana w przyszłości przy automatycznym propagowaniu zmian rekordów do katalogów, w których znalazły się kopie pobrane z katalogu centralnego. Przykład drugi: system MBP w Olsztynie Drugi - zupełnie odmienny przykład - to system z centralnym katalogiem zbiorów placówek Miejskiej Biblioteki Publicznej w Olsztynie. Początkowo w "centrali" i w wybranych filiach działał system SOWA w wersji tekstowej. Nowo zakupione pozycje opracowywane były w "centrali", natomiast poszczególne placówki pracowały na kopiach katalogu. Placówki uzupełniały informacje o posiadanych zasobach wprowadzając m.in. sygnatury. Brak wspólnej sieci komputerowej bardzo komplikował wymianę danych, która była wykonywana każdorazowo po opracowaniu nowo zakupionych pozycji. Mimo odrębności instalacji komputerowych w zautomatyzowanych wypożyczalniach wprowadzono jednolity system numerowania czytelników, dzięki któremu czytelnik był identyfikowany we wszystkich wypożyczalniach jednym kodem kreskowym (na legitymacji bibliotecznej). Oczywiście dane czytelnika w każdej wypożyczalni wprowadzało się odrębnie. Przy okazji uruchomienia nowej, nowoczesnej placówki "Planeta 11" biblioteki zostały wyposażone w łącza z Internetem, które umożliwiły zbudowanie systemu ze scentralizowanym katologiem. We wspólnej bazie danych znalazły się dane czytelników oraz rejestry poszczególnych wypożyczalni. Do zrealizowania sytemu wykorzystaliśmy rozwiązanie klient/serwer systemu SOWA. W chwili obecnej system łączy pięć punktów Olsztyna: Dział Opracowania, Filie nr 3, 5 i 9 oraz placówkę "Planeta 11".
5 Wspólna baza danych rodzi wiele nowych możliwości zrealizowania procedur wypożyczalni. Podstawowym założeniem jest oczywiście utworzenie wspólnej bazy danych osobowych czytelników. Dzięki temu czytelnik zapisywany jest do systemu jednorazowo i może korzystać od razu ze wszystkich placówek. Oczywiście wspólna baza danych podlega szczególnej ochronie i jest dostępna jedynie dla uprawnionych pracowników wypożyczalni. W naszym rozwiązaniu przyjęliśmy, że konta czytelnika (wypożyczenia, rezerwacje, zamówienia, należności, monity) są wspólne dla wszystkich placówek. Dzieki temu przekroczenie limitu wypożyczeń wstrzymuje możliwość wypożyczania w dowolnej placówce. Należność za przetrzymane (lub zniszczone) pozycje naliczana jest w placówce, która dokonała wypożyczenia, ale zapłata tej należności może nastąpić w dowolnej placówce. Wprowadziliśmy ograniczenia pozwalające obsługiwać (wypożyczać, rezerwować, zamawiać) w danej placówce tylko egzemplarze przypisane do danej lokalizacji, chociaż możliwa jest realizacja systemu bez tych ograniczeń. Czytelnik może (np. poprzez WWW) zarezerwować jeden egzemplarz wybranej książki we wskazanej placówce, o ile nie wypożyczył lub zarezerwował (w dowolnej placówce) innego egzemplarza tej samej książki. Zamówienie książki aktualnie wypożyczonej może być adresowane do wszystkich placówek posiadających dany tytuł. Realizacja zamówienia następuje w placówce, w której zostanie zwrócony egzemplarz zamawianej książki. Kolejnym problemem było ustalenie zasad monitowania przetrzymywanych pozycji. Przyjęliśmy, że jeden dokument monitu obejmuje pozycje przetrzymane w danej placówce. Monity drukowane są odrębnie przez poszczególne placówki, odrębnie też jest rejestrowane wysłanie monitu (i naliczenie opłaty). Zestawienia statystyczne dotyczące pracy wypożyczalni mogą być realizowane dla wskazanej placówki, można też uzyskać zestawienia łączne dla całej sieci. Ponieważ odwiedziny czytelników rejestrowane są z podziałem na poszczególne placówki nie ma problemu z dotarciem do daty zarejestrowania czytelnika w konkretnej placówce. Właściwość ta wykorzystana jest w zestawieniach czytelników zarejestrowanych, nowozapisanych i odwiedzających. Zestawienia dotyczące wypożyczeń realizowane są na podstawie lokalizacji przypisanych poszczególnym egzemplarzom. Podobne rozwiązania funkcjonują np. w WiMBP w Gorzowie Wielkopolskim, MBP w Sanoku i Łańcucie od ponad roku. Trwa wdrażanie sytemu w MBP w Slblągu. Doświadczenia użytkowników związane z eksploatacją systemów są pozytywne. Najważniejszą zaletą tych instalacji jest brak konieczności synchronizowania odrębnych baz danych, co - przy instalacjach autonomicznych - jest bardzo pracochłonne.