Эффективен ли Firebird 2.1 для хранения огромного количества строк в таблице некоторых БД? - PullRequest
2 голосов
/ 15 сентября 2011

Мое приложение продолжает получать действительно маленькое событие, которое оно должно сохранить, и я подумал, что это лучший способ справиться с этим.Таблица для этого события будет выглядеть примерно так:

EVENT
id
timestamp
some_data (integer)
fk_to_some_holder_table

Если я буду хранить каждое событие как строку, будет ли какой-то недостаток в реализации с каким-либо сжатием / обработкой больших двоичных объектов?Или я захожу слишком далеко?

Я использую Firebird 2.1.При необходимости я могу обновить до Firebird 2.5.

Заранее спасибо.

Ответы [ 2 ]

4 голосов
/ 15 сентября 2011

Я уверен, что вам лучше с "традиционной записью на основе строк":

  • Вы хотите запросить записи, верно? Запрашивать BLOB сложно и медленно;
  • , поскольку размер вашей записи настолько мал, что вы не сможете сжать их, при использовании большинства алгоритмов сжатия результат, вероятно, будет больше, чем требуется для отдельных полей;

Согласно статье " Каковы технические ограничения Firebird? " максимальный размер одной таблицы составляет 32 ТБ или 16 ГБ строк.

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

0 голосов
/ 15 сентября 2011

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

Я бы остановился на версии 2.1, в 2.5 слишком много ошибок на мой вкус

...