powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Зависит ли выбор плана от статистики по выполненным запросам?
6 сообщений из 31, страница 2 из 2
Зависит ли выбор плана от статистики по выполненным запросам?
    #35458203
LeXa NalBat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
имхо, тему можно закрывать. нашел обсуждение, из которого все понятно. выбор плана не зависит от статистики по выполненным запосам.

http://archives.postgresql.org/pgsql-hackers/2008-04/msg01503.php

MBGСчитаете, что параметр effective_cache_size это обман и на самом деле планировщик не использует эту информацию?effective_cache_size - это константа, она не зависит от объекта (таблицы). планировщик использует это значение.

MBGА также информацию о стоимости ввода/вывода для диска и ОЗУ...планировщик использует константы *_cost, которые DBA должен усредненно (для всех обектов) вычислить и занести в конфиг.

MBGПо документации, shared_biffers к планировщику отношения не имеет, но то, что я поднимаю таблицу с помощью dd в кэш ОС помогает не везде и не всегда и по симптомам похоже на то, что все-таки оценивается наличие данных в shared_biffers и при планировании запроса предусматривается выборка в первую очередь из него.доктора тоже ошибаются, не могу принять аргумент "по симптомам похоже на то", только тест или ссылку.

MBGпланировщик должен знать, какие данные откуда взятьпланировщик лишь выбирает план. а данные бререт другой товарищ (executor).

MBGКак в этом ракурсе вы оцениваете заявление о независимости планировщика от shared_biffers? Явно зависит, а кот как именно реализован алгоритм, можно найти только в коде.планировщик не обращет внимания на shared_buffers. он руководствуется лишь константами "18.6. Query Planning", и статистикой по объектам из pg_*. в данной статистике отсутствует информация о нахождении данных в кэше памяти.

MBGПопробуйте потестировать попробовал , теперь вы попробуйте получить, подтверждающий ваше предположение, тест
...
Рейтинг: 0 / 0
Зависит ли выбор плана от статистики по выполненным запросам?
    #35459946
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
Выше было приведено два теста, один из них мой. Мало?
...
Рейтинг: 0 / 0
Зависит ли выбор плана от статистики по выполненным запросам?
    #35460115
LeXa NalBat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MBGВыше было приведено два теста, один из них мой. Мало?нужен тест, который, в отличие от этих двух, можно было бы воспроизвести.

"Please see if you can extract a more self-contained test case."

http://archives.postgresql.org/pgsql-hackers/2008-01/msg00150.php
...
Рейтинг: 0 / 0
Зависит ли выбор плана от статистики по выполненным запросам?
    #35460957
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
Рекомендую почитать
http://www.postgresql.org/docs/8.1/static/geqo-intro2.html

Мутация в постгресе не используется, тем не менее генетический алгоритм является стохастическим и может возвращать разные значения при разных запусках даже при одних и тех же значениях параметров. Для простых запросов применяется классический алгоритм, который является детерминированным, но для большого количества таблиц не может быть использован в силу невозможности полного перебора вариантов выполнения запроса. А после включения генетического алгоритма план выполнения выбирается как наиболее подходящий из случайно выбранного подмножества всех возможных планов.

Вот и объясните мне, как вы при случайно выбранном плане запроса сумели сказать, что он не зависит от чего-либо? Имхо, ответ можно найти только в коде. Если изменение плана запроса обусловлено устройством планировщика, то с точки зрения разработчиков это не баг, а фича.
...
Рейтинг: 0 / 0
Зависит ли выбор плана от статистики по выполненным запросам?
    #35461217
LeXa NalBat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Каждый из алгоритмов построения плана (классический и генетический) использует одинаковые входные данные. Поэтому в процессе работы также и генетического алгоритма информация о наличии объектов в кэше памяти не используется.

MBGВот и объясните мне, как вы при случайно выбранном плане запроса сумели сказать, что он не зависит от чего-либо?Почему вы уверены, что случайный выбор плана запроса в этих двух тестах обусловлен именно тем, что планировщик использует статистику по выполненным запросам? Хотя сами пишете о стохастичности geqo.

MBGИмхо, ответ можно найти только в коде.Нет, достаточно прочитать обсуждение http://archives.postgresql.org/pgsql-hackers/2008-04/msg01503.php
...
Рейтинг: 0 / 0
Зависит ли выбор плана от статистики по выполненным запросам?
    #35461457
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
LeXa NalBatПочему вы уверены, что случайный выбор плана запроса в этих двух тестах обусловлен именно тем, что планировщик использует статистику по выполненным запросам? Хотя сами пишете о стохастичности geqo.

Я видел только два возможных плана выполнения для вышеприведенного запроса. Было бы этих планов десяток - другое дело. Хотя я запускал запрос всего лишь пару десятков раз и не могу сказать, что других планов не появится, может быть, просто вероятность появления иных вариантов на порядок ниже.

Более того, была у меня нехорошая мысль, что на представленном запросе происходит сбой при выборе планировщика и два разных плана созданы разными планировщиками. В таком случае логично предположить, что выбор планировщика определяется результатами предыдущих запросов.
...
Рейтинг: 0 / 0
6 сообщений из 31, страница 2 из 2
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / Зависит ли выбор плана от статистики по выполненным запросам?
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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