powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Где можно узнать поподробнее о плане выполнения?
8 сообщений из 8, страница 1 из 1
Где можно узнать поподробнее о плане выполнения?
    #32644575
mwolf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
После выполнения EXPLAIN вываливается табличка с планом выполнения запроса. Многих полей я не понимаю (например Merge Join или Hash Cond). Так же не совсем понятны параметры идущие с ними.
Где можно почитать поподробнее о плане выполнения? В документации как-то маловато: нашёл только Seq Scan и Index Scan. Или не там искал, или действительно больше ничего нет.
Хелп!!!
...
Рейтинг: 0 / 0
Где можно узнать поподробнее о плане выполнения?
    #32644692
LeXa NalBat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В доке:
The SQL Language -> Performance Tips -> Using EXPLAIN
и
Internals -> Overview of PostgreSQL Internals -> Planner/Optimizer
...
Рейтинг: 0 / 0
Где можно узнать поподробнее о плане выполнения?
    #32644844
mwolf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Первую ссылку видел
Вторую нет.
Но там тоже как-то маловато (это, наверно, после описания оптимизаторов Оракла и МС СКЛ ;-)).
Например, вот встретилось Мaterialize.
Так что, пока полного описания всех возможных полей нет :-( .
...
Рейтинг: 0 / 0
Где можно узнать поподробнее о плане выполнения?
    #32644959
LeXa NalBat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Merge Join

Объеденить два упорядоченных массива

( "После описания оптимизаторов Оракла и МС СКЛ" наверное должно быть понятно, что это такое :)

Hash Cond

Из доки Using EXPLAIN: "Hash Cond: ("outer".unique2 = "inner".unique2)" ... "probing into the hash table for possible matches of t1.unique2 = t2.unique2"

Cond - condition

Мaterialize

Вроде бы это создание временного массива/таблицы

Так что, пока полного описания всех возможных полей нет :-( .

Даже не знаю, что посоветовать. Смотреть в сорцы? :( Это может помочь.
...
Рейтинг: 0 / 0
Где можно узнать поподробнее о плане выполнения?
    #32644987
mwolf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Даже не знаю, что посоветовать. Смотреть в сорцы? :( Это может помочь.

"Уж послала, так послала" (С) М\ф "Падал прошлогодний снег"

Мдяя. Корявенько всё как-то в Постгрессе задокументировано. Или это всё-таки после Оракла и МС СКЛя? Вот вам и недостатки опен соурса, блин.
Ладно, спасибо LeXa NalBat за проявленное участие.
Люди, если ещё какую доку найдёте, кидайте пожалуста. Буду предельно рад.
...
Рейтинг: 0 / 0
Где можно узнать поподробнее о плане выполнения?
    #32645209
LeXa NalBat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
"Уж послала, так послала" (С) М\ф "Падал прошлогодний снег"

Меня туда посылали не раз, и ходил, и не зря.

Можете заглянуть в src/backend/optimizer/path/ и src/backend/optimizer/plan/. Вот, к примеру, комментарий из src/backend/optimizer/path/costsize.c:
/*
* cost_material
* Determines and returns the cost of materializing a relation, including
* the cost of reading the input data.
*
* If the total volume of data to materialize exceeds SortMem, we will need
* to write it to disk, so the cost is much higher in that case.
*/
...
Рейтинг: 0 / 0
Где можно узнать поподробнее о плане выполнения?
    #32645450
Sad Spirit
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вот слайды, где очень неплохо описывается работа оптимизатора и чтение вывода команды EXPLAIN: http://www.gtsm.com/oscon2003/toc.html
...
Рейтинг: 0 / 0
Где можно узнать поподробнее о плане выполнения?
    #32646296
mwolf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
To LeXa NalBat
Ковыряние сорцов дело весьма полезно, но ОЧЧЧЕНЬ долгое. Увы :-(

To Sad Spirit
Хороший линк, спасибо. Вот здесь нашёл описание всех строк выдаваемых оптимизатором. То что надо.
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Где можно узнать поподробнее о плане выполнения?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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