Рубрики
Без рубрики

Версия Вашей Базы Данных / Направления На Будущее

Всем привет, так как я хочу в ближайшее время выпустить версию 1.0.0 SirixDB[1], но мне не хватает сообщества с открытым исходным кодом… С тегами обсудить, база данных, котлин, java.

Привет всем,

поскольку я хочу в ближайшее время выпустить версию 1.0.0 SirixDB[1], но, к сожалению, у меня нет сообщества с открытым исходным кодом, я хотел бы обсудить здесь то, что вы считаете наиболее важным для будущих направлений.

Короче говоря, SirixDB хранит историю каждого ресурса в базе данных с помощью огромной структуры индексирования, полностью основанной на копировании при записи. Это означает, что он разделяет неизмененные страницы базы данных между версиями. SirixDB позволяет выполнять сложные запросы о путешествиях во времени и реализует различные алгоритмы. Он хранит XML и JSON в двоичном формате изначально, но также может хранить графики или другие виды данных.

Идеи на будущее были бы:

  • горизонтальное масштабирование, то есть запись через один мастер, обеспечение согласованности ваших собственных записей, репликация ресурсов на нескольких узлах кластера… скорее всего, с использованием Zookeeper и Apache Bookkeeper с семантикой доставки ровно один раз…
  • интерактивная визуализация различий между редакциями ресурсов. В настоящее время SirixDB хранит данные с древовидной структурой в двоичном формате, то есть как XML, так и JSON. Различные возможности уже есть. Также некоторые устаревшие визуализации[2] в обработке, которые я хотел бы перенести на D3 в Интернет. Кроме того, веб-интерфейс был бы хорош
  • Добавление правил оптимизатора запросов на основе затрат и правил перезаписи индексов для значительного повышения производительности запросов
  • Изучая, как умно удалять старые версии (мне нужно посмотреть, как ZFS позволяет удалять моментальные снимки). Однако, как своего рода уродливый взлом, фоновый процесс может, например, скопировать самую последнюю версию на новый ресурс на данный момент. Я думаю, это становится довольно сложно, так как неизмененные страницы базы данных разделяются между версиями, а страницы записей даже имеют версии. Таким образом, страница должна быть восстановлена из фрагментов страниц разных редакций в зависимости от используемого алгоритма.

Кроме того, я хочу закончить работу над версиями всей базы данных, а не только ресурсов в базе данных.

До недавнего времени я думал, что изучу горизонтальное масштабирование, чтобы использовать GraalVM для собственных образов, то есть обеспечить сверхбыстрое время запуска в контейнерах docker, работать над записью/чтением из кластера бухгалтеров и развертывать все в кластере Kubernetes.

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

С наилучшими пожеланиями и удачных выходных Йоханнес

[1] https://sirix.io и https://github.com/sirixdb/sirix [2] https://m.youtube.com/watch?характеристика=youtu.be и v=l9cxxbkl5vi

Оригинал: “https://dev.to/johanneslichtenberger/version-your-database-future-directions-b8h”