Zaloguj się

Bazy danych - kłopot czy dobrodziejstwo?

  •  Dariusz Gościniak
  • Kategoria: Logistyka

Pozycja baz danych w obrocie ekonomicznym zyskuje obecnie błyskawicznie na znaczeniu. Proces ten zaś trwa już niemal piętnaście lat.

Baza danych to, najprościej mówiąc, uporządkowany zbiór informacji. Najprostszą jej formą jest zbiór rekordów ułożony w takiej postaci, jak ma to miejsce np. w arkuszach kalkulacyjnych. Rekordy złożone są z pól, do których wpisywana jest informacja, np. liczba porządkowa, imię, nazwisko, miasto, ulica i tym podobne dane. O takiej bazie można powiedzieć, że ma strukturę płaską.

Często jest tak, że do pojedynczego pola lub rekordu trzeba dopisać kolejne informacje. Tworzone są wtedy kolejne „płaskie” arkusze, a baza staje się bazą wielowymiarową. Poszczególne dane są między sobą skorelowane - odbywa się to poprzez nadanie każdemu z rekordów unikalnego indeksu, indeks ten jest podstawą powiązania informacji w różnych tabelach występujących w bazie. Indeksem przykładowo może być informacja występująca w powiązanych ze sobą tabelach. Ważne jest, aby zawsze była wpisana i aby była niepowtarzalna dla każdego rekordu.

Projektując bazę danych trudno jest przewidzieć, że warunek ten zawsze będzie spełniony, dlatego też zwykle stosuje się w rekordzie osobne pole indeksowe. Takie rozbicie informacji na wiele tabel ma jeszcze jedną zaletę. Pozwala osobno posortować rekordy w każdej z tabel, przez co można szybciej wyszukać potrzebne informacje według dowolnego klucza. Ten sposób organizacji danych stosowany jest w relacyjnych bazach danych. Do takich należą bazy: Oracle, Sybase, My-SQL, DB2 czy MS SQL. Bazy tego typu są obecnie najbardziej rozpowszechnione. Do ich zalet należy między innymi niezależność od języków programowania, bardzo łatwo jest w nich wyszukiwać informacje z użyciem złożonych parametrów wyszukiwania, pozwalają sprawnie zarządzać dużymi ilościami danych i dostępem do nich.

Innym typem baz danych są bazy obiektowe, w których każdy element bazy ma przypisane pewne cechy. Doskonałym przykładem zastosowania baz tego typu są systemy eksperckie albo systemy CAD. W tych ostatnich obiektem w bazie może być np. belka regałowa, która ma przypisane pewne cechy - wymiary, materiał, wytrzymałość, długość, kolor i wiele innych. Z bazami tego typu wiążą się pewne charakterystyczne pojęcia, takie jak obiekt i jego identyfikator, atrybuty i metody, hermetyzacja i przekazywanie komunikatów, klasa, hierarchia klas i dziedziczenie. Przykładem takiej bazy jest NDS stosowany w systemach produkowanych przez firmę Novell. Podobny mechanizm został wprowadzony w systemach Windows 2000 np. w Active Directory. W tego typu bazach obiektem jest np. użytkownik, do którego przypisane są atrybuty - prawa dostępu. Dany obiekt – użytkownik, może np. należeć do klasy - użytkownicy zaawansowani, a tym samym dziedziczyć atrybuty klasy (np. prawa dostępu do określonych katalogów czy usług). Klasy z kolei mogą tworzyć hierarchię klas, o strukturze drzewa. Dostęp do bazy danych odbywa poprzez wysyłanie komunikatów do obiektów w celu uzyskania dostępu do jego atrybutów. Nie ma innej drogi uzyskania dostępu oprócz zdefiniowanego dla niego interfejsu.

Gromadzenie danych bez możliwości zarządzania nimi nie ma sensu, dlatego z bazą danych musi być związany serwer bazy danych, którego zadaniem jest przede wszystkim zarządzanie nią, ale również komunikacja z klientem. Serwery baz danych mogą działać na pojedynczym komputerze jak również na wielu komputerach, przy czym nie muszą to być jednostki takie same ani nie muszą mieć takich samych systemów operacyjnych. W takich przypadkach mamy do czynienia z systemami rozproszonymi. Rozproszone środowisko przetwarzania danych jest niewidoczne dla pracującego w nim użytkownika, jednocześnie oferując możliwość replikacji zawartości baz danych pomiędzy poszczególnymi serwerami, co między innymi pozwala uodpornić system na awarie sprzętowe, umożliwia szybszy dostęp do danych i pozwala na stosowanie niejednorodnej polityki archiwizowania danych w przypadku różnych ośrodków przetwarzania danych.

Do zarządzania bazą danych służą mechanizmy DBMS (Database Management System), działające na serwerze bazy danych. Mechanizm ten odpowiada za obsługę funkcji związanych z zarządzaniem danymi czy przyjmowaniem zapytań od użytkowników i odpowiadaniem na nie. To właśnie DBMS odpowiedzialny jest za organizację informacji w bazie danych w struktury, takie jak rekordy, tablice czy obiekty. Drugim elementem jest system komunikacji z klientem. W jednowarstwowym modelu bazy danych klient bezpośrednio modyfikuje jej zawartość, wpisując informacje. W modelu dwuwarstwowym i wyższych, powszechnie stosowany jest język zapytań - SQL (Structured Query Language). Ponieważ wielu producentów stosuje własne wersje SQL dostosowane do potrzeb ich produktów, dlatego kolejnym elementem pośredniczącym w komunikacji z DBMS są interfejsy API. Jednym z bardziej znanych tego typu interfejsów jest Microsoft ODBC. Podobne to IDAPI firmy Borland, DRDA firmy IBM, DAL firmy Apple czy Glue firmy Oracle.

Komunikacja klient-serwer może mieć różną postać. Mogą to być lokalne bazy danych, w których zarówno klient, jak i serwer (który może raczej należałoby nazwać w takim przypadku motorem bazy danych (Database Engine), znajdują się na tym samym komputerze. Są to produkty typu MS Access. Może to być model dwuwarstwowy, w którym na komputerze użytkownika zainstalowana jest aplikacja klienta, komunikująca się za pomocą odpowiednich sterowników z serwerem bazy danych. Model trójwarstwowy, zwany też „cienkim klientem” (Think Client), to rozwiązanie, w którym wszystkie elementy, tzn. serwer, interfejs komunikacyjny i klient, umieszczone są na serwerze (lub serwerach w rozproszonym systemie bazy danych). Użytkownik ma dostęp do klienta za pośrednictwem serwera WWW po stronie serwera i przeglądarki stron WWW po stronie klienta. Architektura trójwarstwowa, oprócz zmniejszenia ilości danych wymienianych pomiędzy serwerem bazy danych a klientem, pozwala dodatkowo na wykorzystywanie tych samych aplikacji w środowiskach silnie heterogenicznych.

Elementem, który z racji swojej obszerności zostanie jedynie zasygnalizowany, jest kwestia bezpieczeństwa. Serwer, na którym znajduje się motor bazy danych, nawet w przypadku, gdy znajduje się za firewallem, musi umożliwiać połączenie z bazą, w przeciwnym razie straciłby swoją funkcjonalność. Oznacza to jednak, że w przypadku niewłaściwie zaprojektowanej bazy danych może bardzo łatwo dojść do kradzieży lub nieautoryzowanej zmiany informacji w tej bazie.

Poza bezpieczeństwem systemowym, bazy danych jako specyficzne dobra niematerialne - bowiem ich faktyczna wartość tkwi w ich użytkowym charakterze - mocno kontrastują z tradycyjnymi utworami artystycznymi, chronionymi prawem autorskim. Właśnie ten utylitaryzm sprawia, że bardzo często prawo autorskie nie obejmuje ich swoim zakresem.

Wystarczająca w latach 80. XX w. autorska ochrona tego typu dóbr informatycznych już na początku lat dziewięćdziesiątych ub. w. coraz wyraźniej traciła na aktualności i adekwatności. Lobby twórców banków danych bardzo szybko poczuło się zaniepokojone sytuacją, w której krajowe prawa autorskie bądź zaczęły odmawiać ochrony ich produktom ze względu na kłopoty ze spełnieniem przesłanki twórczego charakteru dzieł, bądź też dobra przez nich wytwarzane korzystały z tej ochrony tylko w niektórych krajach lub regionach. Do głosu zaczęły też dochodzić słuszne opinie twórców nieautorskich baz danych domagających się ochrony poniesionych nakładów ekonomicznych.

Nowość w tej kwestii stanowi natomiast wprowadzenie w ramach dyrektywy z 1996 r. reżimu ochrony sui generis baz danych. Odnosi się on zarówno do baz autorskich, jak i nie autorskich ze względu na niespełnienie przesłanki twórczego charakteru utworu. Elementem koniecznym objęcia danej bazy ochroną typu sui generis jest wykazanie przez producenta faktu poniesienia istotnego wkładu ilościowego lub jakościowego w otrzymanie, weryfikację lub prezentację zawartości takiej bazy.

Istotna jest treść prawa płynącego z reżimu ochrony sui generis. Mianowicie uprawnienie podmiotu posiadającego prawa do takiego dobra wyraża się w skutecznym erga omnes (wobec wszystkich), zakazie zarówno pobierania całości lub istotnej części zawartości bazy danych, jak i powtórnego wykorzystywania takiej całości lub części.

Pobieranie definiowane jest w dyrektywie jako trwałe lub okresowe przeniesienie całej lub istotnej części zawartości bazy danych dowolnymi środkami i w dowolnej formie na inny nośnik. Natomiast częste jednostkowe pobieranie nawet małych, nieistotnych części bazy traktowane jest jako korzystanie z jej istotnej części. Powtórne wykorzystanie zaś obejmuje wszelkie formy publicznego udostępniania całej lub istotnej części zawartości bazy danych przez rozpowszechnianie kopii, ich wynajmowanie, transmisję bezpośrednią online lub w inny sposób.

Jeżeli idzie o długość okresu ochrony przewidzianego modelem sui generis to wynosi on 15 lat. Okres ten jest liczony od początku roku następującego po roku, w którym bank danych ukończono. Jeżeli jednak przed upływem tego terminu został on w jakikolwiek sposób udostępniony publicznie, to początek biegu okresu ochrony wyznacza pierwsze publiczne udostępnienie. Wyraźnie można tu dostrzec, że okres ten jest krótszy od przewidzianego prawem autorskim.

Powrót

Zaloguj się by skomentować