2012-07-03 3 views
1

Возможно ли получить дисковое пространство, используемое данным набором результатов? Скажите, хотел ли я выбрать из таблицы, где id = X пользователя, чтобы рассчитать использование диска базы данных для пользователя? В идеале я хотел бы использовать программный код для использования любого набора результатов.Как найти использование диска в результирующем наборе?

ответ

1

Меня действительно интересует размер в базе данных, а не как объект на Java.

Тогда окончательно нет способа получить эту информацию, если только реализация базы данных поставщика не раскрывает ее каким-либо образом. (И я не слышал о какой-либо базе данных поставщика, которая делает это.)

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

0

Чтобы сделать это, вы можете использовать Instrumentation.

+0

Меня действительно интересует размер в базе данных, а не как объект на Java. –

1

Это может быть вычислено из типов данных или из статистики строк, если все данные поступают из одной таблицы.

типов данных: http://dev.mysql.com/doc/refman/5.0/en/storage-requirements.html

статистика Row: http://dev.mysql.com/doc/refman/5.0/en/tables-table.html

Другой альтернативой может быть использование функции GROUP_CONCAT() для создания строки размера текстовой формы данных и принимать это LENGTH().

Смежные вопросы