Aerospike (baza danych)
Deweloperzy | Aerospike |
---|---|
Pierwsze wydanie | 2010 |
Wersja stabilna | 6.0.0.0 / 27 kwietnia 2022
|
Magazyn | |
Napisane w | C |
System operacyjny | Linuks |
Typ | Rozproszona baza danych , baza danych klucz-wartość |
Licencja | AGPL |
Strona internetowa |
Aerospike to system zarządzania bazą danych NoSQL z pamięcią flash i otwartym kodem źródłowym typu open source , sprzedawany przez firmę o nazwie Aerospike .
Historia
Aerospike był początkowo znany jako Citrusleaf. W sierpniu 2012 roku firma, która dostarczała swoją bazę danych od 2010 roku, zmieniła nazwę firmy i oprogramowania na Aerospike. Nazwa „Aerospike” pochodzi od silnika aerospike , rodzaju dyszy rakietowej , która jest w stanie utrzymać wydajność wyjściową na dużym zakresie wysokości i ma odnosić się do możliwości skalowania oprogramowania. W 2012 roku Aerospike przejął AlchemyDB i zintegrował funkcje dwóch baz danych, w tym dodanie relacyjnego systemu zarządzania danymi. W dniu 24 czerwca 2014 r. Aerospike został udostępniony w ramach AGPL 3.0 dla serwera bazy danych Aerospike oraz licencji Apache w wersji 2.0 dla zestawu programistycznego oprogramowania klienckiego Aerospike.
Historia wydania
Wersja | Wersja pierwszego wydania | Data pierwszego wydania | Ostatnia wersja | Data wydania | Cechy | Ref |
---|---|---|---|---|---|---|
3.1 | 3.1.3 | 2 stycznia 2014 r | 3.1.14 | 25 lutego 2014 r |
|
|
3.2 | 3.2.0 | 19 marca 2014 r | 3.2.9 | 12 maja 2014 r |
|
|
3.3 | 3.3.5 | 9 czerwca 2014 r | 3.3.26 | 3 grudnia 2014 r |
|
|
3.4 | 3.4.0 | 8 grudnia 2014 r | 3.4.1 | 12 stycznia 2015 r |
|
|
3.5 | 3.5.2 | 13 lutego 2015 r | 3.5.15 | 15 lipca 2015 r |
|
|
3.6 | 3.6.0 | 31 sierpnia 2015 r | 3.6.4 | 10 listopada 2015 r |
|
|
3.7 | 3.7.0 | 10 grudnia 2015 r | 3.7.5.1 | 31 marca 2016 r |
|
|
3.8 | 3.8.1 | 15 kwietnia 2016 r | 3.8.4 | 17 czerwca 2016 r |
|
|
3.9 | 3.9.0 | 11 lipca 2016 r | 3.9.1.1 | 2 września 2016 r |
|
|
3.10 | 3.10.0.3 | 21 października 2016 r | 3.10.1.5 | 13 stycznia 2017 r |
|
|
3.11 | 3.11.0 | 5 stycznia 2017 r | 3.11.1.1 | 15 lutego 2017 r |
|
|
3.12 | 3.12.0 | 15 marca 2017 r | 3.12.1.3 | 31 lipca 2017 r |
|
|
3.13 | 3.13.0.1 | 30 maja 2017 r | 3.13.0.11 | 26 kwietnia 2018 r |
|
|
3.14 | 3.14.0 | 6 czerwca 2017 r | 3.14.1.10 | 26 kwietnia 2018 r |
|
|
3.15 | 3.15.0.1 | 3 października 2017 r | 3.15.1.4 | 3 stycznia 2018 r |
|
|
3.16 | 3.16.0.1 | 21 lutego 2018 r | 3.16.0.6 | 2 marca 2018 r |
|
|
4.0 | 4.0.0.1 | 7 marca 2018 r | 4.0.0.6 | 6 września 2018 r |
|
|
4.1 | 4.1.0.1 | 10 maja 2018 r | 4.1.0.6 | 6 września 2018 r |
|
|
4.2 | 4.2.0.2 | 31 maja 2018 r | 4.2.0.10 | 10 sierpnia 2018 r |
|
|
4.3 | 4.3.0.2 | 1 sierpnia 2018 r | 4.3.1.14 | 26 kwietnia 2019 r |
|
|
4.4 | 4.4.0.4 | 19 listopada 2018 r | 4.4.0.15 | 26 kwietnia 2019 r |
|
|
4.5 | 4.5.0.1 | 12 grudnia 2018 r | 4.5.3.22 | 7 lipca 2020 r |
|
|
4.6 | 4.6.0.2 | 9 sierpnia 2019 r | 4.6.0.21 | 18 września 2020 r |
|
|
4.7 | 4.7.0.2 | 30 września 2019 r | 4.7.0.26 | 25 listopada 2020 r |
|
|
4.8 | 4.8.0.1 | 12 grudnia 2019 r | 4.8.0.31 | 29 marca 2021 r |
|
|
4.9 | 4.9.0.3 | 8 kwietnia 2020 r | 4.9.0.36 | 25 października 2021 r |
|
|
5.0 | 5.0.0.3 | 14 maja 2020 r | 5.0.0.38 | 19 lipca 2021 r |
|
|
5.1 | 5.1.0.3 | 31 lipca 2020 r | 5.1.0.42 | 20 września 2021 r |
|
|
5.2 | 5.2.02 | 1 października 2020 r | 5.2.0.37 | 30 października 2021 r |
|
|
5.3 | 5.3.0.2 | 10 grudnia 2020 r | 5.3.0.27 | 30 października 2021 r |
|
|
5.4 | 5.4.0.1 | 13 stycznia 2021 r | 5.4.0.22 | 30 października 2021 r |
|
|
5.5 | 5.5.0.2 | 5 lutego 2021 r | 5.5.0.20 | 30 października 2021 r |
|
|
5.6 | 5.6.0.3 | 10 maja 2021 r | 5.6.0.14 | 30 października 2021 r |
|
|
5.7 | 5.7.0.7 | 27 września 2021 r | 5.7.0.9 | 10 grudnia 2021 r |
|
|
6.0 | 6.0.0.0 | 27 kwietnia 2022 r | 6.0.0.0 | 27 kwietnia 2022 r |
|
|
Legenda:
Stara wersja
Starsza wersja, nadal utrzymywana
Ostatnia wersja
|
Cechy
Baza danych Aerospike jest modelowana w architekturze „shared-nothing” i napisana w C . Działa w trzech warstwach: warstwie przechowywania danych, samozarządzanej warstwie dystrybucyjnej i warstwie klienckiej obsługującej klastry.
Aerospike wykorzystuje hybrydową architekturę pamięci: indeksy bazy danych są w całości przechowywane w głównej pamięci o dostępie swobodnym, natomiast dane są przechowywane na urządzeniu trwałym z wykorzystaniem warstwy danych. Warstwa danych przechowuje dane na dysku SSD , NVMe lub pamięci trwałej . Odczyt danych odbywa się za pomocą bezpośredniego dostępu do pozycji rekordu na dysku za pomocą bezpośredniego wskaźnika z indeksu podstawowego , a zapisy danych są optymalizowane przez zapisy dużych bloków w celu zmniejszenia opóźnień . Ta architektura pobiera wszystkie rekordy z urządzenia trwałego i unieważnia korzystanie z pamięci podręcznej danych . Aerospike zapewnia również możliwość pełnego przechowywania danych w pamięci RAM , działając w ten sposób jako baza danych w pamięci. W takim przypadku dane byłyby utrwalane na dyskach SSD, NVMe, PMEM lub tradycyjnych nośnikach rotacyjnych .
Aerospike zapewnia pojedyncze transakcje ACID . Warstwa dystrybucji jest odpowiedzialna za replikację danych między węzłami, aby zapewnić trwałość i właściwości natychmiastowej spójności transakcji. Dzięki temu baza danych może działać nawet wtedy, gdy pojedynczy węzeł serwera ulegnie awarii lub zostanie ręcznie usunięty z klastra. Od wersji 4.0 (2018) Baza danych Aerospike może być skonfigurowana zarówno jako Dostępna i tolerująca partycje (AP) lub Spójna i tolerująca partycje (CP) zgodnie z twierdzeniem CAP .
Warstwa świadoma klastra klienta służy do śledzenia konfiguracji klastra w bazie danych i zarządza bezpośrednią komunikacją klienta ze wszystkimi węzłami w klastrze. Grupowanie odbywa się za pomocą bicia serca i algorytmu protokołu plotek opartego na Paxos .
Oprogramowanie wykorzystuje dwa podprogramy o nazwach kodowych Defragmentator i Evictor. Defragmentator usuwa usunięte bloki danych, a Evictor zwalnia miejsce w pamięci RAM, usuwając odniesienia do wygasłych rekordów.
Linki zewnętrzne
- Systemy zarządzania bazami danych klient-serwer
- Bazy danych
- Rozproszona architektura obliczeniowa
- Rozproszone magazyny danych
- Bazy danych zorientowane na dokumenty
- Darmowe systemy zarządzania bazami danych
- Bazy danych klucz-wartość
- NoSQL
- Oprogramowanie korzystające z licencji GNU AGPL
- Ustrukturyzowane przechowywanie