powered by simpleCommunicator - 2.0.41     © 2025 Programmizd 02
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / dbeaver планы запроса сравнить
16 сообщений из 16, страница 1 из 1
dbeaver планы запроса сравнить
    #40047950
Гулин Федор
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добрый день всем.

Собственно сабж
др.тулы предложить конечно можно
(а если отедльные для сравнения планов в вебе так вообще отлично)

Но я сильно ограничен на рабочем компе полиси конторы где я работаю
(DataGrip я ставли а месяц посмотреть )
...
Рейтинг: 0 / 0
dbeaver планы запроса сравнить
    #40047963
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гулин Федор
Добрый день всем.

Собственно сабж
др.тулы предложить конечно можно
(а если отедльные для сравнения планов в вебе так вообще отлично)

Но я сильно ограничен на рабочем компе полиси конторы где я работаю
(DataGrip я ставли а месяц посмотреть )


А что значит "сравнить планы" и зачем?
20 лет занимаюсь оптимизацией запросов - никогда такого было не надо.
Если вы подробно не понимаете что внутри происходит - вам никакое сравнение не поможет.

Для приведения сложных планов в более красивый графический вид можно использовать сайт/инструмент
https://explain.depesz.com/
(никогда его не понимал, текстовый вывод намного проще читать но многим почему то нравится).

--
Maxim Boguk
лучшая поддержка PostgreSQL: dataegret.ru
...
Рейтинг: 0 / 0
dbeaver планы запроса сравнить
    #40047980
Фотография vyegorov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Maxim Boguk
(никогда его не понимал, текстовый вывод намного проще читать но многим почему то нравится)

он удобен, чтобы кинуть план просто ссылкой.
...
Рейтинг: 0 / 0
dbeaver планы запроса сравнить
    #40048188
Гулин Федор
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Maxim Boguk,

В идеале хотелось бы что-то похожее
https://www.sentryone.com/plan-explorer
с крамными квдаратиками

Да фактически 2 плана сравнивать не часто приходится
скорей смотреть где могут быть проблемы

ps Спасибо за ссылку посмотрю
...
Рейтинг: 0 / 0
dbeaver планы запроса сравнить
    #40048196
Гулин Федор
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а фиг
оказыается в deveaver
план запроса НЕ КОПИРУЕТСЯ !!!
ТОЛЬКО ячейка : Index Scan

Мда ..
тул вроде неплхой но такие вещи убивают
...
Рейтинг: 0 / 0
dbeaver планы запроса сравнить
    #40048288
Misha111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Гулин Федор,

а psql пробовали?
Код: plaintext
1.
2.
3.
\o out.txt
explain select 1;
\o
а текстовые файлы сравнивать можно чем угодно
...
Рейтинг: 0 / 0
dbeaver планы запроса сравнить
    #40048656
Гулин Федор
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Misha111, Да СПС
explain позволяет вывести в текстовый файл а дальше да можно сравнивать (я notepad++)

м.б кто подскажет я смигрировал с Оракла среднюю БД в Postgres Azure (10)
( 7 789 241 - count самой большой таблицы ) и имею очень большие проблемы с перфомансом
для теста миграции сделал проверку count всех таблиц
SELECT 'table1' , COUNT(*) FROM table1 UNION ALL ... table2 , ... tableN

запрос в Оракле 12 выполянется - 10 секунд
в Postgres Azure :
1 раз : 17 min 333 sec !
2 : 1 min 10 sec
3 : 17.7 sec

Ну как бы катастрофа (я понимаю что это не реальный тест - но на реальных все тоже не айс - привожу как простейщий пример
на сложных вью ситуация тоже плохая , на простых вроде более менее )

Взял самую большую таблицу SELECT 'table1' , COUNT(*)
в Оракле - 0.3 сек.
в Постгрес 1 раз : 50+ сек

Finalize Aggregate (cost=9307.78..9307.79 rows=1 width=40)
-> Gather (cost=9307.56..9307.77 rows=2 width=8)
Workers Planned: 2
-> Partial Aggregate (cost=8307.56..8307.57 rows=1 width=8)
-> Parallel Seq Scan on partneraddressid (cost=0.00..7786.65 rows=208365 width=0)


Ну и чего тут можно улучшить то в этом плане ?
...
Рейтинг: 0 / 0
dbeaver планы запроса сравнить
    #40048665
Фотография mefman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гулин Федор,
разговор ниочем. параметры БД какие.
explain(analyze,buffers,timing) тоже нужен.
из моего опыта - двукратное распараллеливание мало что дает. либо ставить минимум 4, либо отключать вообще.
...
Рейтинг: 0 / 0
dbeaver планы запроса сравнить
    #40048669
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гулин Федор,

на azure вообще никто ничего не обещает с т.з. производительности
ставьте локальный постгрес на нормальном железе и тогда можно будет что то сравнивать и советовать по настройкам и железу.


1-2 запросы когда данные с дисков (а на azure они сетевые и ОЧЕНЬ НЕБЫСТРЫЕ) читаются - всегда там будут медленные.
тем более что postresql в облаке имеет достаточно слабое отношение к обычному postgresql (он там переписан до полной неузнаваемости особенно в части работы с дисками).

В общем по вопросам работы/производительности базы в облаке - обращайтесь в поддержку этого самого облака.
Тут вам вряд ли кто то поможет.


--
Maxim Boguk
лучшая поддержка PostgreSQL: dataegret.ru
...
Рейтинг: 0 / 0
dbeaver планы запроса сравнить
    #40048747
Гулин Федор
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Maxim Boguk,
Azure это моя данность и это не обсуждается (Не мой выбор - заказчика)
да и Оракл там необычный в DBaas (частном облаке) - однако ж вполне быстро.

PS Ну попроюу тупо дозаказать ресурсов
пока был Basic
...
Рейтинг: 0 / 0
dbeaver планы запроса сравнить
    #40048752
Swa111
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Гулин Федор,

Мерить через count быстродействие, такое себе занятие 22141896 и тем более сравнивать с Oracle.
...
Рейтинг: 0 / 0
dbeaver планы запроса сравнить
    #40048754
Гулин Федор
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
mefman
Гулин Федор,
разговор ниочем. параметры БД какие.
explain(analyze,buffers,timing) тоже нужен.
из моего опыта - двукратное распараллеливание мало что дает. либо ставить минимум 4, либо отключать вообще.


за explain(analyze,buffers,timing) СПАСИБО

Параметры сервера я могу посмотреть AZURE в браузере
и даже поменяь на DEV без проблем

тут вопрос куда и на Какие параметры смотреть
(т.е я уже там лазил даже читал по некоторым описание
force_parallel_mode = OFF
)
ссылки приветсвтуются

На данный момент пока проблема в Seelct
до I/U/D операций даже не дошло (данные загрзуились черзе ora2pg и все - лежит фактически снапшот
толок изредка перегружаю отдельные таблицы )
...
Рейтинг: 0 / 0
dbeaver планы запроса сравнить
    #40048758
Гулин Федор
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Swa111
Гулин Федор,

Мерить через count быстродействие, такое себе занятие 22141896 и тем более сравнивать с Oracle.


СПС за ссылку
познавательно
и я в ПРИНЦИПЕ СОГЛАСЕН
реально мне надо будет N раз после полного импорта черзе ora2pg проверить каунты с ораклом
ну там и ок - я подожду 20-30 мин хоть

но проблема не только в этом же
есть 70+ вьюх только на одной схеме к-ю я сейчас симпоритровал в постгрес
(примерно половину из них пришлось фиксить из за не поддерижвающихся фич оракла)
и вот я начинаю проверять эти вьюхи - ну а как по даннным то ?
и логично ведь проверить для первоначального теста
SELECT COUNT(*) FROM - и тут я получаю дикие тормоза в постгрес.

пытаюсь проверить тода на небольших датасетах
SELECT * FROM View1 where id1 = <> ;
где то работате более менее сопоставимо с Ораклом (т.е медленней но не намного )
а где то катастрофически медленней

и проверять каждую вьюху пока НЕ вариант (у меня есть где то 10 критичных пока на них )
причем там есть вьюхи разного назначения
часть для экспорта-импорта в систему и тут тормоза сильно мешают при проверке (но возможно будут не так критичны)
но большАя часть исполюзуется для backend
и вот тут разница между 1 сек в оракле и 30 в постгрес это уже проблема.
...
Рейтинг: 0 / 0
dbeaver планы запроса сравнить
    #40048759
Фотография Maxim Boguk
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гулин Федор,

Какие то вещи придется переделывать на postgresql специфику чтобы они быстро работали.
Какие то надо с настройками базы возится.

А вы хотите магически ничего не переписывая и ничего не настраивая чтобы оно взяло и быстро работать начало?
Так не будет и никакие облака вам не помогут.

Это ваша задача все оптимизировать )) ну или внешних консультантов.

В практическом смысле - без конкретного разбора explain (analyze, costs, buffers, timing) конкретных запросов и анализа настроек базы - вам никто тут ничего не поможет.
Какие то запросы вполне могут остаться и на pg на порядок медленее чем на оракле... какие то могут быть наоборот на порядок быстрее.

--
Maxim Boguk
лучшая поддержка PostgreSQL: dataegret.ru
...
Рейтинг: 0 / 0
dbeaver планы запроса сравнить
    #40048845
Гулин Федор
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Maxim Boguk,
да я согласен
вот про настройки БД и хотелось бы почитать что-то толковое для начала типа бест-практис
(в идеале конечно для ажура - но пойдет и обычное)
понятно что все оисания есть в доке

а с конкертными скл буду возиться позже
...
Рейтинг: 0 / 0
dbeaver планы запроса сравнить
    #40048848
Фотография peter64
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / dbeaver планы запроса сравнить
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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