Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
CHAR против VARCHAR - БИТВА ГИГАНТОВ (Трава) 10/10/2005 - 02:04:33
      Re: перепутал (Трава) 10/10/2005 - 02:06:45
      Re: CHAR против VARCHAR - БИТВА ГИГАНТОВ (Роберт) 11/10/2005 - 06:10:33
      Re: CHAR против VARCHAR - БИТВА ГИГАНТОВ (Dinky) 11/10/2005 - 20:05:31



From: Трава - 10/10/2005 - 02:04:33
Subject:CHAR против VARCHAR - БИТВА ГИГАНТОВ
-----------------
Вот Вам результаты исследования

Я решил сравнить возможности CHAR и VARCHAR

поэтому создал две базы данных

Вот такие:
имя базы = тип поля + тип таблицы
tofix = varchar + dynamic
todyn = char + fixed


Вот скрипт, потому что это может быть важно:

create database tofix;
create table tovar (rr char(250), FULLTEXT rr_(rr)) row_format=fixed,
pack_keys=1, checksum=0;

create database todyn;
create table tovar (rr varchar(250), FULLTEXT rr_(rr))
row_format=dynamic, pack_keys=1, checksum=0;


Потом залил в каждую из них по 6 миллионов записей

load data infile 'x:\g312.txt' into table tofix.tovar lines terminated
by '\r\n';
load data infile 'x:\g312.txt' into table todyn.tovar lines terminated
by '\r\n';

Кстати залилось всего за 15 мин в tofix
и за 14 мин в todyn.

Затем решил сравнить размер полученных баз
tofix = 2.0 Гб
todyn = 1.5 Гб

То есть не такая существенная разница как я ожидал ранее.

Затем решил сравнить скорость селектов.

Этот запрос выбирает 115745 записей.
select rr from tovar where match(rr) against('toyota');

А вот время выполнения

tofix = 245,36 sec.
todyn = 178,00 sec.

То есть VARCHAR + DYNAMIC получается что справляется с селектом по
фултексту БЫСТРЕЕ

Это удивительно, так как в справочнике написано обратное.
Поэтому тем более нужно найти причину этого явления.

Хотя я как будто догадывался что так и будет.

Тесты проводились на версии 5.0.13 RC




[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
24365



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |