O bazach danych

Poniższy tekst ma na celu przybliżyć co to jest baza danych, do czego jest stosowana i jakie rodzaje jest baz danych. Na pewno nie dowiesz się szczegółów na temat konkretnym silniku ponieważ jest wiele lepszych tekstów w sieci na ten temat.

Czym więc jest baza danych. Jest to ogólnie zbiór danych będący w relacji. Kiedyś taki mądry pan Edgar Codd pracujący dla IBM, o którym możecie sobie poczytać klikając na nazwisko opublikował pracę A Relational Model of Data for Large Shared Data Banks  na temat modelu relacyjnego, który opierał się na na organizacji danych bazujący na matematycznej teorii mnogości w szczególności na pojęciu relacji. Więcej można przeczytać na przykład na Wikipedii wyszukując frazę Model relacyjny. Jako pierwszymi implementatorami teorii nie był jednak IBM tylko konkurencja.

Na dzień dzisiejszy czyli 11 lutego 2018 zarejestrowanych jest 314 silników baz danych w tym ponad 130 to relacyjne bazy danych. Osobiście sprawdzałem tylko to na jednej stronie (source: https://db-engines.com/en/ranking) więc w rzeczywistości może być sporo więcej. Może by się wydawać że to dużo i tak jest. O większości baz nawet nie słyszałem. Nie znaczy że to źle, bo każda baza miały jakiś cel. Czy to czysto akademicki czy też osoba, która miała pomysł chciała wdrożyć własną wizję.

Jak wgłębimy się troche w temat to okaże się że baza bazie nie jest równa więc jeśli będziemy chcieli prowadzić sklepik w internecie nie weźmiemy z pewnością bazy Hadoop albo drogiej bazy Oracle chociaż czemu nie tylko czy będzie miało to sens? No raczej nie.

Tak naprawdę najbardziej liczą się tylko Ci nawięksi ale nie pod kontem zasobności portfela. Przyjrzyjmy się takiemu silnikowi jak PostgreSQL oparty wyłącznie na kodzie OpenSource i rozwijany w ramach tejże społeczności. Każdy może zainstalować i korzystać do woli. Drugim przykładem jest MariaDB wyrósła z MySQL zanim wykupił go Oracle. Są w stanie same się utrzymywać chociaż widać że wielkie korporacje mogą wkładać w tą społeczność sporo pieniędzy. Drugą rzeczą na jaką należy zwrócić uwagę że część silników jest zaadoptowana do działania w chmurze publicznej gdzie przykładem są bazy SQL w Azure.