HSQLDB

редактировать
Ядро базы данных на основе Java
HSQLDB (HyperSQL DataBase)
Менеджер баз данных HSQL HSQL Менеджер базы данных
Первоначальный выпуск2001; 19 лет назад (2001 г.)
Стабильный выпуск 2.5.2 / 29 июня 2020 г.; 3 месяца назад (2020-06-29)
Написано наJava
Операционная система Кросс-платформенная
Размер 8,1 МБ (файл 2.5.0 ZIP)
Тип СУБД
Лицензия BSD
Веб-сайтhsqldb.org Измените это в Викиданных

HSQLDB (Hyper SQL Data b ase) - это система управления реляционными базами данных, написанная на Java. Он имеет драйвер JDBC и поддерживает большое подмножество SQL-92, SQL: 2008, SQL: 2011, и стандарты SQL: 2016. Он предлагает быстрое, маленькое (около 1300 килобайт в версии 2.2) ядро ​​базы данных, которое предлагает как в памяти, так и дисковые таблицы. Доступны как встроенный, так и серверный режимы.

Кроме того, он включает в себя такие инструменты, как минимальный веб-сервер, инструменты управления с помощью командной строки и графического интерфейса (можно запускать как апплеты), а также ряд демонстрационных примеров. Он может работать в среде выполнения Java начиная с версии 1.1 и выше, включая бесплатные реализации Java, такие как Kaffe.

HSQLDB доступен по лицензии BSD. Он используется в качестве базы данных и механизма сохранения состояния во многих программных проектах с открытым исходным кодом, таких как OpenOffice Base, LibreOffice Base и Jitsi Клиент VoIP и видеоконференцсвязи с версии 2.6. Он также используется в коммерческих продуктах, таких как Mathematica и InstallAnywhere (начиная с версии 8.0).

Содержание
  • 1 Поддержка транзакций
  • 2 Хранение данных
  • 3 Функции SQL
  • 4 версии
  • 5 См. Также
  • 6 Ссылки
  • 7 Внешние ссылки
Поддержка транзакций

HSQLDB версии 2.0 имеет три режима управления транзакциями. Он поддерживает уровни изоляции с подтвержденным чтением и сериализуемые уровни изоляции с блокировками на уровне таблицы или с мультиверсионным управлением параллелизмом (MVCC), или комбинацией блокировок и MVCC. версия 1.8.1 поддерживает только изоляцию транзакций уровень 0 (чтение не зафиксировано).

Хранилище данных

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

Тип MEMORY по умолчанию сохраняет все изменения данных на диске в форме SQL скрипта. Во время запуска двигателя эти команды выполняются, и данные восстанавливаются в памяти.

Другой тип таблиц - CACHED, который позволяет хранить больше данных за счет более низкой производительности. Механизм HSQLDB загружает их только частично и синхронизирует данные с диском при фиксации транзакции. Однако движок всегда загружает в память все затронутые во время обновления строки. Это делает невозможными очень большие обновления без разделения работы на более мелкие части.

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

Возможности SQL

HSQLDB 2.0 поддерживает все основные функции и многие дополнительные функции SQL: 2008. Расширенные функции включают определяемые пользователем процедуры и функции SQL, схемы, интервалы времени, обновляемые представления, массивы, лобовые части, полные и боковые соединения и операции с наборами. Также поддерживаются многие нестандартные функции, такие как TO_CHAR и DECODE. Расширения к стандартному SQL включают определяемые пользователем агрегатные функции.

Выпуски

С 2001 года было выпущено несколько версий HSQLDB. Ранние версии были основаны на прекращенном движке базы данных HypersonicSQL. Версия 2.0, выпущенная в 2010 году, в основном представляет собой новый код, написанный в соответствии со спецификацией Standard SQL и JDBC 4.

Версия 2.3.2 (выпущена в 2014 году) является полностью многопоточным и поддерживает высокопроизводительные модели управления транзакциями двухфазную блокировку и MVCC (управление многовариантным параллелизмом).

См. Также
  • Портал бесплатного программного обеспечения с открытым исходным кодом
Ссылки
Внешние ссылки
Последняя правка сделана 2021-05-22 09:47:35
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте