Hello, Dmitry! You wrote on Thu, 22 Jun 2006 15:51:40 +0400: DY> "Yuri Grabar" <[EMAIL PROTECTED]> wrote: ??>> DY>>> Будь конструктивнее. Докажи, что для BETWEEN (ну или для STARTING - ??>> там DY>>> ситуация схожая) оценка выборки "в N раз больше, чем при равенстве" DY>>> правильнее, чем "одна M-я часть таблицы". ??>> ??>> Ну утерпел... :) Дим, давай только не будем передергивать.
DY> Либо ты ошибочно процитировал вышесказанное, либо не понял, о чем речь DY> :-) Из твоего письма я вырезал только DY> Т.е. ты еще по себе не примерял, но уже "за"? :-) не думаю, что оно хоть как-то повлияло на цитирование... DY> Там нет никакого передергивания, я просто предлагаю людям защитить их DY> альтернативное предложение для расчета селективности range-сканов. Ты вроде как писал, что нет вообще никакого расчета - _всегда_ используется селективность 0.2 (ты же сам писал: DY> Селективностью можно оценить кардинальность выборки только на равенство. DY> Для больше/меньше/между эта цифра не дает ничего. Поэтому сервер использует DY> свои коэффициенты. Для больше/меньше - 50%, для между - 20%, DY> для стартинг - 1%... ) Я как-то совсем запутался в алгоритме работы оптимизатора в FB 2.0. В полуторке для меня он работал логично, в двойке же по меньшей мере "странно". ??>> При сегодняшнем выборе получается, что лучше, чем по одному индексу ??>> по FROM_ID не будет в принципе при любом диапазоне дат. Только жуткие ??>> тормоза при слиянии с "плохим" индексом по DOCUMENT_ID. DY> Угу, перекос по распределению именно в этом поле, а не во FROM_ID. DY> Сколько записей с DOCUMENT_ID = 2 по отношению к общему их кол-ву? 454842 из общего количества 1003575, т.е. практически половина. Только при чем тут это? В сервере же нет гистограмм, только селетивность индекса, которая равна для этого поля 1/30 и другого способа оценить "хорошесть" использования индекса у него нет. Повторюсь, это очень "плохой" индекс, но он от внешнего ключа... Удивление вызывает даже не то, что оптимизатор выбрал его, а то, что он предпочел его в 70 более хорошему индексу! Даже с учетом на between это слишком... -- With best regards, Yuri Grabar. E-mail: [EMAIL PROTECTED] --~--~---------~--~----~------------~-------~--~----~ -~----------~----~----~----~------~----~------~--~---

