Новости
Документация
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

> Original message text:
> 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
>
>
>


From: Роберт - 11/10/2005 - 06:10:33
Subject:CHAR против VARCHAR - БИТВА ГИГАНТОВ
-----------------
Я думаю что было некорректно сравнивать поиск по фултексту , так как в обоих случаях поиск происходил по индексу , а не по таблице (кстати , ты этого не сказал , но я осмелюсь предположить , что размер индексных файлов у обойх таблиц был практически одинаковый , ведь в нём были одни и теже слова). Тоесть ты получал результат практически не использую саму таблицу , и де-факто - тестировал два одинаковых фултекста.
Для оценки скорости разных типов полей надо было в них через LIKE и через "=" искать , а не через MATCH!


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

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

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



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