Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / IBExpert Новый топик    Ответить
 Время выполнения запроса  [new]
_Vasilisk_
Member

Откуда: Украина, Харьков
Сообщений: 12343
Есть хитропокрученный запрос. Выполняю его в SQL Editor. С момента начала выполнения, до открытия вкладки Results проходит секунд пять. При этом в статистике запроса вижу такую информацию
------ Performance info ------
Prepare time = 0ms
Execute time = 125ms
Avg fetch time = 6,25 ms
Current memory = 6 369 136
Max memory = 10 801 056
Memory buffers = 256
Reads from disk to cache = 0
Writes from cache to disk = 0
Fetches from cache = 137 177
SQL Editor фетчит 20 записей.

Вопрос, где я должен (и должен ли?) увидеть мои 5 секунд?

С уважением, Vasilisk
16 ноя 20, 14:33    [22232942]     Ответить | Цитировать Сообщить модератору
 Re: Время выполнения запроса  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Запусти SQL monitor перед выполнением запроса, а в нем отметь перехват вызовов API. Может, что-то и прояснится.
16 ноя 20, 14:56    [22232977]     Ответить | Цитировать Сообщить модератору
 Re: Время выполнения запроса  [new]
_Vasilisk_
Member

Откуда: Украина, Харьков
Сообщений: 12343
IBExpert
Запусти SQL monitor перед выполнением запроса, а в нем отметь перехват вызовов API. Может, что-то и прояснится.
Стало еще запутаннее. Тормозит isc_database_info.

Сам запрос
+
WITH cm AS (
  SELECT
    msm.id,
    msm.beg_freq,
    msm.flevel
  FROM
    measurments msm
  WHERE
    msm.msm_type = 11
)
SELECT
  s.*
FROM
  cm s
  LEFT JOIN cm f ON (
    s.beg_freq = f.beg_freq AND
    (
      s.flevel < f.flevel OR
      (s.flevel = f.flevel AND s.id < f.id)
    )
  )
WHERE
  f.flevel IS NULL
isql тоже выполняет долго, но выводит такую статистику
Records affected: 325
Current memory = 6021248
Delta memory = 0
Max memory = 6073536
Elapsed time= 7.037 sec
Buffers = 256
Reads = 0
Writes = 0
Fetches = 441502
Если последней строкой добавить ROWS 1, то IBExpert и isql отрабатывают мгновенно

К сообщению приложен файл. Размер - 44Kb
17 ноя 20, 15:12    [22233843]     Ответить | Цитировать Сообщить модератору
 Re: Время выполнения запроса  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
_Vasilisk_
Стало еще запутаннее. Тормозит isc_database_info.


Наоборот, все понятно стало. Это данные для анализа производительности вытаскиваются.
18 ноя 20, 07:35    [22234337]     Ответить | Цитировать Сообщить модератору
 Re: Время выполнения запроса  [new]
_Vasilisk_
Member

Откуда: Украина, Харьков
Сообщений: 12343
IBExpert
Наоборот, все понятно стало
Было бы классно в результирующей статистике видеть суммарное время
IBExpert
Это данные для анализа производительности вытаскиваются.
Вытаскивание данных для анализа производительности на два порядка дольше, чем сам запрос? Или я чего-то не понимаю?
18 ноя 20, 12:48    [22234517]     Ответить | Цитировать Сообщить модератору
 Re: Время выполнения запроса  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
_Vasilisk_
IBExpert
Наоборот, все понятно стало
Было бы классно в результирующей статистике видеть суммарное время


Не вижу ничего классного в никому не нужному.

IBExpert
Это данные для анализа производительности вытаскиваются.
Вытаскивание данных для анализа производительности на два порядка дольше, чем сам запрос? Или я чего-то не понимаю?[/quot]

Это не ко мне вопрос, isc_database_info запрашивает данные у сервера.
18 ноя 20, 18:28    [22234830]     Ответить | Цитировать Сообщить модератору
 Re: Время выполнения запроса  [new]
_Vasilisk_
Member

Откуда: Украина, Харьков
Сообщений: 12343
IBExpert
Это не ко мне вопрос, isc_database_info запрашивает данные у сервера.
Можешь сказать, какие именно параметры передаюся в isc_database_info? Пойду в соседний форум
18 ноя 20, 18:58    [22234862]     Ответить | Цитировать Сообщить модератору
 Re: Время выполнения запроса  [new]
_Vasilisk_
Member

Откуда: Украина, Харьков
Сообщений: 12343
IBExpert
Не вижу ничего классного в никому не нужному.
1. Мне нужно
2. isql считает, что всем нужно
3. Не ухудшает имеющийся функционал
18 ноя 20, 21:48    [22234944]     Ответить | Цитировать Сообщить модератору
 Re: Время выполнения запроса  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
_Vasilisk_
IBExpert
Можешь сказать, какие именно параметры передаюся в isc_database_info? Пойду в соседний форум


В свежей версии смотри в мониторе значения в скобках.
Обычно это
  isc_info_reads                 =          5;
  isc_info_writes                =          6;
  isc_info_fetches               =          7;
  isc_info_marks                 =          8;
19 ноя 20, 05:00    [22235048]     Ответить | Цитировать Сообщить модератору
 Re: Время выполнения запроса  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
_Vasilisk_
1. Мне нужно


Зачем?
19 ноя 20, 05:01    [22235049]     Ответить | Цитировать Сообщить модератору
 Re: Время выполнения запроса  [new]
_Vasilisk_
Member

Откуда: Украина, Харьков
Сообщений: 12343
IBExpert
В свежей версии смотри в мониторе значения в скобках.
isc_info_reads
IBExpert
Зачем?
Сравнить время выполнения двух запросов

P.S. Ты что-то поправил? В новой версии Execute Time стало честные 5 секунд
------ Performance info ------
Prepare time = 16ms
Execute time = 5s 94ms
Avg fetch time = 242.57 ms
Current memory = 5 944 368
Max memory = 6 182 096
Memory buffers = 256
Reads from disk to cache = 0
Writes from cache to disk = 0
Fetches from cache = 441 502


Сообщение было отредактировано: 19 ноя 20, 14:11
19 ноя 20, 14:13    [22235344]     Ответить | Цитировать Сообщить модератору
 Re: Время выполнения запроса  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
1. Ничего не правил, только значения в скобках в вывод добавил. Опять же, запускай монитор и смотри, там же видно все.
2. Время, потраченное на извлечение статистики, не имеет никакого отношения ко времени выполнения собственно запроса. В своем приложении ты ведь не будешь статистику запрашивать - нафига она тебе?

Сообщение было отредактировано: 19 ноя 20, 15:04
19 ноя 20, 15:09    [22235422]     Ответить | Цитировать Сообщить модератору
 Re: Время выполнения запроса  [new]
_Vasilisk_
Member

Откуда: Украина, Харьков
Сообщений: 12343
IBExpert
Опять же, запускай монитор и смотри, там же видно все.
Монитор показывает, что задержка все на том же isc_database_info(5). А статистика изменилась.

Так, немного разгребусь, напишу тестовое приложение, буду смотреть детально
19 ноя 20, 17:48    [22235574]     Ответить | Цитировать Сообщить модератору
 Re: Время выполнения запроса  [new]
IBExpert
Member

Откуда: От верблюда
Сообщений: 3331
Так, я ступил. Это не в isc_database_info дело. Это между isc_dsql_fetch и isc_database_info прошло 7 секунд.
Данные фетчатся 7 секунд, статистика здесь ни при чем.
19 ноя 20, 18:32    [22235618]     Ответить | Цитировать Сообщить модератору
Все форумы / IBExpert Ответить