powered by simpleCommunicator - 2.0.52     © 2025 Programmizd 02
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Что такое PLAN?
5 сообщений из 5, страница 1 из 1
Что такое PLAN?
    #32103637
Рыб
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть база 1-2Gb, это где-то 1-2 млн. записей. Необходимо делать различные выборки по текстовым полям (только выборки, никаких изменений не вносится). Индексы по этим полям есть и главным образом выполняются запросы типа:
select * from table where field>'string' order by field rows n
по непонятным причинам некоторые из таких запросов выполняются быстро, а некоторые сильно тормозят ... нашёл в хелпе какой-то plan, но не понял зачем он нужен ... может ли он мне как-нибудь помочь ускорить процесс и как вообще в данной ситуации можно повысить производительность с учётом что база может ещё раза в 2 вырасти?
...
Рейтинг: 0 / 0
Что такое PLAN?
    #32103649
StarWind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может, а может и замедлить. Этой инструкцией ты можешь принудительно составить план исполнения запроса... Но можно сказать что оптимизатор генерирует хороший план запроса и перепрыгнуть его врятли удасться... я бы посоветовал косвенно влиять на план исполнения
...
Рейтинг: 0 / 0
Что такое PLAN?
    #32103653
Рыб
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Косвенно это как, порядком условий в where и порядком сортировки в order?

Ещё такой вариант: две таблицы "один ко многим" надо сделать выборку типа
select p.*, s.* from primary p, secondary s where (s.id=p.sid and s.text>'string') order by s.text rows 10 ... так можно или лучше как-то по-другому сделать?
...
Рейтинг: 0 / 0
Что такое PLAN?
    #32103664
StarWind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
лучше объеденить через join (проверял лично и работало быстрее)
select p.*, s.* from primary p join secondary s on (s.id=p.sid)
Остальные условия как положено
а влиять косвено, я имел ввиду, например по какой-то причине известно что запрос будет быстрее работать, если планировщик не будет учитывать индекс по полю Field1 тогда в секции where пишется например следующая инструкция Field1-0 = :x
...
Рейтинг: 0 / 0
Что такое PLAN?
    #32103688
Рыб
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Такая ещё беда:
select count (id) as recCount from table,
id типа integer. На P4 для 600 тыс. записей выполняется около минуты. Так должно быть?
...
Рейтинг: 0 / 0
5 сообщений из 5, страница 1 из 1
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / Что такое PLAN?
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]