Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2002.12.23;
Скачать: [xml.tar.bz2];

Вниз

Объясните дураку, люди добрые.....   Найти похожие ветки 

 
bedniy_student   (2002-12-05 10:57) [0]

Задание: Поставьте следующий эксперимент. Создайте таблицу
Create table tab (редкий integer not null, частый integer not null, пустышка char(100) not null);
Используя какое либо процедурное расширение SQL заполните таблицу тестовыми данными так, что в столбце редкий будет 5 различных значений, а в столбце частый на каждое из 5 значений столбца редкий будет приходится по 5000 различных значений. Измерьте время выполнения нескольких операторов выборки из таблицы поочередно для каждого из следующих четырех индексов и объяснить результат:
Create index ind1 on tab (редкий);
Create index ind2 on tab (редкий, частый);
Create index ind3 on tab (частый);
Create index ind4 on tab (частый, редкий);

Я могу понять вес результаты кроме этого…
select пустышка from tab where редкий=5 and частый=500;

без индекса – 700 мкс
ind1 - 900
ind2 - 30
ind3 - 30
ind4 - 30

Почему при индексации по первому столбцу запрос выполняется так долго, а по остальным нормально???


 
stone   (2002-12-05 11:03) [1]

индекс это хранилище указателей на строки таблицы
в первом случае (редкий) поиск быстро осуществляется по редким значениям, а потом долго ищет частые
Идеальный тут четвертый вариант
в двух других случаях результат похож из-за незначительного количества (редкого) поля


 
bedniy_student   (2002-12-05 11:12) [2]

Так, но почему он при первом индексе работает дольше чем без индекса вообще???


 
stone   (2002-12-05 11:18) [3]

при первом запросе строится схема оптимизации запроса
если ты повторишь запрос с ind1 два раза подряд, то во второй раз он должен выполниться быстрее



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2002.12.23;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.45 MB
Время: 0.007 c
1-74724
Separator
2002-12-12 08:16
2002.12.23
Простое число


14-74911
Its'me
2002-11-28 19:41
2002.12.23
Вопрос про оперативную память


3-74578
Gaber
2002-12-04 12:53
2002.12.23
DB пароль


14-74980
Dracula
2002-12-03 16:17
2002.12.23
Установка Delphi...


4-75030
wmz
2002-11-08 18:57
2002.12.23
Как можно просмотреть





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский