DY> Константин wrote:
>>
>> где "чистой" называется замер времени выполнения SP, выполняемой
>> сразу же за аналогичным поиском ...
DY> Ничего не понял.
поиск выполняется процедурой SEARCH_PRICE_COST .
для замера скорости создаётся процедура:
CREATE PROCEDURE TEST1
RETURNS (
OPER VARCHAR(64),
NEWTIME TIME)
AS
declare variable i bigint;
declare variable ot1 time;
begin
select first 1 COST_ID from SEARCH_PRICE_COST(0, 0, '<КОД>', 0) into
:i;
OPER = 'Поиск по прайс-листу (по полному номеру)';
ot1 = 'now';
select first 1 COST_ID from SEARCH_PRICE_COST(0, 0, '<КОД>', 0) into
:i;
newtime = DOUBLETOTIME(TIMETODOUBLE('now') - TIMETODOUBLE(ot1));
suspend;
end;
....
CREATE PROCEDURE TEST2
RETURNS (
OPER VARCHAR(64),
NEWTIME TIME)
AS
declare variable i bigint;
declare variable ot1 time;
begin
select first 1 COST_ID from SEARCH_PRICE_COST(0, 0, '<ЧАСТЬ КОДА>', 0)
into :i;
OPER = 'Поиск по прайс-листу (по части номера)';
ot1 = 'now';
select first 1 COST_ID from SEARCH_PRICE_COST(0, 0, '<ЧАСТЬ КОДА>', 0)
into :i;
newtime = DOUBLETOTIME(TIMETODOUBLE('now') - TIMETODOUBLE(ot1));
suspend;
end;
делаю
1) Prepeare: select * from test
2) Execute prepeared
3) Feth All
4) смотрю результаты
И ещё "грязный замер" замер у меня получается если убрать 1-ю
строчку из процедур ...
>> Да БД размер страницы = размеру кластера = 32К
DY> Врешь.
Сорри действительно 16К ... :(
>> перед замерами скорости - для SP, в той-же транзакции, было сделано
>> Prepeare ...
DY> Чему был сделан препаре??? SP или запросу из нее? Запрос как выглядит?
запросу из неё ... (select * from testX )
>> Судя по результатам - основное время было потрачено FB на ... разбор
>> самой SP :(
DY> С чего такой вывод?
А по тому что суммарно поиск по самой таблице TOVAR, COST, ...
по заданным параметрам выполняется ~ 0.5 c.
>> 1) время поиска по многолимонным таблицам ПРАКТИЧЕСКИ НЕ ЗАВИСИТ от
>> скорости HDD !!!???
DY> Ты бредишь.
Хорошо давай по 1-му пункту ... Скорось E-IDE и SATA-II - разница ?
Как минимум в 2 раза, время работы отличается максимум на 150 мс.
относительно даже самого длинного запроса 3.654 с. это
3,654 - 100% \
3,438 - X% / X = 3438*100/3654 = ~94,09 %
т.е. при увеличении производительности HDD вдвое - в моём случае
прирост производительности конкретного запроса - 5.1 % ???? !!!
С уважением,
Константин Григорьевич.
===============