Baza danych to konieczność, gdy zachodzi potrzeba gromadzenia i porządkowania informacji biznesowych. Gdy firma jest mała, jedno lub kilkuosobowa, może wspierać się np. arkuszami kalkulacyjnymi lub folderami zarządzanymi na twardym dysku. Wraz ze wzrostem skali działalności rozwiązania te szybko przestają wystarczać. Wówczas można sięgać po darmowe bazy danych, które, w swoich najprostszych wersjach w miarę dalszego rozwoju firmy, również stają się niewystarczające. Czym się kierować, gdy nadchodzi czas na wybór profesjonalnego rozwiązania?
Hostować czy u siebie?
Gama produktów bazodanowych jest szeroka i każdy może znaleźć na rynku optymalny sposób stworzenia firmowej bazy danych. 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.
Jedną z podstawowych kwestii, jakie przedsiębiorca powinien ustalić, zanim podejmie poszukiwanie bazy danych jest podjęcie decyzji, czy chce on korzystać z usługi hostingu czy też potrzebna mu jest własna infrastruktura sprzętowa w firmie. Kolejne decyzje dotyczą określenia wymaganego miejsca na firmowe dane, obciążeń bazy danych w trakcie pracy oraz preferowanego czasu wykupu licencji na oprogramowanie do zarządzania bazą danych.
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ę?
Na wybór oferty bazy danych ma wpływ wiele czynników, które mają różną wagę w zależności od wielkości firmy i jej doświadczenia z pracą z bazami danych. Kluczowym kryterium wydaje się być cena rozwiązania. Oto lista, którą przedsiębiorca powinien brać pod uwagę analizując ceny:
- 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 z 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.
Wspomniane czynniki są o tyle istotne, że z każdym z nich wiąże się pewne, czasem istotne ryzyko organizacji. Źle obliczone potrzeby firmy mogą skutkować zakupem zbyt dużej bazy danych, która nie zostanie w pełni wykorzystana. Wybierając bazę danych, której nie można zintegrować z bazą już istniejącą, firma naraża się na koszt jej wymiany. Z kolei produkty, których nie można rozbudowywać, utrudnią w przyszłości płynny rozwój bazy danych, która powinna na każdym etapie rozwoju firmy odpowiadać jej potrzebom. Jeśli w organizacji nie ma przeszkolonego personelu lub gdy on jest, lecz zostanie kupione rozwiązanie dla niego obce, konieczne będzie poniesienie kosztów szkoleń. Same szkolenia z kolei nie wyeliminują ryzyka wolniejszej reakcji zespołu w przypadku poważnej awarii. Brak wsparcia technicznego może z kolei skutkować posiadaniem niestabilnego systemu, niedostatecznie zabezpieczonego lub błędnie działającego. Zbyt niska dostępność to ryzyko wystąpienia sytuacji odcięcia firmy od dostępu do danych – a więc przestojów w pracy i związanych z tym strat finansowych. Niewłaściwe lub słabe zabezpieczenia mogą z kolei przyczynić się do nieodwracalnych strat związanych z utratą informacji niezbędnych do prowadzenia działalności biznesowej.
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. Potrzebna będzie być może inwestycja w sprzęt lub klaster baz danych. W miarę gromadzenia się dużej ilości danych niezbędne stanie się archiwum danych, które z jednej strony już się przedawniły, ale z drugiej mogą być materiałem pomocnym w analizach biznesowych. Kolejnym krokiem w rozwoju jest hurtownia danych. Przy bardzo dużych systemach kolejnym wyzwaniem jest rozproszenie systemu do wielu lokalizacji, co umożliwi np. klaster o zasięgu geograficznym.
Rozbudowywanie firmowej bazy danych i rosnące zapotrzebowanie na funkcje analityczne prowadzą do konieczności tworzenia hurtowni danych. Hurtownie umożliwiają prowadzenie analiz biznesowych, przewidywania sprzedaży, analizy rynku i konkurencji. W oparciu o hurtownie można tworzyć systemy BI (Business Intelligence), które pozwalają prowadzić zaawansowane analizy bieżącej działalności, planować budżety i prognozować trendy. 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.
Jak wynika z raportu firmy IDC – Worldwide Storage Software QView – rynek oprogramowania do systemów pamięci masowej jest mocny: w 2011 roku dochód dla tej branży wzrósł o 11,6% w stosunku do roku poprzedniego, osiągając rekordowy poziom ponad 14 mld dolarów. Największy wzrost na tym rynku odnotowały takie sektory jak: rozwiązania do ochrony i odzyskiwania danych, oprogramowanie do replikacji danych, oprogramowanie infrastruktury przechowywania danych, a także oprogramowanie do zarządzania systemami pamięci masowych.
Autor tekstu jest menedżerem ds. kluczowych klientów w Pentacomp SA (kontakt: [email protected]).