The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Открыты исходные тексты БД Aerospike

25.06.2014 23:24

Компания Aerospike одновременно с объявлением о получении 20 млн долларов инвестиций заявила об открытии исходных текстов своей NoSQL БД Aerospike, обеспечивающей предсказуемое время доступа к данным, что позволяет применять Aerospike для обработки данных в режиме реального времени. По заявлению создателей, на выполнение 99% запросов тратится менее 1 мс, а 99.9% запросов выполняются не дольше 5 мс. Код серверной части БД написан на языке Си и открыт под лицензией AGPL. Клиентские библиотеки, которые доступны для Java, C/C++, Lua и Node.js, распространяются под лицензией Apache 2.0.

Использование специально оптимизированного для SSD-накопителей режима работы хранилища в сочетании с размещением индексов в оперативной памяти и обеспечением параллельной обработки данных на разных ядрах CPU, позволило добиться в Aerospike в 5-10 раз более высокой производительности, по сравнению с другими NoSQL БД. Предусмотрено два режима работы: традиционный (хранение всех данных в ОЗУ с синхронизацией на жесткие диски) и гибридный (хранилище разворачивается поверх ОЗУ и SSD-дисков с размещением в ОЗУ индексов и наиболее востребованных данных). На типовом оборудовании при работе в гибридном режиме удалось добиться производительности в примерно 200 тысяч транзакций в секунду в тесте со сбалансированной нагрузкой на чтение и запись, 300 тысяч транзакций в секунду в тесте с преобладанием операций чтения данных и 50 тысяч транзакций в секунду в тесте с преобладанием операций записи.

На базе Aerospike возможно создание кластерных конфигураций с репликацией данных на несколько узлов, которые обеспечивают близкий к линейному рост производительности при добавлении новых узлов в кластер. Размер хранилища может достигать десятка терабайт и обслуживать размещение более сотни миллиардов объектов. Поддерживается несколько схем репликации, нацеленных на обеспечение отказоустойчивости, производительности и территориального разнесения базы по разным центрам обработки данных.

Система надёжно защищена от потери данных в результате сбоя - применяется блокировка на уровне строк и мгновенная фиксация транзакций. При использовании синхронной репликации кластер хранения Aerospike соответствует требованиям ACID (атомарность, согласованность, изолированность, надежность). В случае выхода узла из строя, автоматически выполняется ребалансировка данных и продолжение работы без сбойного узла. Обновление программного обеспечение и резервное копирование производятся без приостановки работы и не оказывая влияния на производительность.

Данные хранятся в строках в форме записей ключ/значение. Записи могут группироваться в наборы и таблицы (раздельное пространство имён). Для обработки данных на стороне сервера поддерживается написание определённых пользователем функций (UDF) на языке Lua. Возможно выполнение сложных аналитических запросов (map-reduce) и использование больших типов данных, при этом выполнение запроса может распараллеливаться на несколько узлов кластера, каждый из которых выполняет свою часть работы по обработке запроса.

  1. Главная ссылка к новости (http://www.aerospike.com/press...)
  2. OpenNews: Представлена новая открытая СУБД InfiniSQL
  3. OpenNews: Выпуск документ-ориентированной БД Apache CouchDB 1.6.0
  4. OpenNews: Выпуск БД Redis 2.8
  5. OpenNews: Facebook открыл код NoSQL БД RocksDB, оптимизированной для Flash-накопителей
  6. OpenNews: Релиз БД Apache Cassandra 2.0 с поддержкой триггеров и легковесных транзакций
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/40082-aerospike
Ключевые слова: aerospike, nosql, database
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (21) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.3, Аноним (-), 02:49, 26/06/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • +5 +/
    Почитать, так прям сказка а не база данных. В чем подвох? Чего еще конкуренты трепыхаються то?
     
     
  • 2.4, rob pike (?), 03:14, 26/06/2014 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Подвох - как обычно, в деталях.

    В двух словах - это допиленная AlchemyDB (http://jaksprats.wordpress.com/2014/03/10/alchemydb-is-all-grown-up/)

    А "трепыхаются" как раз не конкуренты, а AeroSpike - иначе бы на четвертом году жизни, с давно доступным коммерческим продуктом не шли бы с протянутой рукой за третьим раундом финансирования, потому что денег так и нет, не берут это чудо чудное покупатели.

     
  • 2.8, Анлимус (?), 09:22, 26/06/2014 [^] [^^] [^^^] [ответить]  
  • +4 +/
    трепыхаются-то
     
  • 2.11, SubGun (ok), 10:06, 26/06/2014 [^] [^^] [^^^] [ответить]  
  • +/
    Ага, ага. Я тоже обратил внимание, что прям как из сказки эта субд. А, судя по графикам, конкуренты вообще застрелиться должны.
     
  • 2.12, Аноним (-), 11:37, 26/06/2014 [^] [^^] [^^^] [ответить]  
  • +1 +/
    как обычно, ещё одни гении додумались сделать in-memory субд
     
  • 2.19, XoRe (ok), 19:22, 26/06/2014 [^] [^^] [^^^] [ответить]  
  • +/
    > В случае выхода узла из строя, автоматически выполняется ребалансировка данных и продолжение работы без сбойного узла. Обновление программного обеспечение и резервное копирование производятся без приостановки работы и не оказывая влияния на производительность.

    При бекапе/ребалансинге нужно следить за нагрузкой от оверхеда.
    При бекапе - на дисковую.
    При ребалансировании - ещё и на сеть.

     

  • 1.5, Аноним (-), 09:00, 26/06/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    прям для Википедии самое то - записывается там всё реже и реже, 95 процентов операций на чтение. Интересно было сравнить производительность Википедии на разных базах
     
     
  • 2.9, Аноним (9), 09:31, 26/06/2014 [^] [^^] [^^^] [ответить]  
  • +/
    наверное ключ/значение недостаточно?
     

  • 1.10, luzerz (?), 09:41, 26/06/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    а оно научилось выживать, когда данных больше чем памяти на ноде?
     
     
  • 2.13, Pilat (ok), 11:49, 26/06/2014 [^] [^^] [^^^] [ответить]  
  • +/
    Это база для реалтайма, там другие проблемы.
     

  • 1.14, umbr (ok), 14:36, 26/06/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Ну да, если все писать в память оно и будет летать.

    >..больших типов данных

    Что это такое?

     
     
  • 2.16, Andrey Mitrofanov (?), 15:57, 26/06/2014 [^] [^^] [^^^] [ответить]  
  • +/
    >>..больших типов данных
    > Что это такое?

    Big data же. И подозрительные _типы с маркетинговыми базвордами к нему впридачу.

     
  • 2.17, Kodir (ok), 15:57, 26/06/2014 [^] [^^] [^^^] [ответить]  
  • +/
    Movie, music, geo, чо угодно. Большие типы есть, но хранить их в базе смысла нет.
     

  • 1.15, Kodir (ok), 15:56, 26/06/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Жалкие попытки возродить "кладбище домашних NoSQL". Если бы подобные базы были чем-то нужным ХОТЯ БЫ половине ИТ-индустрии, они сразу бы нашли отклик. А сейчас это "ненужно" только ещё больше вызывает жалости своими попытками быть "нужно".
     
     
  • 2.18, Кирилл (??), 17:17, 26/06/2014 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Понимаете, это нужно, как нужно жирдяю меньше жрать и больше заниматься спортом, но "нужно" и "хочется" далеко не всегда пересекаются.
    Объективно имеет смысл внедрение noSQL и современного data mining-а вместо (или в дополнение к) попыток формализовать то, что формализовать сложно или невозможно в силу различных, не всегда объективных, причин. Вернее имеет смысл в куда большем кол-ве случаев, чем сейчас имеет место быть. Другое дело, что кто будет объяснять рынку эту необходимость? Нет сейчас среди потребителей критической массы в понимании плюсов технологии.
     

  • 1.20, Anonymus (?), 20:47, 26/06/2014 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    1мс на запрос (предполагаю, тривиальный) при наличии ssd не докуя ли?
     
     
  • 2.21, Andrey Mitrofanov (?), 10:07, 27/06/2014 [^] [^^] [^^^] [ответить]  
  • +/
    > 1мс на запрос (предполагаю, тривиальный) при наличии ssd не докуя ли?

    "99% запросов" и "менее 1 мс". --"Вам, товарищ прапорщик, по пояс будет."

     
     
  • 3.22, лзз (?), 12:23, 29/06/2014 [^] [^^] [^^^] [ответить]  
  • –1 +/
    можно написать ормку или драйвер, которая будет раз 20 долбить по заведомо кешированным словарям перед каждым продакшон-запросом, таким образом обеспечив заведомо 95% < 1мс
     
     
  • 4.23, XoRe (ok), 18:16, 10/07/2014 [^] [^^] [^^^] [ответить]  
  • +/
    > можно написать ормку или драйвер, которая будет раз 20 долбить по заведомо
    > кешированным словарям перед каждым продакшон-запросом, таким образом обеспечив заведомо
    > 95% < 1мс

    Да, примерно так же поступили MS для ie9 и теста SunSpider.
    http://habrahabr.ru/post/108313/
    Вопрос-то в том, вам надо получить красивые бенчмарки, или ехать.

     

  • 1.24, Аноним (-), 20:44, 11/11/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Да что вы срёте. Норм база данных. Для языков куча библиотек. Я на своём старике бенчь запустил: в среднем 5-7мс на операцию. У меня клиент на Golang, поэтому когда сборщик мусора просыпался были выбросы до 50-80мс. Но у меня: SATA2 32Mb кэш диска. Это не SSD - это жёсткий. 2GB RAM и Athlon64 X2, это нотбук с кучей открытых вкладок в хроме. Учитывая присутствие данных на диске - это очень неплохо, это хорошо, это збс. По крайней мере для своего проекта я смотрел в сторону LevelDB - а теперь у меня есть выбор.
     
  • 1.25, Виталий (??), 02:27, 14/02/2017 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Кто нибудь в курсе сколько стоит это чудо, если вдруг понадобится полный фарш ?
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру