Drizzle (serwer bazy danych) - Drizzle (database server)

Mżawka
Drizzle-logotype.svg
Deweloper (y) Brian Aker i inni
Wersja ostateczna
7.2.4 / 23 września 2012 ; 8 lat temu  ( 2012-09-23 )
Napisane w C ++
System operacyjny Wieloplatformowy POSIX
Dostępne w Angielski , wraz z tłumaczeniami GNU Gettext na 43 inne języki
Rodzaj System zarządzania bazą danych
Licencja Przede wszystkim GNU General Public License w wersji 2 i 3, z niektórymi komponentami BSD
Stronie internetowej www .drizzle .org
Image
Mżawka przypadek użycia

Drizzle to wycofany darmowy program / system zarządzania relacyjnymi bazami danych (DBMS) o otwartym kodzie źródłowym, który został rozwidlony z nieistniejącej już gałęzi rozwojowej 6.0 MySQL DBMS.

Podobnie jak MySQL, Drizzle miał architekturę klient / serwer i używa SQL jako podstawowego języka poleceń . Stare pliki Drizzle są rozpowszechniane na podstawie wersji 2 i 3 Powszechnej Licencji Publicznej GNU (GPL) z częściami, w tym sterownikami protokołów i wiadomościami replikacji na licencji BSD .

Wczesne prace nad widelcem zostały wykonane w połowie 2008 roku przez Briana Akera . Bieżący rozwój był obsługiwany przez zespół współpracowników, w skład którego wchodzili pracownicy firmy Canonical Ltd. , Google , Six Apart , Sun Microsystems , Rackspace , Data Differential, Blue Gecko, Intel , Percona , Hewlett-Packard , Red Hat i inni. Kod źródłowy Drizzle, wraz z instrukcjami dotyczącymi jego kompilacji, są dostępne na stronie projektu Launchpad .

W październiku 2010 Drizzle miał 13 478 wszystkich wkładów, łącznie 96 współpracowników i 37 aktywnych. Ogłoszono również, że Drizzle weszła do Beta. Pierwsza wersja GA została wydana w marcu 2011. Drizzle aktywnie uczestniczy w projekcie Google Summer of Code od 2010 roku.

Pod koniec 2013 r. Aktywna faza projektu dobiegła końca. W lipcu 2016 roku opiekunowie doszli do wniosku, że nadszedł czas na „oficjalne zakończenie sprawy”, ponieważ „nikt z nas nie ma już czasu, aby poświęcić się Drizzle”.

Używa

Drizzle jest ukierunkowany na rynki infrastruktury internetowej i przetwarzania w chmurze . Twórcy produktu opisują go jako „mniejszą, szczuplejszą i (miejmy nadzieję) szybszą wersję MySQL”.

Platformy i interfejsy

Drizzle jest napisany w języku programowania C ++ i przechowuje swoje dane łańcuchowe w formacie UTF-8 . Jest rozwijany dla nowoczesnych systemów operacyjnych typu Unix , w tym Linux , FreeBSD , Mac OS X i Solaris - ogólnie, dla każdego systemu operacyjnego, który jest zgodny z POSIX i ma działającą implementację GNU Autotools . Microsoft Windows nie jest obecnie obsługiwany, głównie z powodu braku obsługi Autotools, ale dyskutowano, jak to osiągnąć w rozsądny sposób.

funkcje

Drizzle to przeprojektowana wersja bazy kodu MySQL v6.0 i została zaprojektowana w oparciu o główną koncepcję posiadania architektury mikrojądra . Funkcje takie jak pamięć podręczna zapytań i system uwierzytelniania są teraz wtyczkami do bazy danych, które są zgodne z ogólnym motywem „podłączanych silników pamięci masowej”, które zostały wprowadzone w MySQL 5.1. Obsługuje PAM , LDAP i HTTP AUTH do uwierzytelniania za pośrednictwem dostarczanych wtyczek. Za pośrednictwem systemu wtyczek wspiera obecnie rejestrowanie do plików, syslog i usług zdalnych, takich jak RabbitMQ i Gearman . Drizzle to relacyjna baza danych zgodna z ACID, która obsługuje transakcje za pośrednictwem projektu MVCC .

Mikrojądro

Dodano punkty wtyczek w celu obsługi replikacji , silników pamięci masowej , przepisywania zapytań, funkcji tabel, funkcji zdefiniowanych przez użytkownika , adapterów protokołów i wielu pamięci podręcznych zapytań.

Indeksy

Podobnie jak MySQL, Drizzle obsługuje jednocześnie wiele silników. Dzięki temu Drizzle zawiera wbudowaną obsługę drzewa B + i indeksów hash . Planer zapytań Drizzle jest w stanie używać wielu indeksów, z wielu silników do obsługi złożonych zapytań, używając tymczasowych operacji indeksowania bitmapy w pamięci .

Wyzwalacze

Wyzwalacze bazy danych w Drizzle są obsługiwane dla DML , DDL i wielu dodatkowych operacji opartych na zdarzeniach na serwerze. System przesyłania strumieniowego PrimeBase BLOB, który umożliwia Drizzle przesyłanie strumieniowe dużych obiektów binarnych (BLOB) przez HTTP, korzysta z tego systemu. Obecnie wszystkie wyzwalacze Drizzle muszą być napisane w C ++.

Przepisywanie zapytania

Każde zapytanie można dopasować i przepisać dynamicznie, które jest wysyłane do serwera. Ta akcja jest wykonywana przed wykonaniem analizy .

Typy danych

Obsługiwanych jest wiele natywnych typów danych , w tym:

Dynamiczny SQL

Dzięki wsparciu polecenia EXECUTE, Drizzle może obsługiwać dynamiczne, złożone z wielu instrukcji SQL. Poprzez słowo kluczowe CONCURRENT może obsługiwać te instrukcje równolegle .

Replikacja

Replikacja w Drizzle odbywa się poprzez generowanie „wiadomości” przy użyciu biblioteki Google Protocol Buffers . Wiadomości te są następnie przechowywane i wykonywane na zdalnych serwerach. Format wiadomości jest formatem neutralnym dla języka SQL, który umożliwił Drizzle posiadanie aplikacji replikacji do RabbitMQ, Memcached , MySQL, Voldemort i Apache Cassandra .

Wsparcie i licencje

Drizzle jest licencjonowany w ramach drugiej i trzeciej wersji GPL, z niektórymi częściami, takimi jak biblioteka klienta libdrizzle, na licencji BSD .

Zobacz też

Bibliografia

Linki zewnętrzne