Baza danych to konieczność, gdy zachodzi potrzeba gromadzenia i porządkowania informacji biznesowych. Czym się kierować, gdy nadchodzi czas na wybór profesjonalnego rozwiązania?
Hostować czy u siebie?
Jedną z możliwych ścieżek jest zakup serwera z odpowiednio dużą pojemnością dysku oraz procesorem adekwatnym do obciążeń, czyli liczby stanowisk korzystających z serwera oraz ilości zapytań do bazy danych. Do obsługi bazy danych konieczne jest właściwe oprogramowanie, na które licencję najczęściej wykupuje się na rok. Cena licencji jest uzależniona m.in. od wielkości przestrzeni dyskowej oraz liczby procesorów, z których baza będzie korzystać. Drugą ze ścieżek jest wynajęcie, od firmy świadczącej takie usługi, odpowiedniej przestrzeni dyskowej i zewnętrznego serwera oraz kupno oprogramowania do zarządzania bazą danych wraz z potrzebnymi dodatkami, które zostaną na nich zainstalowane. W takim rozwiązaniu firma otrzymuje usługę zwaną hostingiem bazy danych, do której ma dostęp zdalny.
Jakie koszty?
Ceny baz danych osiągają dużą rozpiętość w zależności od liczby użytkowników i mogą wynosić od kilkuset złotych za najprostsze rozwiązania do kilkudziesięciu lub kilkuset tysięcy złotych za rozwiązania klasy Enterprise.
Licencja na oprogramowanie do zarządzania bazą danych to nie jedyny koszt. Poza tą pozycją należy zaplanować wydatki na:
- sprzęt,
- macierz dyskową,
- licencje na bazę danych,
- roczne wsparcie,
- licencje na system operacyjny serwera,
- roczne wsparcie na system operacyjny,
- licencje na system backupu.
Firmy, dla których strategiczną kwestią jest bezpieczeństwo danych i ochrona przed skutkami awarii baz danych, powinny zbudować klaster, czyli grupę (w tym przypadku dwóch) połączonych ze sobą, dublujących swoje zadania systemów. W takich przypadkach wydatki należy podwoić i dodać do nich narzut za architekturę klastra. Jeśli firma chce mieć te same bazy danych z klastrem w dwóch lokalizacjach (co podnosi bezpieczeństwo w przypadku fizycznego zniszczenia którejś z lokalizacji), musi wydatki pomnożyć przez cztery, dodając również narzut za architekturę klastrów. Aby móc na bieżąco replikować dane (utrzymywać zgodność kopii baz danych) między lokalizacjami, należy jeszcze dodać do kosztów wydatki na dedykowane łącze pomiędzy ośrodkami.
Na co zwracać uwagę
- możliwość zintegrowania bazy danych z posiadaną infrastrukturą i oprogramowaniem systemowym. Ważny jest system operacyjny, na jakim pracuje baza – jeśli organizacja dysponuje serwerami z systemem operacyjnym Linux, nie może wybrać bazy, która będzie pracowała wyłącznie na systemie Windows. Niektóre bazy danych mogą pracować na obu systemach operacyjnych. Przy wyborze należy także sprawdzić, czy posiadany system backupu (tworzenia kopii danych przeznaczonej do odtworzenia bazy w wypadku awarii) można zintegrować z nową bazą danych.
- skalowalność bazy danych to ważny argument dla dynamicznie rozwijających się firm i tych, które dopiero zaczynając, nie mają jeszcze zbyt wysokich wymagań wobec bazy danych. Istotne jest, by do bazy można było dodać kolejny serwer lub pracować w klastrze.
- przeszkolony zespół IT - jeśli organizacja dysponuje pracownikami IT, którzy mają doświadczenie z bazą danych konkretnego producenta, to naturalny wybór kolejnego silnika (oprogramowania zarządzającego danymi) będzie zmierzał również w kierunku produktów tej firmy.
- wsparcie techniczne – dla biznesu istotny jest czas reakcji na wykryte błędy. Ze względu na potrzebę utrzymania ciągłości pracy firmy czas ten powinien być możliwie jak najkrótszy.
- wysoka dostępność systemu – ze względu na specyfikę prowadzonej działalności większość firm potrzebuje zapewnienia ciągłego dostępu do serwera. Dlatego warto zwrócić uwagę na produkty, które posiadają rozwiązania HA (High Availability). Może to być np. klastrowanie serwerów, które zapewnia działanie systemów pomimo awarii części jego elementów.
- wysoka wydajność systemu – musi być tym wyższa, im większa liczba pracowników będzie w niego korzystała i im więcej danych, również historycznych, będzie przechowywanych w bazie danych.
- bezpieczeństwo – ważnym zabezpieczeniem jest szyfrowanie danych; istotny jest również szybki czas reakcji na wykryte błędy bezpieczeństwa oraz certyfikaty bezpieczeństwa, którymi może się pochwalić producent.
Pułapki i niespodzianki
Jedną z pułapek na etapie wyboru bazy danych jest pozorne podobieństwo funkcjonalności różnych systemów. Najczęściej jednak wnikliwa analiza rozwiązań dowodzi zasadności występujących różnic w cenach. Inna pułapka wiąże się z modelami licencjonowania baz danych, które są na tyle zawiłe, że organizacja może niechcący kupić za mało lub za dużo. Częstym błędem jest pomijanie, ze względu na oszczędności, środowisk testowych, które są szczególnie istotne do odtwarzania błędów, wgrywania nowych wersji oprogramowania lub ich aktualizacji w celu sprawdzenia poprawności działania bazy danych. Oferowane funkcjonalności posiadają pewne ograniczenia, np. co do ilości przechowywanych danych, dlatego trzeba szczegółowo zapoznać się z warunkami licencji. W niektórych przypadkach produkty, które zapewniają wysoką skalowalność, w praktyce okazują się narzucać w tym zakresie różne ograniczenia. W specyficznych zastosowaniach należy uważać na błędy, które mogą występować w konkretnych produktach lub ich wydaniach i dotyczyć rzadziej używanych funkcji. Mankamentem niektórych baz danych bywa również ich słaba wydajność, bez względu na to, jak mocne serwery zostaną użyte.
Baza rośnie razem z firmą
Kiedy firma się rozwija, potrzebuje coraz bardziej zaawansowanej bazy danych. Dlatego tak ważna jest skalowalność i możliwość rozbudowy infrastruktury. Przykładowo, organizacja potrzebuje systemu OLTP (Online Transaction Processing – kategoria aplikacji realizująca bieżące przetwarzanie transakcji) do prowadzenia swojej bieżącej działalności, którą jest sklep internetowy. Na pierwszym etapie potrzebna więc będzie baza OLTP do rejestrowania produktów, kontrolowania stanu magazynu, rejestrowania klientów i realizacji zamówień zgodnie z rzeczywistym przebiegiem transakcji. Wraz ze wzrostem liczby klientów i zamówień, wydajność systemu staje się kluczowa.
Bazy danych to narzędzia na tyle elastyczne, że można je dopasować do potrzeb organizacji bez względu na etap jej rozwoju czy zakres działalności. Kluczowymi kwestiami, o których należy pamiętać w trakcie analizy ofert rozwiązań jest skalowalność, dostępność, bezpieczeństwo, wydajność i oczywiście – cena.