| 
 
  | 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
 
 
 
 |  
 |