Session: Beating Oracle's Optimizer at its own game
Diese Session wurde am 6. November 2018 gehalten.
Since the Cost Based Optimizer has been introduced in Oracle 7 it has undergone constant improvements with each version. Given the maturity it has reached in version 12.2, the manual effort put into tackling CBO issues has been reduced significantly. However, especially in complex applications, there a still issues that require manual intervention by a seasoned DBA. In this talk I will outline a solution that addresses instable execution plans. After introducing the matter with a general overview of the mechanics behind it, I will explain the factors that led to the faced instability in detail. Since the affected application needs to be available 24x7 there was an urgent need for an automated approach that deals with the issue. This has led to a Python based machine learning solution, capable of alleviating the issue autonomously. After a discussion of detecting runtime anomalies by means of statistical methods, I will present relevant implementation details along with the used Python libraries. Generally spoken, the talk will introduce the building blocks for a self-healing service amongst covering the rationale behind it. Apart from unravelling the alleged buzz word machine learning, I will show that implementing such a solution is astonishingly easy, thereby giving participants a tool set at hand that contributes to automating complex tasks.