Разработчик (и) | Aerospike |
---|---|
Первоначальный выпуск | 2010 |
Стабильная версия | 4.8.0.3 / 6 января 2020 г.; 9 месяцев назад (2020-01-06) |
Репозиторий | |
Написано на | C |
Операционная система | Linux / Unix-подобная |
Лицензия | AGPL |
Веб-сайт | www.aerospike.com |
Aerospike - это flash -оптимизированная в памяти база данных с открытым исходным кодом NoSQL и название одноименной компании, которая ее производит.
База данных Aerospike сначала была известна как Citrusleaf 2.0 . В августе 2012 года компания, предоставляющая свою базу данных с 2010 года, изменила название компании и программного обеспечения на Aerospike. Название "Aerospike" происходит от двигателя Aerospike, типа ракетного сопла, которое способно сохранять свою выходную эффективность в большом диапазоне высот и предназначено для обозначения возможность масштабирования программного обеспечения. В 2012 году Aerospike приобрела AlchemyDB и объединила функции двух баз данных, включая добавление системы управления реляционными данными. 24 июня 2014 г. был открыт исходный код Aerospike в соответствии с лицензией AGPL 3.0 для сервера баз данных Aerospike и лицензией Apache версии 2.0 для пакета разработки клиентского программного обеспечения Aerospike. В феврале 2015 года Aerospike назначила Джона Диллона, ранее работавшего в Salesforce.com, своим новым генеральным директором.
База данных Aerospike написана на C и работает на трех уровнях: уровень данных, оптимизированный для флэш-памяти, уровень самоуправляемого распределения и уровень клиента с учетом кластера. Уровень распределения реплицируется в центрах обработки данных для обеспечения согласованности. Репликация также позволяет базе данных оставаться в рабочем состоянии при выходе из строя отдельного узла сервера или его удалении из кластера. Уровень интеллектуального клиента используется для отслеживания конфигурации кластера в базе данных и управления обменом данными в серверном узле.
Уровень данных в базе данных Aerospike оптимизирован для хранения данных на твердотельном накопителе, NVMe, RAM или традиционные ротационные носители. индексы базы данных хранятся в ОЗУ для быстрой доступности, а запись данных оптимизируется за счет записи больших блоков для уменьшения задержки. Программное обеспечение также использует две подпрограммы под кодовыми названиями Defragmenter и Evictor. Дефрагментатор удаляет блоки данных, которые были удалены, а Evictor освобождает пространство ОЗУ, удаляя ссылки на просроченные записи.