Aerospike — Вікіпедія
![]() | |
Тип | пропрієтарне програмне забезпечення і система управління базами даних ![]() |
---|---|
Розробник | Aerospike |
Перший випуск | 2012 |
Операційна система | Linux / Unix-подібні |
Мова програмування | C |
Ліцензія | AGPL |
Репозиторій | github.com/aerospike/aerospike-server |
Вебсайт | www.aerospike.com |
Aerospike — система керування базами даних класу NoSQL. Aerospike забезпечує передбачуваний час доступу до даних, що дозволяє застосовувати її для обробки даних у режимі реального часу.
Aerospike Database спершу була відома як Citrusleaf 2.0. У вересні 2012 було здійснено ребрендинг і компанії, і бази даних на Aerospike.[1][2] Назва Aerospike йде від типу ракетного сопла, здатного підтримувати ефективність вихлопу через великий діапазон висот: таким чином підкреслюється спроможність програми масштабуватися тоді, коли кількість даних зростає експоненціально.[3] У 2012 Aerospike придбала AlchemyDB [Архівовано 10 серпня 2014 у Wayback Machine.] та об'єднала функціональність обох баз даних, включаючи реляційну систему керування даними.[4][5] 24 червня 2014, одночасно з оголошенням про одержання $20 млн інвестицій[6], Aerospike відкрила початковий код[7] на умовах ліцензії AGPL для сервера та Apache License версії 2 для клієнтської частини[8]
За заявою творців, на виконання 99% запитів витрачається менше 1 мс, а 99.9% запитів виконуються не довше 5 мс. Сирцевий код серверної частини БД написаний на мові Сі і відкритий[7] у червні 2014 під ліцензією AGPL. Клієнтські бібліотеки, які доступні для Java, C/C++, Lua і Node.js, поширюються під ліцензією Apache 2.0.
Використання спеціально оптимізованого для SSD-накопичувачів режиму роботи сховища у поєднанні з розміщенням індексів в оперативній пам'яті і забезпеченням паралельної обробки даних на різних ядрах CPU, дозволило добитися в Aerospike в 5-10 разів вишої продуктивності, у порівнянні з іншими NoSQL БД.[9] Передбачено два режими роботи: традиційний (зберігання всіх даних в оперативній пам'яті із синхронізацією на тверді диски) і гібридний (сховище розгортається поверх оперативної пам'яті і SSD-дисків з розміщенням у пам'яті індексів і найбільш затребуваних даних). На типовому обладнанні при роботі в гібридному режимі вдалося домогтися продуктивності в приблизно 200 тисяч транзакцій в секунду в тесті зі збалансованим навантаженням на читання і запис, 300 тисяч транзакцій за секунду в тесті з переважанням операцій читання даних і 50 тисяч транзакцій за секунду в тесті з переважанням операцій запису.
На базі Aerospike можливе створення кластерних конфігурацій з реплікацією даних на декілька вузлів, які забезпечують близьке до лінійного зростання продуктивності при додаванні нових вузлів у кластер. Розмір сховища може досягати десятка терабайт і обслуговувати розміщення більше сотні мільярдів об'єктів. Підтримується кілька схем реплікації, націлених на забезпечення відмовостійкості, продуктивності та територіального рознесення бази за різними центрам обробки даних.
Система надійно захищена від втрати даних в результаті збою — застосовується блокування на рівні рядків і миттєва фіксація транзакцій. При використанні синхронної реплікації кластер зберігання Aerospike відповідає вимогам ACID (атомарность, узгодженість, ізольованість, надійність). У разі виходу вузла з ладу, автоматично виконується ребалансування даних і продовження роботи без збійного вузла. Оновлення програмного забезпечення і резервне копіювання виробляються без призупинення роботи і без здійснення впливу на продуктивність.
Дані зберігаються в рядках у формі записів ключ/значення. Записи можуть групуватися в набори і таблиці (роздільний простір імен). Для обробки даних на стороні сервера підтримується написання визначених користувачем функцій (UDF) мовою Lua. Можливе виконання складних аналітичних запитів (map-reduce) і використання великих типів даних, при цьому виконання запиту можна розпаралелювати на кілька вузлів кластера, кожен з яких виконує свою частину роботи з обробки запиту.
- ↑ Citrusleaf Launches Aerospike Brand to Reflect High Velocity Customer Adoption. 26 серпня 2012. Архів оригіналу за червень 17, 2013. Процитовано 17 травня 2013. [Архівовано 2013-06-17 у Wayback Machine.]
- ↑ AeroSpike, the former Citrusleaf. DBMS2. 27 серпня 2012. Архів оригіналу за 24 червня 2013. Процитовано 17 травня 2013.
- ↑ Aerospike - Definition. Wordiq. Архів оригіналу за 24 грудня 2004. Процитовано 17 травня 2013. [Архівовано 2004-12-24 у Wayback Machine.]
- ↑ Aerospike Acquires AlchemyDB NewSQL Database. 28 серпня 2012. Архів оригіналу за квітень 6, 2014. Процитовано 17 травня 2013. [Архівовано 2014-04-06 у Wayback Machine.]
- ↑ Aerospike Acquires AlchemyDB NewSQL Database to Build on Predictable Speed and Web-Scale Data Management of Aerospike Real-Time NoSQL Database. Business Wire. 28 серпня 2012. Архів оригіналу за 29 листопада 2014. Процитовано 17 травня 2013.
- ↑ Aerospike Raises $20 Million Series C Funding to Fuel Next Stage of Growth for Enterprise-Grade In-Memory NoSQL Database. Архів оригіналу за 28 червня 2014. Процитовано 5 липня 2014. [Архівовано 2014-06-28 у Wayback Machine.]
- ↑ а б Aerospike Open Sources Visionary Database That Operates at In-Memory Speed and Global Scale With Enterprise-Grade Reliability. Архів оригіналу за 27 червня 2014. Процитовано 27 червня 2014. [Архівовано 2014-06-27 у Wayback Machine.]
- ↑ Aerospike open sources. Aerospike. 24 червня 2014. Архів оригіналу за червень 27, 2014. Процитовано 24 червня 2014. [Архівовано 2014-06-27 у Wayback Machine.]
- ↑ Открыты исходные тексты БД Aerospike [Архівовано 9 липня 2014 у Wayback Machine.] // opennet.ru