Jump to content

ВольтДБ

Вольт активных данных
Разработчик(и) Вольт активных данных
Первоначальный выпуск 25 мая 2010 г. ( 25 мая 2010 г. )
Стабильная версия
11.3 / 21 апреля 2022 г .; 2 года назад ( 21 апреля 2022 )
Репозиторий
Написано в Ява , С++
Операционная система Линукс , МакОС
Платформа Ява
Тип СУБД
Лицензия Стандартная общественная лицензия GNU Affero v3, проприетарная лицензия VoltDB
Веб-сайт вольтактивные данные

Volt Active Data (ранее VoltDB) — это база данных в памяти, разработанная Майклом Стоунбрейкером , Сэмом Мэдденом и Дэниелом Абади.

Это ACID -совместимая СУБД , использующая архитектуру без общего доступа и созданная на основе работы Stonebraker по производительности системы OLTP. [1] и оптимизация. [2]

Он доступен как в корпоративной, так и в общественной версии. Выпуск для сообщества распространяется по лицензии GNU Affero General Public License .

Архитектура

[ редактировать ]

VoltDB — это система NewSQL . OLTP- [3] реляционная база данных , поддерживающая доступ SQL из предварительно скомпилированных хранимых процедур Java .

Хотя поддерживается прямой доступ к SQL, [4] наиболее эффективная форма взаимодействия — использование вызовов хранимых процедур, [5] поскольку это предполагает меньшее количество сетевых поездок. Хранимые процедуры написаны на Java путем расширения класса VoltProcedure и реализации метода run(), который включает в себя как операторы SQL, так и поддержку логики Java. Внутренне данные управляются ядром C++, чтобы избежать проблем со сборкой мусора. [6]

VoltDB опирается на горизонтальное секционирование до отдельного аппаратного потока для масштабирования, k-безопасность ( синхронную репликацию ) для обеспечения высокой доступности , а также комбинацию непрерывных снимков и журналирования команд для обеспечения надежности (восстановление после сбоя).

VoltDB основан на H-Store . Для масштабирования он использует архитектуру без общего доступа. Данные и связанная с ними обработка распределяются по ядрам ЦП на серверах, составляющих один кластер VoltDB. Расширяя свою основу без общего доступа до уровня каждого ядра, VoltDB масштабируется с увеличением количества ядер на процессор на многоядерных серверах.

Сделав хранимые процедуры единицей транзакции и выполняя их в разделе, содержащем необходимые данные, можно исключить обмен сообщениями между операторами SQL. Хранимые процедуры выполняются последовательно и до завершения в одном потоке без блокировки или фиксации, аналогично архитектуре LMAX . [7] Поскольку данные находятся в памяти и локально для раздела, хранимая процедура может выполняться за микросекунды. Схема запуска хранимых процедур VoltDB позволяет всем узлам инициировать хранимые процедуры, избегая при этом единого сериализуемого глобального порядка. [8]

VoltDB совместим с ACID. Данные записываются в долговременное хранилище. Долговечность обеспечивается непрерывными снимками; асинхронное журналирование команд, при котором создаются как снимки, так и журнал транзакций между снимками; и синхронное ведение журнала команд, при котором транзакции регистрируются после завершения транзакции и до ее фиксации в базе данных. Это гарантирует, что ни одна транзакция не будет зафиксирована и не будет потеряна.

В VoltDB v5.0 представлен инструмент мониторинга и управления базами данных — VoltDB Management Center (сокращенно VMC). VMC обеспечивает комплексный мониторинг и управление конфигурацией базы данных VoltDB на основе браузера, включая графики пропускной способности и задержки кластера, а также использования ЦП и памяти для текущего сервера.

В VoltDB версии 5.1, выпущенной в марте 2015 года, появилась функция репликации базы данных (DR), устранившая любую единственную точку отказа. DR обеспечивает одновременную параллельную репликацию нескольких разделов и двоичные журналы результатов транзакций, избавляя реплику от необходимости воспроизводить транзакцию.

Версия 6.0 [9] представили геопространственные типы данных

Версия 6.1 [10] добавлены потоки, в которые можно вставлять, с поддержкой агрегирования в материализованных представлениях потоковых данных.

Версия 6.6 [11] добавлена ​​поддержка кластеров XDCR, работающих между смешанными версиями Volt, а также смешанными размерами и конфигурациями.

Версия 7.1 [12] , выпущенный в марте 2017 года, представил поддержку шифрования TLS для клиентских сетей.

Версия 7.5 [13] выпущенный 28 июля 2017 г., представил kafkaloader для использования потоковых событий из Kafka непосредственно в таблицу базы данных или в хранимую процедуру для обработки.

Версия 7.6 [14] (28 августа 2017 г.) были представлены пользовательские функции SQL, позволяющие клиентам писать собственные функции на Java и делать их вызываемыми из оператора SQL. Версия 8.0 [15] (6 февраля 2018 г.) представило шифрование TLS для сетевого взаимодействия между кластерами с использованием DR и XDCR, а также для связи внутри кластера.

Версия 8.2 [16] (12 июля 2018 г.) представлена ​​функция TTL, которая позволяет приложениям определять «время жизни» в столбце отметки времени в таблице. По истечении срока действия внутренний процесс очищает записи из базы данных.

Версия 8.4 [17] (29 декабря 2018 г.) представила клиентам Volt версии с долгосрочной поддержкой. В этой версии поддержка увеличена с одного года до трех лет, что позволяет клиентам продолжать использовать версию и получать критические обновления для обеспечения стабильности, безопасности и правильности. Версия 9.0 [18] (11 апреля 2019 г.) представлены новые функции потоковой передачи, включая миграцию данных в поток по истечении срока действия и сбор изменений данных.

Версия 9.3 [19] (1 мая 2020 г.), в выпуске с долгосрочной поддержкой (LTS), были представлены запланированные задачи — способ автоматизации повторяющихся задач и вызовов процедур из Volt. Schedule Tasks имеет простой в использовании интерфейс для вызова заранее определенных процедур, а также может быть полностью настроен на Java для создания более сложных расписаний.

Версия 10.0 [20] (август 2020 г.) представил Volt Оператор для Kubernetes и Helm Charts, предлагающий комплексное решение для запуска баз данных VoltDB в облачной среде Kubernetes. Кроме того, в версии 10.0 появился агент Prometheus для сбора и построения графиков показателей.

В10.2 [21] (январь 2021 г.) представили темы VoltDB, обеспечивающие интеллектуальную потоковую передачу существующих возможностей импорта и экспорта VoltDB, но с гибкостью потоков, подобных Kafka. Темы позволяют осуществлять как входящую, так и исходящую потоковую передачу нескольким клиентским производителям и потребителям. Они позволяют интеллектуально обрабатывать и манипулировать данными, проходящими через конвейер. V10.2 — это версия LTS.

Версия 11.0 [22] (21 апреля 2022 г.) представляет возможность подключения к DataDog , поддержку Java 17, совместимость с Kubernetes 22.0 и приоритетные транзакции.

В феврале 2022 года продукт был переименован в Volt Active Data. [23]

См. также

[ редактировать ]
  1. ^ «OLTP в Зазеркалье и что мы там нашли» (PDF) . nms.csail.mit.edu .
  2. ^ «Конец архитектурной эры (пришло время полностью переписать)» (PDF) . nms.csail.mit.edu .
  3. ^ «Высокопроизводительная СУБД для приложений с быстрой передачей данных, требующих интеллектуальной потоковой передачи транзакций» (PDF) . voltdb.com .
  4. ^ «Интерфейс JDBC» . voltdb.com .
  5. ^ «Проектирование хранимых процедур для доступа к базе данных» . voltdb.com .
  6. ^ «Развенчивание мифов о базе данных VoltDB в памяти — DZone Java» . dzone.com . Проверено 13 ноября 2020 г.
  7. ^ «Архитектура LMAX» . martinfowler.com . Проверено 7 апреля 2019 г.
  8. ^ «Центр разработчиков БД» . ВольтДБ . Проверено 7 апреля 2019 г.
  9. ^ «Примечания к выпуску VoltDB 6» . voltactivedata.com .
  10. ^ «Примечания к выпуску VoltDB 6» . voltactivedata.com .
  11. ^ «Примечания к выпуску VoltDB 6» . voltactivedata.com .
  12. ^ «Примечания к выпуску VoltDB 7» . voltactivedata.com .
  13. ^ «Примечания к выпуску VoltDB 7» . voltactivedata.com .
  14. ^ «Примечания к выпуску VoltDB 7» . voltactivedata.com .
  15. ^ «Примечания к выпуску VoltDB 8» . voltactivedata.com .
  16. ^ «Примечания к выпуску VoltDB 8» . voltactivedata.com .
  17. ^ «Примечания к выпуску VoltDB 8» . voltactivedata.com .
  18. ^ «Примечания к выпуску VoltDB 9» . voltactivedata.com .
  19. ^ «Примечания к выпуску VoltDB 9» . voltactivedata.com .
  20. ^ «Примечания к выпуску VoltDB 10» . voltactivedata.com .
  21. ^ «Примечания к выпуску VoltDB 10» . voltactivedata.com .
  22. ^ «Примечания к выпуску VoltDB 10» . voltactivedata.com .
  23. ^ «На сегодняшний день мы — Volt Active Data» . voltactivedata.com . 21 февраля 2022 г.
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 24effd5db5805439630c73ed228fc159__1714532100
URL1:https://arc.ask3.ru/arc/aa/24/59/24effd5db5805439630c73ed228fc159.html
Заголовок, (Title) документа по адресу, URL1:
VoltDB - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)