Будет ли столбец BLOB всегда использовать определенный размер, даже если будет вставлено меньше данных? - PullRequest
0 голосов
/ 14 июня 2011

Мне нужно хранить изображения в поле DB2 Blob. Средний размер изображения составляет около 200 КБ, но в редких случаях будут изображения размером 2-4 МБ. Я не хочу отклонять эти изображения, поэтому я бы определил BLOB(5M). Это нормально, или этот Blob всегда будет использовать 5 МБ, даже если большая его часть не используется?

Как обычно справляются с размером Blob, если трудно найти среднее значение?

Ответы [ 2 ]

3 голосов
/ 14 июня 2011

Капля будет использовать только столько места, сколько необходимо.Нет никаких накладных расходов при определении большого максимума (воспринимайте его как «ограничение», а не как физическую вещь)

0 голосов
/ 15 января 2016

Я могу это подтвердить.BLOB (5M) только указывает DB2, что максимальный размер вашего BLOB-объекта - 5 МБ.Это необходимо db2 для внутренней оптимизации.Имейте в виду, что выделенное пространство будет кратно размеру страницы, поэтому вам необходимо оптимизировать материал на основе этого.

  1. Если более 50% изображений имеют небольшой размер <32k вы можете подумать об использовании встроенных LOB вместо этого.См. <a href="https://blog.voina.org/?p=335" rel="nofollow">https://blog.voina.org/?p=335

  2. Если размер ваших изображений превышает 1 МБ, встроенный эффект не действует, но размер страницы должен быть 32 КБ.

  3. Если большинствоваши изображения на самом деле около 200 КБ, может быть, вы должны подумать о том, чтобы использовать размер страницы 8 КБ для базы данных, а не выделять для блоков больших объектов 32 КБ, что может привести к потере дискового пространства.

...