Сообщество Oracle Support Meetup провело пятую юбилейную онлайн-встречу
Послушать опытных экспертов техподдержки Oracle – Андрея Николаева из РДТЕХ и независимого консультанта Игоря Мельникова 28 марта собралось более 80 технических специалистов.
Андрей Николаев рассказал об Oracle latch – одном из двух типов спин-блокировок Oracle. Часто считается, что спин-блокировки устарели, но несмотря на имеющиеся недостатки, они быстрее альтернативных методов синхронизации.
Oracle latch актуальны и развиваются вендором, но недостаточно документированы, важнейшая информация о latch не раскрывается Oracle, констатировал Андрей Николаев.
Спикер рассказал о реальных кейсах последних лет, когда, например, было зафиксировано замедление процессинга из-за конкуренции за latch, возникали проблемы с аномальными ожиданиями latch free.
"Диагностика проблем с latch является серьезным вызовом для администраторов БД Oracle. Документация, MOS и интернет-источники часто противоречат друг другу и запутывают DBA", - отметил Андрей Николаев.
Эксперт сосредоточился на внутреннем устройстве и диагностике Oracle latch в современных версиях Oracle. В частности, в 19с, которая будет поддерживаться вендором в течение 10 лет, что заставляет тщательно изучать данный релиз.
Разработчикам приложений для СУБД Oracle постоянно приходится учитывать особенность ее архитектуры: отдельные "движки" PL/SQL и SQL, соответственно наличие потерь производительности на вызовы PL/SQL-функций в SQL-запросах и на выполнение SQL внутри хранимых процедур PL/SQL, называемое переключением контекста.
Игорь Мельников на примере проекта у заказчика рассказал, как минимизировать затраты на переключение контекста с помощью прагмы UDF.
"Вставка прагмы UDF в исходный код и технология автоматического рефакторинга кода c помощью технологии PL/Scope была реализована без необходимости дорогостоящего ручного анализа и рефакторинга существующего PL/SQL-кода. Использование прагмы UDF позволило ускорить быстродействие запросов с PL/SQL- функциями", - отметил Игорь Мельников.
Директор Центра техподдержки РДТЕХ Сергей Мисюра поблагодарил участников канала Oracle Support Meetup, собравшего уже почти 300 пользователей и ставшего платформой для консолидации и передачи технических знаний.