Страница 1 из 1

Разбивка таблицы с большим количеством полей на 2 части.

Добавлено: 07 сен 2011, 19:17
sasha35
Имеет ли смысл разбить таблицу, в которой часть полей (примерно 10) используется часто и часть полей (примерно 30)используется редко? (на 1000 запросов к первым полям 1 запрос ко второй части). То есть из одной таблицы с 40 полями сделать две таблицы, соответственно по 10 и 30 полей. Будет ли какой-нибудь выигрыш в быстродействии?

Имеет ли смысл blob поля хранить в отдельной таблице? Например, каталог товаров с параметрами в одной таблице, а изображения в другой. Таблицы связаны один к одному. Каждому товару соответствует по одной записи в каждой таблице.

Re: Разбивка таблицы с большим количеством полей на 2 части.

Добавлено: 07 сен 2011, 21:01
kdv
про поля:
если заполненная часть полей используется часто, таблица большая, и т.д., то смысл имеет. Выигрыш зависит в соотношении размеров таблицы с заполненными полями и таблицы с "пустыми полями". Разницу в размерах можно увидеть в IBAanalyst.

про блобы:
см. справку в IBAnalyst по F1 - Дополнительные вопросы и ответы, пункт 5 - Blob-ы могут вызвать фрагментацию таблиц. Опять же, зависит от того, насколько часто требуется блоб вытащить одновременно с записью. Если как в случае с полями выше - то блобы лучше вынести. Понятно, что например для веба для вывода описания товара с картинкой или придется выполнять 2 отдельных запроса (но быстрых), или писать join.

Re: Разбивка таблицы с большим количеством полей на 2 части.

Добавлено: 08 сен 2011, 20:46
sasha35
Спасибо! Буду думать....