Jump to content

АрангоДБ

(Перенаправлено из AQL (язык запросов ArangoDB) )
АрангоДБ
Разработчик(и) АрангоДБ ГмбХ
Первоначальный выпуск 2011 год ; 13 лет назад ( 2011 )
Стабильная версия
3.11.5 / 9 ноября 2023 г .; 8 месяцев назад ( 09.11.2023 )
Репозиторий
Написано в С++ , JavaScript
Тип Многомодельная база данных , Графовая база данных , Документно-ориентированная база данных , База данных ключей/значений , Полнотекстовая поисковая система
Лицензия Лицензия Business Source 1.1 и лицензия сообщества Arango
Веб-сайт арангодб

ArangoDB — это система графовых баз данных, разработанная ArangoDB Inc. ArangoDB — это многомодельная система баз данных, поскольку она поддерживает три модели данных (графики, документы JSON , ключ/значение ). [1] с одним ядром базы данных и унифицированным языком запросов AQL (язык запросов ArangoDB). AQL — преимущественно декларативный язык. [2] и позволяет комбинировать различные шаблоны доступа к данным в одном запросе. [3]

ArangoDB — NoSQL. система баз данных [4] но AQL во многом похож на SQL , [5] он использует RocksDB в качестве механизма хранения.

ArangoDB GmbH была основана в 2014 году Клаудиусом Вайнбергером и Фрэнком Селлером. [6] Первоначально они назвали систему баз данных «Универсальным контейнером объектов», или сокращенно AVOC, что привело к тому, что они назвали базу данных AvocadoDB. [7] [8] [9] Позже они изменили название на ArangoDB. [10] Слово «аранго» относится к малоизвестному сорту авокадо, выращиваемому на Кубе. [11]

В январе 2017 года ArangoDB привлекла начальный раунд инвестиций в размере 4,2 миллиона евро под руководством Target Partners. В марте 2019 года ArangoDB привлекла 10 миллионов долларов в рамках финансирования серии A. [12] во главе с Bow Capital. В октябре 2021 года ArangoDB привлекла 27,8 миллиона долларов в рамках финансирования серии B под руководством Iris Capital . [13]

История выпусков

[ редактировать ]
Выпускать Первый выпуск Последняя дополнительная версия Последний выпуск Примечания к функциям Ссылка
3.11 2023-05-30 3.11.5 2023-11-09
  • Более высокая производительность запросов при поиске и графике.
  • Операционные улучшения в области науки о данных и аналитике.
  • Улучшенный пользовательский интерфейс для администрирования и управления базами данных.
Примечания к выпуску
3.10 2022-10-04 3.10.11 2023-10-19
  • Встроенная поддержка ARM, включая встроенную поддержку Apple Silicon .
  • Поддержка вычисляемых значений (постоянных атрибутов документа, которые генерируются при создании или обновлении документа).
  • Параллелизм для сегментированных графов.
  • Алгоритм обхода графа для запроса всех путей с кратчайшим значением между двумя документами.
Примечания к выпуску
3.9 2022-02-15 3.9.12 2023-08-23
  • Коллекции, реплицированные на всех узлах кластера, можно объединять с графами, сегментированными по атрибутам документа, чтобы обеспечить более локальное выполнение запросов к графам («Гибридные SmartGraphs», «Гибридные непересекающиеся SmartGraphs»).
  • Независимая от языка токенизация текста («Анализатор сегментации»).
Примечания к выпуску
3.8 2021-07-29 3.8.9 2023-03-27
  • Алгоритмы обхода графа для перечисления всех путей между двумя вершинами («k путей») и выдачи путей в порядке возрастания весов ребер («Взвешенные обходы»).
  • Поддержка запросов скользящего окна для агрегирования смежных документов, диапазонов значений и временных интервалов.
  • Геопространственные запросы можно комбинировать с полнотекстовым поиском.
  • Гибкая предварительная обработка полей данных с помощью пользовательских запросов («Анализатор AQL») и возможность объединения встроенных и пользовательских анализаторов («Конвейерный анализатор»).
  • Аппаратное ускорение шифрования диска.
Примечания к выпуску
3.7 2020-09-16 3.7.17 2022-02-01
  • Графы реплицируются на всех узлах кластера для локального обхода графа («SatelliteGraphs»).
  • Проверка документа с использованием схемы JSON.
  • Поддержка подстановочных знаков и нечеткого поиска для полнотекстового поиска.
  • Ротация ключей для токенов JWT суперпользователя, сертификатов TLS и ключей шифрования на диске.
Примечания к выпуску
3.6 2020-01-08 3.6.16 2021-09-06
  • Возможность хранения всех коллекций базы данных на одном узле кластера для объединения производительности одного сервера и семантики ACID с отказоустойчивой настройкой кластера («OneShard»).
  • Параллельное выполнение запросов на нескольких узлах кластера.
  • Поздняя материализация документов для извлечения только соответствующих документов из запросов SORT/LIMIT и раннее удаление несовпадающих документов при полном сканировании коллекции.
  • Встраивание определенных подзапросов для сокращения времени выполнения.
Примечания к выпуску
3.5 2019-08-21 3.5.7 2020-12-30
  • Многодокументные транзакции с отдельными командами начала и фиксации/прерывания («Потоковые транзакции»).
  • Удаление документов с истекшим сроком действия по времени («Индекс времени жизни»).
  • Поддержка условий остановки для обхода графа («Отсечение при обходе»).
  • Алгоритм обхода графа для получения нескольких кратчайших путей («k кратчайших путей»).
  • Совместно расположенные объединения в кластере с использованием одинаково сегментированных коллекций («SmartJoins»).
  • Согласованное резервное копирование моментальных снимков в режиме кластера.
  • Пользовательские текстовые препроцессоры для полнотекстового поиска («Конфигурируемые анализаторы»).
  • Возможности маскировки данных для атрибутов, содержащих конфиденциальные данные/PII, при создании резервных копий.
Примечания к выпуску
3.4 2018-12-06 3.4.11 2020-09-09
  • Интегрированная система полнотекстового поиска и получения информации («ArangoSearch»).
  • Улучшен геопространственный индекс с поддержкой GeoJSON.
  • Операции вставки можно автоматически превратить в замену, если целевой документ уже существует («Повторить»).
  • Поддержка циклического балансировщика нагрузки для облачных сред.
  • Профилирование запросов для отображения подробной информации о времени выполнения.
  • Запросы агрегации, распределенные по кластеру.
  • Собственные реализации на C++ всех встроенных функций запросов.
  • Многопоточные операции дампа и восстановления.
Примечания к выпуску
3.3 2017-12-22 3.3.25 2020-02-28
  • Репликация между центрами обработки данных для аварийного восстановления («DC2DC»).
  • Зашифрованные резервные копии.
  • Режим развертывания для отдельных серверов с автоматическим переключением при сбое.
Примечания к выпуску
3.2 2017-07-20 3.2.18 2019-02-02
  • Распределенная итеративная обработка графов с помощью Pregel на одном сервере и в кластере.
  • Коллекции реплицируются на всех узлах кластера для локального выполнения объединений с сегментированными данными («SatelliteCollections»).
  • Отказоустойчивые микросервисы.
  • Поддержка составных географических запросов на основе расстояния.
  • Утилита экспорта для нескольких форматов.
  • Шифрование данных на диске.
  • LDAP-аутентификация.
Примечания к выпуску
3.1 2016-11-03 3.1.29 2018-06-23
  • Сегментирование больших наборов графических данных на основе значений для лучшей локальности данных при перемещении по графам («SmartGraphs»).
  • Поддержка вершинно-ориентированных индексов для более эффективного обхода графа с условиями фильтрации.
  • Новый просмотрщик больших графиков с поддержкой WebGL.
  • Двоичный формат проводов («VelocyStream»).
  • Обработка запросов с малой задержкой с использованием серверной инфраструктуры boost-ASIO.
  • Улучшен редактор запросов и вывод объяснения запроса.
  • Журнал аудита.
Примечания к выпуску
3.0 2016-07-23 3.0.12 2016-11-23
  • Поддержка кластеров с синхронной репликацией и автоматическим переходом на другой ресурс.
  • Бинарный формат хранения («VelocyPack»).
  • Постоянные индексы, хранящиеся на диске для более быстрого перезапуска.
Выпускать

Примечания

  • JSON: ArangoDB использует JSON в качестве формата хранения по умолчанию. [14] но внутри он использует ArangoDB VelocyPack — быстрый и компактный двоичный формат для сериализации и хранения. [15] ArangoDB может хранить вложенный объект JSON в виде записи данных внутри коллекции. Поэтому нет необходимости дизассемблировать полученные объекты JSON. Таким образом, сохраненные данные будут просто наследовать древовидную структуру данных JSON.
  • Предсказуемая производительность: ArangoDB написан в основном на C++. [16] и управляет собственной памятью, чтобы избежать непредсказуемой производительности, возникающей из-за сборки мусора .
  • Масштабирование: ArangoDB обеспечивает масштабирование посредством кластеризации. [17]
  • Надежность: ArangoDB обеспечивает репликацию между центрами обработки данных. [18]
  • Kubernetes: ArangoDB работает на Kubernetes, включая облачные сервисы Kubernetes Amazon Elastic Kubernetes Service (EKS), Google Kubernetes Engine (GKE) и Microsoft Azure Kubernetes Service (AKS). [19]
  • Микросервисы: ArangoDB обеспечивает интеграцию с собственными микросервисами JavaScript непосредственно поверх СУБД с использованием платформы Foxx. [20]
  • Несколько языков запросов. База данных имеет собственный язык запросов AQL (язык запросов ArangoDB), а также предоставляет GraphQL для написания гибких собственных веб-сервисов непосредственно поверх СУБД. [21]
  • Поиск: поисковая система ArangoDB сочетает в себе возможности логического поиска с обобщенными компонентами ранжирования, что позволяет осуществлять поиск данных на основе точной модели векторного пространства . [22]
  • Алгоритм Pregel: Pregel — это система для крупномасштабной обработки графов. [23] Pregel реализован в ArangoDB и может использоваться с предопределенными алгоритмами, например PageRank, кратчайшим путем с одним источником и подключенными компонентами. [24]
  • Транзакции: ArangoDB поддерживает транзакции, определяемые пользователем. Транзакции в ArangoDB являются атомарными, согласованными, изолированными и устойчивыми ( ACID ), но только если данные не сегментированы. [25]

AQL (язык запросов ArangoDB) — это SQL -подобный язык запросов. [26] используется в ArangoDB. Он поддерживает операции CRUD как для документов (узлов), так и для ребер, но не является языком определения данных (DDL). AQL поддерживает геопространственные запросы.

AQL ориентирован на JSON :

// Return every document in a collection
FOR doc IN collection 
  RETURN doc
  
// Count the number of documents in a collection
FOR doc IN collection
    COLLECT WITH COUNT INTO length
    RETURN length

// Add a new document into our collection
INSERT { _key: "john", name: "John", age: 45 } INTO collection

// Update document with key of “john” to have age 46.
UPDATE { _key: "john", age: 46 } IN collection

// Add an attribute numberOfLogins for all users with status active:
FOR u IN users
  FILTER u.active == true
  UPDATE u WITH { numberOfLogins: 0 } IN users
  • Community Edition: ArangoDB Community Edition — это графовая база данных с собственными возможностями многомодельной базы данных, написанная в основном на C++ и доступная по лицензии с открытым исходным кодом ( Apache 2 ) до октября 2023 года. Затем она была изменена на «Лицензия сообщества ArangoDB, которая ограничивает его использование в коммерческих целях и накладывает ограничение на размер набора данных в 100 ГБ в пределах одного кластера». [27]
  • Коммерческое самостоятельное управление: ArangoDB Enterprise — это платная подписка, включающая сегментирование с поддержкой графов (называемое «SmartGraphs»). [28] и репликация коллекций (так называемые «Спутниковые коллекции») для сокращения времени выполнения запросов, [29] и повышенная безопасность. [30]
  • Облако: ArangoDB предлагается в виде облачного сервиса под названием Oasis, предоставляющего базы данных ArangoDB как услугу ( DBaaS ). ArangoDB Oasis обеспечивает функциональность развертывания кластера ArangoDB, сводя при этом к минимуму объем необходимых административных усилий. [31] ArangoDB Oasis работает на нескольких поставщиках облачных услуг , включая AWS, Azure и Google Cloud. [32]

См. также

[ редактировать ]
  1. ^ «Преимущества встроенной мультимодели в ArangoDB» . АрангоДБ . Проверено 26 июля 2022 г.
  2. ^ «Язык запросов ArangoDB (AQL) Введение | Документация ArangoDB» . www.arangodb.com . Проверено 26 июля 2022 г.
  3. ^ «Шаблоны и примеры запросов AQL | Документация ArangoDB» . www.arangodb.com . Проверено 26 июля 2022 г.
  4. ^ Селлер, Фрэнк (7 марта 2012 г.). «Цели проектирования ArangoDB» . АрангоДБ . Проверено 26 июля 2022 г.
  5. ^ «Язык запросов ArangoDB (AQL) Введение | Документация ArangoDB» . www.arangodb.com . Проверено 26 июля 2022 г.
  6. ^ «База данных сортов» . www.avocadosource.com . Проверено 27 июля 2022 г.
  7. ^ Ортелл, Билл (08 марта 2021 г.), AvocadoDB , получено 27 июля 2022 г.
  8. ^ Объяснение AvocadoDB , получено 27 июля 2022 г.
  9. ^ Язык запросов AvocadoDB, Ян Стиманн на английском языке , получено 27 июля 2022 г.
  10. ^ « AvocadoDB» становится «ArangoDB» « . АрангоДБ . 9 мая 2012 г. Проверено 27 июля 2022 г.
  11. ^ «База данных сортов» . www.avocadosource.com . Проверено 5 августа 2022 г.
  12. ^ Вайнбергер, Клавдий (14 марта 2019 г.). «ArangoDB получает финансирование серии А от Bow Capital» . АрангоДБ . Проверено 27 июля 2022 г.
  13. ^ «ArangoDB объявляет об инвестициях серии B в размере 27,8 миллионов долларов США для ускорения разработки графического машинного обучения следующего поколения, обеспечивающего расширенные возможности аналитики и искусственного интеллекта в масштабе предприятия» . АрангоДБ . Проверено 27 июля 2022 г.
  14. ^ Объяснение AvocadoDB , получено 5 августа 2022 г.
  15. ^ Язык запросов AvocadoDB, Ян Стиманн на английском языке , получено 5 августа 2022 г.
  16. ^ ArangoDB , ArangoDB, 05 августа 2022 г. , получено 5 августа 2022 г.
  17. ^ «Кластер | Режимы развертывания ArangoDB | Архитектура | Руководство | Документация ArangoDB» . www.arangodb.com . Проверено 5 августа 2022 г.
  18. ^ «Репликация DC2DC | Документация ArangoDB» . www.arangodb.com . Проверено 5 августа 2022 г.
  19. ^ «Kubernetes | Учебники | Руководство | Документация ArangoDB» . www.arangodb.com . Проверено 5 августа 2022 г.
  20. ^ «Микросервисы Foxx | Документация ArangoDB» . www.arangodb.com . Проверено 5 августа 2022 г.
  21. ^ ArangoDB , ArangoDB, 05 августа 2022 г. , получено 5 августа 2022 г.
  22. ^ «ArangoSearch — полнотекстовая поисковая система, включающая возможности ранжирования по сходству» . АрангоДБ . Проверено 5 августа 2022 г.
  23. ^ «Информационный документ Прегеля Стэнфордского университета» (PDF) .
  24. ^ «Прегель | Наука о данных | Руководство | Документация ArangoDB» . www.arangodb.com . Проверено 5 августа 2022 г.
  25. ^ «Транзакции | Руководство | Документация ArangoDB» . www.arangodb.com . Проверено 5 августа 2022 г.
  26. ^ «Кластер | Режимы развертывания ArangoDB | Архитектура | Руководство | Документация ArangoDB» . www.arangodb.com . Проверено 11 августа 2022 г.
  27. ^ ArangoDB , ArangoDB, 13 октября 2023 г. , получено 13 октября 2023 г.
  28. ^ «ArangoDB SmartGraphs | Документация ArangoDB» . www.arangodb.com . Проверено 11 августа 2022 г.
  29. ^ «ArangoDB SatelliteCollections | Документация ArangoDB» . www.arangodb.com . Проверено 11 августа 2022 г.
  30. ^ «Корпоративные функции ArangoDB» . АрангоДБ . Проверено 11 августа 2022 г.
  31. ^ «Начало работы с ArangoDB Oasis | Документация ArangoDB» . www.arangodb.com . Проверено 11 августа 2022 г.
  32. ^ «АрангоДБ Оазис» . ArangoDB Оазис . Проверено 11 августа 2022 г.
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: a47140ff3a7db2ad7cb10a991f90483f__1719811500
URL1:https://arc.ask3.ru/arc/aa/a4/3f/a47140ff3a7db2ad7cb10a991f90483f.html
Заголовок, (Title) документа по адресу, URL1:
ArangoDB - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)