[ON] Седьмая бета-версия OrioleDB, высокопроизводительного движка хранения для PostgreSQL

Обсуждение новостей, соответствующих тематике форума

Модератор: Модераторы разделов

Аватара пользователя
rssbot
Бот
Сообщения: 6001
ОС: gnu/linux

[ON] Седьмая бета-версия OrioleDB, высокопроизводительного движка хранения для PostgreSQL

Сообщение rssbot »

Представлена бета-версия движка хранения OrioleDB beta7 и опубликованы результаты новых тестов, демонстрирующих значительное повышение производительности по сравнению с традиционным PostgreSQL. В версии beta7 были внедрены оптимизации, направленные на улучшение работы с многопоточными нагрузками и ускорение операций чтения и записи. Первый стабильный релиз OrioleDB планируется сформировать в 2025 году. Движок написан на языке Си и распространяется под лицензией PostgreSQL, похожей на лицензии BSD и MIT.



Проект ОrioleDB развивает альтернативный движок хранения для PostgreSQL, разработанный с целью преодоления ограничений стандартного механизма хранения и повышения общей эффективности системы. Например,
ОrioleDB позволяет обойтись без периодического выполнения операции VACUUM для сборки мусора, благодаря реализации механизма MVCC (Multi-Version Concurrency Control) на базе журналов отмены (undo logs), работающих на уровне отдельных блоков и строк, а также системы автоматического слияния страниц, содержащих данные. ОrioleDB также использует 64-разрядные идентификаторы транзакций, что решает проблему с переполнением счётчиков.


Для упрощения использования в распределённых системах и распараллеливания операций в OrioleDB организовано ведение журнала предзаписи транзакций (WAL) на уровне строк. При выполнении операции UPDATE поддерживается замена данных по месту (без освобождения текущей записи и создания новой), что положительно сказывается на производительности. В OrioleDB также реализованы такие возможности, как чтение страниц с данными без использования блокировок, прямое связывание страниц в оперативной памяти со страницами в постоянном хранилище, применение механизма копирования при записи (CoW, copy-on-write) при фиксации контрольных точек для создания непротиворечивых снимков в любой момент времени, режим хранения данных в сжатом виде с использованием алгоритма ZSTD.



Из присутствующих в седьмой бета-версии OrioleDB ограничений отмечается возможность использования только индексов в формате B-tree (в будущем появится поддержка всех типов индексов PostgerSQL), а также отсутствие поддержки предварительно подготовленных транзакций (PREPARE TRANSACTION) и команды "REINDEX" в режиме "CONCURRENTLY". OrioleDB реализован в форме подключаемого расширения, требующего внесения изменений в основную кодовую базу PostgreSQL.



В тестах производительности TPC-C, которые моделируют нагрузку транзакционной обработки в реальных условиях, седьмая бета-версия OrioleDB показала значительное превосходство над штатным движком PostgreSQL. Тестирование проводилось с различным количеством одновременно работающих клиентов, чтобы оценить масштабируемость и производительность системы при увеличении нагрузки. В тестах, оценивающих пропускную способность транзакций, движок OrioleDB достиг более высокой пропускной способности, измеряемой в транзакциях в минуту (tpmC).


Изображение

Изображение
Изображение


В тестах на время отклика среднее время отклика транзакций в OrioleDB было заметно ниже по сравнению с PostgreSQL. При измерении использования ресурсов движок OrioleDB продемонстрировал более эффективное использование CPU и памяти, благодаря оптимизированному управлению ресурсами.





Источник: https://www.opennet.ru/opennews/art.shtml?num=62327
(opennet.ru, основная лента)
Последний раз редактировалось rssbot 03.12.2024 16:33, всего редактировалось 2 раза.
Причина: Updated upstream
Спасибо сказали: