Размер базы данных HSQL - PullRequest
       7

Размер базы данных HSQL

0 голосов
/ 03 апреля 2011

Мой текущий проект использует HSQLDB в производственном режиме.

Поскольку я хотел загрузить файлы и изображения в базу данных как BLOB, я хотел бы знать

каким может быть максимальный размер базы данных под HSQLDB?

Также, как HSQLDB работает при обработке BLOB-данных?

С уважением,

Satya

Ответы [ 2 ]

3 голосов
/ 03 апреля 2011

HSQLDB 2.0 и более поздние версии хранят данные BLOB (и CLOB) в отдельном файле, оканчивающемся на .lobs. Теоретическая емкость этого файла составляет 2 ^ 31 единиц 32 КБ (всего 64 ТБ). Внутренние таблицы хранят информацию каталога для lobs. Эти таблицы хранятся в памяти по умолчанию и поэтому ограничены несколькими сотнями тысяч отдельных лобов (100000 - это безопасный предел). Если вы планируете хранить миллионы лобов, вы можете изменить таблицы лобов на таблицы CACHED в последних версиях.

http://hsqldb.org/doc/2.0/guide/deployment-chapt.html#dec_lob_mem_use

Поэтому целесообразно хранить несколько миллионов лобов. С типичными файлами и изображениями производительность lob-доступа больше связана с доступом к файлам ОС и кэшированием, чем с любыми другими факторами. Средняя скорость доступа более 20 МБ в секунду типична для баз данных с несколькими гигабайтами.

0 голосов
/ 03 апреля 2011

Я не думаю, что есть предел тому, насколько большой может быть ваша база данных, но доступ к вашим данным зависит от того, как вы структурируете их и как вы их запрашиваете, я использовал hsqldb в нескольких проектах, и он отлично работает с BLOBданные, но мой общий размер базы данных в этих проектах составлял не более нескольких гигабайт, поэтому, возможно, существует предел того, насколько эффективный hsqldb может зависеть от размера базы данных

...