HSQLDB
![]() | В этой статье есть несколько проблем. Пожалуйста, помогите улучшить его или обсудите эти проблемы на странице обсуждения . ( Узнайте, как и когда удалять эти шаблонные сообщения )
|
![]() Менеджер базы данных HSQL | |
Первоначальный выпуск | 2001 год |
---|---|
Стабильная версия | 2.7.2
/ 1 июня 2023 г |
Репозиторий | |
Написано в | Ява |
Операционная система | Кросс-платформенный |
Размер | 10,8 МБ (ZIP-файл 2.6.0) [ 1 ] |
Тип | СУБД |
Лицензия | БСД |
Веб-сайт | hsqldb ![]() |
HSQLDB ( — это база данных Hyper SQL ) написанная система , управления реляционными базами данных на Java . Он имеет драйвер JDBC и поддерживает большое подмножество стандартов SQL-92 , SQL:2008 , SQL:2011 и SQL:2016 . [ 2 ] Он предлагает быстрый, [ 3 ] небольшой (около 1300 килобайт в версии 2.2) механизм базы данных , который предлагает таблицы как в памяти , так и на диске. Доступны как встроенный, так и серверный режимы.
Кроме того, он включает в себя такие инструменты, как минимальный веб-сервер , инструменты командной строки и управления графическим интерфейсом (можно запускать как апплеты), а также ряд демонстрационных примеров. Он может работать в средах выполнения Java начиная с версии 1.1, включая бесплатные реализации Java, такие как Kaffe .
HSQLDB доступен по лицензии BSD . Он используется в качестве базы данных и механизма сохранения данных во многих проектах программного обеспечения с открытым исходным кодом , таких как потомки OpenOffice.org Base (т. е. Apache OpenOffice Base , LibreOffice Base и т. д.), а также клиент Jitsi VoIP и видеоконференций, начиная с версии 2.6. . [ 4 ] Он также используется в коммерческих продуктах, таких как Mathematica и InstallAnywhere (начиная с версии 8.0). [ 5 ]
Сопровождение сделок
[ редактировать ]HSQLDB версии 2.0 имеет три режима управления транзакциями. Он поддерживает уровни изоляции зафиксированных и сериализуемых транзакций чтения с блокировками на уровне таблицы или с управлением многоверсионным параллелизмом (MVCC) или комбинацией блокировок и MVCC. Версия 1.8.1 поддерживает только уровень изоляции транзакций 0 (чтение без фиксации). [ 6 ]
Хранение данных
[ редактировать ]HSQLDB имеет два основных типа таблиц, используемых для длительного хранения данных для чтения и записи, т. е., если транзакция была успешно зафиксирована, гарантируется, что данные переживут сбой системы и сохранят свою целостность.
Тип ПАМЯТЬ по умолчанию сохраняет все изменения данных на диске в форме сценария SQL . Во время запуска двигателя эти команды выполняются и данные восстанавливаются в памяти.
Другой тип таблицы — CACHED, который позволяет хранить больше данных за счет снижения производительности. Механизм HSQLDB загружает их лишь частично и синхронизирует данные с диском при фиксации транзакции. Однако механизм всегда загружает в память все строки, затронутые во время обновления. Это делает невозможным очень большие обновления без разделения работы на более мелкие части. [ 7 ]
Другие типы таблиц позволяют получить доступ к файлам со значениями, разделенными запятыми (CSV). Эти таблицы могут участвовать, например, в запросах с помощью JOIN, упрощать обработку электронных таблиц и кратковременное хранение данных в памяти для чтения и записи.
Возможности SQL
[ редактировать ]HSQLDB 2.0 поддерживает все основные функции и множество дополнительных функций SQL:2008 . Расширенные функции включают определяемые пользователем процедуры и функции SQL, схемы, интервалы даты и времени, обновляемые представления, массивы, большие объекты, полные и латеральные соединения и операции над множествами . Также поддерживаются многие нестандартные функции, такие как TO_CHAR и DECODE. Расширения стандартного SQL включают определяемые пользователем агрегатные функции .
Релизы
[ редактировать ]С 2001 года было выпущено несколько версий HSQLDB. Ранние версии были основаны на снятом с производства ядре базы данных HypersonicSQL. Версия 2.0, выпущенная в 2010 году, представляет собой в основном новый код, написанный в соответствии со стандартом SQL и JDBC 4. спецификацией [ 8 ]
Версия 2.3.2 (выпущенная в 2014 г.) является полностью многопоточной и поддерживает высокопроизводительную двухфазную блокировку и модели управления транзакциями MVCC (многоверсионный параллельный контроль) .
См. также
[ редактировать ]- Список систем управления реляционными базами данных
- Сравнение систем управления реляционными базами данных
- Апач Дерби
- Н2
Ссылки
[ редактировать ]- ^ «Главная/hsqldb/hsqldb_2_6» . Ядро базы данных HyperSQL (HSQLDB) . ИсточникФордж. 21 марта 2021 г. Проверено 1 апреля 2021 г.
- ^ «Синтаксис SQL HSQLDB» . hsqldb.org.
- ^ «Сравнение производительности PolePosition» . полюсос.орг.
- ^ «Примечания к выпуску Jitsi build 5390» . Джитси.орг. Архивировано из оригинала 2 февраля 2015 г. Проверено 1 февраля 2015 г.
- ^ «Программное обеспечение, использующее HSQLDB» . hsqldb.org.
- ^ «Документация HSQLDB» . hsqldb.org.
- ^ «Документация HSQLDB» . hsqldb.org. Архивировано из оригинала 2 мая 2015 г. Проверено 11 ноября 2007 г.
- ^ «Новая база данных HSQLDB» . hsqldb.org.
Внешние ссылки
[ редактировать ]- Бесплатные системы управления базами данных
- Программное обеспечение платформы Java
- SQL
- Системы управления реляционными базами данных
- Программное обеспечение для управления реляционными базами данных для Linux
- Программное обеспечение, использующее лицензию BSD
- Встроенные базы данных
- Механизмы баз данных