The OpenNET Project / Index page

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

25.01.2013 21:01  Релиз открытой СУБД VoltDB 3.0, развиваемой одним из основателей Ingres и PostgreSQL

Представлен релиз инновационной открытой СУБД VoltDB 3.0, развиваемой под руководством Майкла Стоунбрейкера (Mike Stonebraker), одного из основателей проектов Ingres и PostgreSQL. СУБД VoltDB поддерживает горизонтальное масштабирование и ориентирована на обработку транзакций в реальном времени (OLTP). На недорогом кластере, собранном своими силами из обычных серверов, СУБД способна обрабатывать миллионы транзакций в секунду. СУБД распространяется в двух вариантах: коммерческом, с обеспечением полноценной поддержки, и свободном "Community Edition". Код опубликован под лицензией AGPLv3.

VoltDB позволяет достичь уровня производительности NoSQL-систем, сохранив при этом поддержку выполнения запросов на языке SQL и гарантирированную транзакционную целостность данных (ACID, атомарность и изолированность транзакций). При оценке производительности в односерверной конфигурации СУБД VoltDB опередила традиционные OLTP СУБД в 45 раз, обработав 53 тыс. транзакций в секунду, в то время как другие СУБД на том же оборудовании могли выполнить только 1155 транзакций. На 12-узловом кластере СУБД VoltDB обеспечила выполнение 560 тыс. транзакций в сек. При этом, VoltDB уже достаточно давно используется в промышленной эксплуатации и позиционируется как полностью стабильный продукт.

Разгадка высокой производительности VoltDB кроется в непохожей на традиционные схемы внутренней архитектуре, комбинирующей хранение данных в памяти с концепцией распределенной организации и разбиением содержимого БД по разделам (партицирование). Производительность VoltDB увеличивается почти линейно при добавлении дополнительных серверов в кластер. Каждый однопоточный раздел работает в автономном режиме, что исключает необходимость в блокировках и фиксации операций. Данные автоматически реплицируются внутри кластера, что позволяет добиться высокой доступности и исключает необходимость ведения журнала. Все данные каждого узла полностью прокэшированы в ОЗУ, что обеспечивает максимальную пропускную способность и исключает необходимость буферизации.

На одном сервере запускается несколько узлов VoltDB, каждый из которых привязывается к отдельному ядру CPU. Для сохранения данных на диск используется концепция снапшотов, отражающих срез данных, актуальных на момент создания снапшота. Работа с данными осуществляется через хранимые процедуры на языке Java, копии которых прикрепляются к каждому из разделов (ODBC/JDBC и прямое выполнение SQL-операторов для всей базы не поддерживается). При выполнении запроса, затрагивающего несколько разделов, в каждом из нужных разделов вызывается хранимая процедура, а затем результаты агрегируются.

Среди новшеств, добавленных в VoltDB 3.0:

  • Переработана архитектура координации выполнения транзакций, что позволило минимизировать обмен данными между узлами в процессе выполнения запроса. В результате была увеличена пропускная способность и уменьшена задержка выполнения запросов. По сравнению с VoltDB 2.x версия 3.0 позволяет выполнить на том же оборудовании гораздо больше транзакций и существенно снизить задержки для работающих в синхронном режиме клиентов, в которых выполнение продолжается только после завершения каждого запроса (в асинхронном режиме управление передаётся дальше не дожидаясь выполнения запроса, готовность которого оценивается через обработку событий);
  • Для упрощения разработки высокопроизводительных приложений добавлена поддержка шаблона project.xml для размещения данных в кластере и команды compile для автоматической компиляции схемы. Расширены возможности изменения схемы БД на лету, добавлены команды для создания и изменения индексов, применимые для работающего кластера;
  • Расширен поддерживаемый синтаксис SQL, добавлена возможность использования выражения UNION и операторов LIKE/NOT LIKE, подготовлен полный набор строковых и числовых функций. Реализована поддержка определения индексов с использованием функций, работающих на уровне столбцов;
  • Реализован интерфейс для доступа к данным с использованием формата JSON. Указанная возможность позволяет гибко управлять и менять схему хранения, которая теперь может задаваться в произвольном виде. Для манипуляции со структурированными JSON-данными, прикреплёнными к столбцу, представлена новая функция field();
  • Новые средства для импорта и экспорта данных. Добавлены модули для импорта данных из лога Apache и из CSV-файлов. Переработана поддержка экспорта, отмечается, что новая реализация экспортирует данные в 20 раз быстрее прежней. Добавлен JDBC-коннектор для экспорта данных в СУБД PostgreSQL, Oracle и MySQL;
  • Новая утилита voltadmin с реализация интерфейса командной строки для централизованного управления всем кластером VoltDB;
  • Добавлен переработанный высокопроизводительный драйвер для PHP и новые драйверы для Node.js и Google Go.


  1. Главная ссылка к новости (http://blog.voltdb.com/introdu...)
  2. OpenNews: АНБ передаёт код БД Accumulo в руки фонда Apache
  3. OpenNews: Представлен первый стабильный релиз СУБД SciDB
  4. OpenNews: Проект NewSQL призван решить проблемы, с которыми столкнулся Facebook, используя MySQL
  5. OpenNews: Первый релиз NoSQL БД OrientDB
  6. OpenNews: Представлена новая NoSQL БД Hibari, созданная для больших хранилищ данных
Лицензия: CC-BY
Тип: Интересно / Программы
Ключевые слова: voltdb, database
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение Линейный вид | Ajax | Показать все | RSS
 
  • 1.1, Аноним, 21:48, 25/01/2013 [ответить] [смотреть все]    [к модератору]
  • +7 +/
    Какая-то просто сказка а не СУБД...
     
     
  • 2.2, o, 21:55, 25/01/2013 [^] [ответить] [смотреть все] [показать ветку]    [к модератору]
  • –14 +/
    на java. отсяюда и сказки и росказни про недорого.
     
     
  • 3.7, thelamon, 01:53, 26/01/2013 [^] [ответить] [смотреть все]    [к модератору]
  • +3 +/
    хейтер детектед?сам не пробовал, но осудить всегда рад?
     
  • 2.18, VoDA, 12:49, 26/01/2013 [^] [ответить] [смотреть все] [показать ветку]     [к модератору]
  • +4 +/
    Похоже она не реляционная, оттуда и бонусы ... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.35, Grammar Nazi, 10:03, 27/01/2013 [^] [ответить] [смотреть все]    [к модератору]  
  • –7 +/
    нереляционная
     
  • 1.3, Аноним, 22:10, 25/01/2013 [ответить] [смотреть все]    [к модератору]  
  • +6 +/
    Все данные каждого узла полностью прокэшированы в ОЗУ...
    Не слишком ли жирно?
     
     
  • 2.4, Аноним, 22:35, 25/01/2013 [^] [ответить] [смотреть все] [показать ветку]     [к модератору]  
  • –1 +/
    Время сейчас такое, оперативная память стоит не дорого, вот и оптимизация идет з... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.23, XoRe, 14:52, 26/01/2013 [^] [ответить] [смотреть все]     [к модератору]  
  • +/
    SSD не панацея Неоптимальные алгоритмы могут свести на нет любые бонусы от желе... весь текст скрыт [показать]
     
     
  • 4.27, Аноним, 18:59, 26/01/2013 [^] [ответить] [смотреть все]     [к модератору]  
  • +3 +/
    Так кодируют только м даки ... весь текст скрыт [показать]
     
     
  • 5.39, Аноним, 12:38, 28/01/2013 [^] [ответить] [смотреть все]     [к модератору]  
  • +/
    А закон Амдала и когерентность кэша тоже так-то никто не отменял ... весь текст скрыт [показать]
     
  • 5.41, slowpoke, 14:51, 29/01/2013 [^] [ответить] [смотреть все]     [к модератору]  
  • +3 +/
    зато они очень плодовиты, написали уже pulseaudio, systemd ... весь текст скрыт [показать]
     
  • 2.8, Аноним, 02:45, 26/01/2013 [^] [ответить] [смотреть все] [показать ветку]    [к модератору]  
  • +2 +/
    MapReduce ведь для лохов
     
     
  • 3.24, Whoiswho, 14:53, 26/01/2013 [^] [ответить] [смотреть все]    [к модератору]  
  • –1 +/
    Сам то понял, что сказал и при чем тут это?
     
     
  • 4.34, Grammar Nazi, 10:02, 27/01/2013 [^] [ответить] [смотреть все]    [к модератору]  
  • –2 +/
    Сам-то
     
     
  • 5.42, Чел, 09:00, 30/01/2013 [^] [ответить] [смотреть все]    [к модератору]  
  • +/
    Учить до посинения.
    http://ru.wikipedia.org/wiki/MapReduce
     
  • 1.5, жабабыдлокодер, 23:31, 25/01/2013 [ответить] [смотреть все]    [к модератору]  
  • +1 +/
    Прочитав "JDBC не поддерживается" крайне удивился: все-таки на Java написано... Взаимоисключающие параграфы?
    Посмотрел на сайте - ничего подобного, поддерживается, есть нормальные примеры. Ошибка в новости?
     
     
  • 2.45, шестиклассник, 18:08, 31/01/2013 [^] [ответить] [смотреть все] [показать ветку]     [к модератору]  
  • +/
    Не поддерживается напрямую для всей БД Вместо этого агрегация результатов выпол... весь текст скрыт [показать] [показать ветку]
     
  • 1.6, pro100master, 00:08, 26/01/2013 [ответить] [смотреть все]    [к модератору]  
  • +2 +/
    а в чем подвох? Бесплатная производительность только в сказках у Жуля, нашего, Верна.
     
     
  • 2.9, rshadow, 03:17, 26/01/2013 [^] [ответить] [смотреть все] [показать ветку]     [к модератору]  
  • –1 +/
    Все очень просто на одной машинке с 64Гб хватит памяти чтоб сохранить 10000 ... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.10, Аноним, 07:05, 26/01/2013 [^] [ответить] [смотреть все]    [к модератору]  
  • +/
    хочешь сохранить пару миллионов записей, ставь зоопарк?
     
  • 3.22, Аноним, 13:28, 26/01/2013 [^] [ответить] [смотреть все]    [к модератору]  
  • +/
    Вы не поняли части об оперативной памяти.
     
     
  • 4.28, Аноним, 19:00, 26/01/2013 [^] [ответить] [смотреть все]     [к модератору]  
  • +/
    А вы поняли Как вы себе представляете ПОЛНОЕ кэширование 1 Тб А ведь в промышл... весь текст скрыт [показать]
     
  • 2.21, all_glory_to_the_hypnotoad, 13:26, 26/01/2013 [^] [ответить] [смотреть все] [показать ветку]     [к модератору]  
  • +/
    не нужно иметь много мозгов, чтобы показывать большие tps на контенте в оператив... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.29, Аноним, 19:01, 26/01/2013 [^] [ответить] [смотреть все]     [к модератору]  
  • +/
    Покажи мне TPC-D на этой базе Угумс С штатными 32 Тб базы И полной спецификац... весь текст скрыт [показать]
     
  • 2.37, grammatik polizei, 06:25, 28/01/2013 [^] [ответить] [смотреть все] [показать ветку]     [к модератору]  
  • –1 +/
    Жюля ... весь текст скрыт [показать] [показать ветку]
     
  • 1.11, Аноним, 10:21, 26/01/2013 [ответить] [смотреть все]    [к модератору]  
  • +6 +/
    >Все данные каждого узла полностью прокэшированы в ОЗУ

    Что? Нужна БД на терабайт - накидай терабайт оперативы? Джававыродки такие милашки.

     
     
  • 2.38, Аноним, 12:36, 28/01/2013 [^] [ответить] [смотреть все] [показать ветку]     [к модератору]  
  • +/
    Я что-то не припомню, чтобы хоть в каком-нибудь боксе столько памяти видал Той ... весь текст скрыт [показать] [показать ветку]
     
  • 1.13, anonymous, 11:26, 26/01/2013 [ответить] [смотреть все]    [к модератору]  
  • +/
    то ли такой хитрый пиар джавы то ли ответление от имеющегося nosql-направления в самом postgresql.

    Неожиданно.

     
     
  • 2.15, Аноним, 11:42, 26/01/2013 [^] [ответить] [смотреть все] [показать ветку]     [к модератору]  
  • –6 +/
    Какой к черту пиар джавы Вы бы себя со стороны слышали By design гнилая технол... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.17, anonymous, 12:19, 26/01/2013 [^] [ответить] [смотреть все]     [к модератору]  
  • +/
    Вы бы себя со стороны видели как слушаете других или проанализировали собственны... весь текст скрыт [показать]
     
  • 1.16, Аноним, 12:06, 26/01/2013 [ответить] [смотреть все]    [к модератору]  
  • +/
    Не совсем понятно что будет если пара узлов упадёт.
     
     
  • 2.19, VoDA, 12:51, 26/01/2013 [^] [ответить] [смотреть все] [показать ветку]     [к модератору]  
  • +/
    Исходя из фразы данные реплицируются, можно сделать вывод, что кластер выживет ... весь текст скрыт [показать] [показать ветку]
     
     
  • 3.40, Аноним, 12:39, 28/01/2013 [^] [ответить] [смотреть все]     [к модератору]  
  • +/
    Из этой фразы ничего не следует Репликация вообще к надежности кластера никаког... весь текст скрыт [показать]
     
  • 3.44, Aleks Revo, 23:12, 30/01/2013 [^] [ответить] [смотреть все]     [к модератору]  
  • +/
    Об этом стоит прочитать подробней не из новости, а из документации В целом VoltD... весь текст скрыт [показать]
     
  • 1.20, all_glory_to_the_hypnotoad, 13:18, 26/01/2013 [ответить] [смотреть все]    [к модератору]  
  • +/
    приверно как  это http://habrahabr.ru/post/133435/ только на гогнояве
     
  • 1.26, piteri, 15:40, 26/01/2013 [ответить] [смотреть все]    [к модератору]  
  • +2 +/
    Таак-c.
    Явахейтеры увидели в новости слово "java"
    Нищеброды увидели в новости предложение "Все данные каждого узла полностью прокэшированы в ОЗУ"
    Ваши мнения безусловно интересны.
    Но всё же хотелось бы услышать тех, кто видел этот вольт вживую.
     
  • 1.31, anonymous, 21:16, 26/01/2013 [ответить] [смотреть все]    [к модератору]  
  • +/
    >Все данные каждого узла полностью прокэшированы в ОЗУ
    >запускается несколько узлов VoltDB, каждый из которых привязывается к отдельному ядру CPU

    оптимизация такая оптимизация

     
     
  • 2.32, Аноним, 23:09, 26/01/2013 [^] [ответить] [смотреть все] [показать ветку]    [к модератору]  
  • +1 +/
    OpenMP перевернулся в гробу
     
  • 1.36, Pilat, 17:16, 27/01/2013 [ответить] [смотреть все]    [к модератору]  
  • –1 +/
    Ответы на многие вопросы типа "Как вы себе представляете ПОЛНОЕ кэширование 1 Тб?" есть в FAQ, наверно такого рода вопросы постоянно встречаются у людей, не понимающих, что если серьёзные люди взялись за такую задачу, то не просто ради развлечения.

    What is VoltDB's scaling model?

    VoltDB automatically partitions frequently accessed database tables across the available cluster nodes. Both the capacity and performance of the database can be increased by adding nodes to the cluster. Upon changes to cluster size, VoltDB automatically redistributes the partitions to the new configuration when you reload the data. VoltDB also allows tables with infrequently-changing data to be replicated to each node to further optimize performance.

    Короче говоря, хотите получить терабайтную базу - ставьте 10-15 машин по 128 гигабайт. И получите пол-миллиона TPC.

     
     
  • 2.43, Whoiswho, 15:57, 30/01/2013 [^] [ответить] [смотреть все] [показать ветку]    [к модератору]  
  • +/
    frequently accessed database tables

    это здесь ключевое

     

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


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