#sql #oracle #eclipse-plugin #sql-execution-plan
#sql #Oracle #eclipse-плагин #sql-execution-plan
Вопрос:
Я использую Eclipse (и его плагин Data Tools) для разработки DB / BI и хотел бы получить еще немного визуальной / отладочной помощи при изучении огромных планов объяснения, например, до 500 строк, например:
----------------------------------------------------------------------------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes |TempSpc| Cost (%CPU)| Time |
----------------------------------------------------------------------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 4077K| 21G| | 7224K (3)| 00:04:43 |
| 1 | SORT AGGREGATE | | 1 | 15 | | | |
|* 2 | TABLE ACCESS BY INDEX ROWID BATCHED | TAB1 | 1 | 15 | | 2 (0)| 00:00:01 |
|* 3 | INDEX RANGE SCAN | IDX_FK_1111111111 | 1 | | | 1 (0)| 00:00:01 |
| 4 | SORT AGGREGATE | | 1 | 15 | | | |
|* 5 | TABLE ACCESS BY INDEX ROWID BATCHED | TAB1 | 1 | 15 | | 2 (0)| 00:00:01 |
|* 6 | INDEX RANGE SCAN | IDX_FK_2222222222 | 1 | | | 1 (0)| 00:00:01 |
| 7 | WINDOW SORT | | 153 | 5967 | | 32 (7)| 00:00:01 |
|* 8 | HASH JOIN | | 153 | 5967 | | 31 (4)| 00:00:01 |
...
Было бы неплохо остаться в Eclipse, чтобы мне не приходилось настраивать / менять среды.
(Я думаю, у разработчика SQL и / или у Toad был какой-то графический просмотрщик explain plan с иерархической функциональностью свертывания / расширения, где также доступен какой-то плагин Eclipse от Toad, который мне не понравился, потому что он был довольно навязчивым в отношении манипулирования проектом.)
Но, пожалуйста, не стесняйтесь добавлять другие ответы для похожих инструментов и, возможно, скриншоты для пользователей с аналогичными потребностями, но в разных средах.
Комментарии:
1. У меня были проблемы с плагином OEPE Eclipse от Oracle , но у него была хорошая функция текстового контекстного меню и графического плана объяснения: oracle.com/technetwork/developer-tools/eclipse/documentation /…
Ответ №1:
Что вы действительно хотите использовать, так это SQL Monitor.
https://sqlmaria.com/2017/08/01/getting-the-most-out-of-oracle-sql-monitor/
Комментарии:
1. Спасибо! выглядит неплохо. хотя кажется, что его нужно настроить (как сервер веб-приложений) или, по крайней мере, запустить на хосте oracle, что может быть нелегко?
2. Вам не нужно это настраивать. Он включен по умолчанию. Если вы хотите наблюдать за запросами в реальном времени, вам нужно использовать либо EM, либо EMEcpress. Но если вы просто хотите просмотреть конечный результат, просто сгенерируйте HTML-файл и откройте в браузере 🙂
Ответ №2:
С помощью следующего простого регулярного выражения поиска / замены строк, применяемого к текстовому плану объяснения, можно получить хороший результат:
(например, включение / нажатие Editbox Eclipse Plugin Button
в редакторе (представлении), содержащем план объяснения, в Eclipse — любой другой редактор с аналогичными функциями отображения / выделения блоков также подойдет)
Найти: ^( |[^|] d |)(s )
заменить: $2$1
выдаст следующий вывод (переместив операционные отступы в начало каждой строки):
чтобы получить такую раскраску, нужно настроить Editbox ( Eclipse -> Window -> Preferences-> Editbox -> Others
) таким образом:
Highlight selected box:
color <Custom> <Red>
,width <2>
Color levels: 14
Gradient tool:
(например)from color <white> to
amp;<dark green>
(и, возможно, pushGenerate
)
(Кстати: при наведении курсора мыши на такой блок можно нажать, ALT Z
что выделит текстовый блок целиком, например, для удобства копирования / вставки. (для SQLS с соответствующим отступом также полезно для частичного выполнения кода))