6 darmowych baz danych z komercyjnymi możliwościami

Darmowe lub open source’owe bazy danych zasilają setki milionów aplikacji na świecie, ale jak efektywne są to technologie i jak są ze sobą porównywalne. Aby znaleźć odpowiedź przetestowaliśmy sześć popularnych darmowych oraz open source: Microsoft SQL Server Express, PostgreSQL, Oracle MySQL, MariaDB, Apache Derby oraz Firebird SQL.

Wybór kandydatów do naszego przeglądu padł na w pełni funkcjonalne zawierające takie funkcjonalności, jak procedury, funkcje, wyzwalacze i kursory systemy relacyjnych baz danych (RDBMS). Pomimo że nie przeprowadziliśmy bardzo wyrafinowanych testów, to sprawdziliśmy te silniki baz danych na dużych tabelach danych. Dane testowe stanowił plik logów z jednego z naszych serwerów webowych posiadający ponad milion w wpisów. Ten sam zestaw danych był wykorzystywany na wszystkich testowanych produktach. Uruchomiliśmy standardowe testy, takie jak masowe dodawanie i importowanie danych oraz podstawowe manipulacje na danych, jak SELECT, UPDATE oraz DELETE. W środowisku testowym wykorzystaliśmy 64-bitowe serwery stelażowe Dell, pracujące pod kontrolą Windows Server 2008 R2. Poza MS SQL Server Express, wszystkie testowane produkty są wieloplatformowe.

Microsoft SQL Server Express 2012

SQL Server Express jest darmową wersją flagowej bazy danych Microsoft - SQL Server. Ta wersja jest pozycjonowana do zastosowań na mniejszą skalę i aplikacji wbudowanych. Wersja Express oferuje wiele z funkcjonalności wersji komercyjnej z limitami dotyczącymi skalowalności.

Limity dotyczą liczby procesorów (jedno gniazdo, maksymalnie 4 rdzenie), pamięci (wykorzystywany 1 GB, serwer może mieć zainstalowanych więcej) oraz rozmiaru bazy danych (10 GB). Spośród sześciu testowanych przez nas produktów tylko ten posiadał tego typu limity. W przypadku większości zastosowań o małej i średniej skali nie będzie to jednak problemem.

Instalacja SQL Servera jest czasochłonna i wersja Express nie jest tu wyjątkiem. Podczas pracy z instalatorem do wybrania i skonfigurowania jest szereg parametrów, np. model bezpieczeństwa (wybraliśmy mieszany SQL i Windows).

SQL Server Management Studio stanowi kompletny interfejs do zarządzania z narzędziami dla administratora i dewelopera. W przypadku tych drugich prosta jest integracja z takimi pakietami jak Visual Studio oraz SQL Server Developer Studio.

Dodawanie miliona rekordów zajęło nieco ponad minutę, dla porównania - w przypadku "standardowej" wersji SQL Servera - 45 s. Pobranie pierwszych 100 tys. rekordów zajęło 10 s w wersji Express i 3 w standardowej. Gdy pracowaliśmy z mniejszymi bazami okazało się, że wydajność wersji Express jest bardzo zbliżona do wersji płatnej.

Funkcje bezpieczeństwa to podstawowe mechanizmy audytu i kontrola dostępu do danych i obiektów na podstawie zdefiniowanych ról użytykowników. Wsparcie dla SQL Server Express jest dostępne przez Microsoft Developer Network i szereg forów oraz blogów internetowych.

Chociaż SQL Server Express nie jest wyposażony we wszystkie funkcje rodziny komercyjnej - takie jak np. wysoka dostępność czy klastrowanie - to jest to dojrzały i solidny serwer bazodanowy, który z powodzeniem można wykorzystać w większości zastosowań.