В чем разница между CBO и RBO? Коллеги, всем привет! С вами Кирилл Михалько. Я когда-то учился на курсах у Дениса, давно в канале и... порядком прикипел к нашему Oracle-сообществу. Это мой первый пост в канале прошу сильно не закидывать 🍅 🍅 Сегодня разберем классический вопрос, который по-прежнему всплывает на собеседованиях и в дискуссиях о производительности Oracle. Как известно Oracle Database использует оптимизатор запросов для построения плана выполнения SQL. Исторически в Oracle существовало два типа оптимизаторов: Rule-Based Optimizer (RBO) и Cost-Based Optimizer (CBO). Понимание разницы между ними важно для осознанной работы с планами выполнения и тюнинга запросов. Rule-Based Optimizer (RBO) — это такой представитель западного мира, основанного на правилах 😊 RBO не смотрит на реальные данные: размеры таблиц, распределение значений, селективность, а применяет набор статичных правил, поэтому в одних случаях он «угадывает» хороший план, а в других — жёстко промахивается. Н