Apache.RU - Webboard
Вернуться
Молчаливое преобразование типов (Graider) 09/07 - 12:56:42
Re: Молчаливое преобразование типов (Graider) 09/07 - 13:06:14
> Original message text:
> From: Graider - 09/07 - 12:56:42
> Subject:Молчаливое преобразование типов
> -----------------
> Есть таблица MyISAM в которой поля типа varchar(100), средняя длина строки в таких полях 30 - такая таблица занимает 10М на диске. Если же теперь из нее сделать HEAP
> ALTER TABLE _1 TYPE = HEAP, то размер таблицы увеличивается до 30М и это несмотря на то что поля остались varchar(100).
> Странно получается - если таблица на диске (MyISAM) то там все как "обещано" записи динамические и компактные, а если грузим в память, то в ней таблица занимает место как статическая (проверял) :((
> Пробовал и так CREATE TABLE _2 ROW_FORMAT=dynamic TYPE =HEAP SELECT * FROM _1, результат тот же :(
> Советы не использовать HEAP и ROW_FORMAT=dynamic не катят, т.к. есть много объеденений таблиц и при использовании таблиц HEAP вместо MyISAM скорость отличается в десятки раз !!!
> В тоже время в таблицах много полей varchar (наименования товаров, клиентов как самих так и всех родителей оных) и при отказе от динамического типа таблиц размер таблиц (да еще объединенных) ведет к неоправданному их раздутию (до 10 раз), а при наличии ОЗУ 256М - это неменуемый своп...
> Во как наговорил, споткнулся на этом и дальше никак
>
From: Graider - 09/07 - 13:06:14
Subject:Молчаливое преобразование типов
-----------------
Посмотрел на название своей темы :)
Это я начинал писать пост когда у меня не полчалось создать таблицу HEAP из MyISAM при этом сохранив тип полей varchar (без указания ROW_FORMAT=dynamic) он преобразовывался в char
[Это сообщение - спам!]
Последние сообщения из форума
15976
|
|