Замечания к релизу QHB версии 1.1.0

QHB Plan Cache

Экспериментальная функция выключена по умолчанию, добавлена для проверки стабильности и работоспособности.

Новая функция

QHB Bootstrap

Система инициализации базы, функциональный аналог initdb полностью переделан для учёта особенностей QHB.

Новая функция

QSS

Модуль безопасного хранения (шифрования с поддержкой криптоалгоритма "Кузнечик").

  • QSS пополнился функциями qhb_get_qss_tables и qhb_get_qss_indexes.
  • Улучшился вывод в случае ошибки.
  • Добавился новый режим работы с параллельным набором ключей, qss_recrypt с командой сбора зашифрованных таблиц и их индексов.
  • Добавлена поддержка base64-encoding ключей, "Кузнечика" в CTR режиме.
  • Добавлена поддержка rbytea.
  • Добавлена утилита QSS Pinpad.
  • Добавлена поддержка RuToken.

QSQL

Пользовательская интерактивная утилита для работы из командной строки.

  • Поддержка мета-команд \password и \include.

Append Only Storage

Данное хранилище позволяет только добавлять записи, но делает это с максимальной скоростью, т.к. не выполняется полноценного MVCC анализа.

Предназначено для таблиц, с которыми не производятся модификации, например журналы, данные с датчиков и т.п.

Новая функция

QBackup

Добавлена новая подсистема резервного копирования и восстановления с поддержкой каталога, архивации резервных копий и сохранения "разности" вместо полной резервной копии.

QDL

Добавлено

  • Параллельный режим работы QDL.
  • Пользовательская документация.
  • Демонстрационный конфиг в пакете RPM.

Изменено

  • Более не нужен результат работы с СУБД, для того чтобы создать базу.
  • Стабилизирована поддержка основных типов.
  • Переделана работа со страницами и кортежами для улучшения стабильности.
  • Стандартизировано API записи во всех компонентах QDL.

Исправлено

  • Ряд системных функций, работа которых приводила к записи некорректных размеров кортежей в мета-информацию страницы.

Утилиты

  • qhb_archivecleanup: обновлены зависимости и добавлена русская локализация.
  • qhb_checksum: добавлен режим параллельной работы и нормальный вывод прогресс-бара с флагом --verbose.
  • qhb_checksum: теперь корректно работает с файлами больших размеров.
  • Реализована утилита createdb.
  • Реализована утилита dropdb.

Метрики

Подсистема сбора и предоставления для внешнего отображения системных метрик. Предоставление пока только в grafana.

  • Метрики добавлены в буфер-менеджер TARQ.
  • grafana больше не инициализирует рантайм под каждый вызов with_grafana.
  • Перещёлкивание "часов" буфера назад при переводе системных часов.

Прочие улучшения

  • Оптимизирован буфер-менеджер TARQ.
  • Из релизной сборки удалены debug-символы.
  • Исправлены параметры сборки, приводившие к просадке производительности.
  • Реализация чекпоинтера на Rust.
  • Убраны многие раздражающие ограничения и устранены критические ошибки.