熟悉ORACLE数据库的人,对RBO/CBO肯定很熟。
Rule Based Optimizer(RBO)基于规则
Cost Based Optimizer(CBO)基于成本,或者讲统计信息
ORACLE 提供了CBO、RBO两种SQL优化器。CBO在ORACLE7 引入,但在ORACLE8i 中才成熟。ORACLE 已经明确声明在ORACLE9i之后的版本中(ORACLE 10G ),RBO将不再支持。因此选择CBO 是必然的趋势。
RBO自ORACLE 6版以来被采用,有着一套严格的使用规则,只要你按照它去写SQL语句,无论数据表中的内容怎样,也不会影响到你的“执行计划”,也就是说对数据不“敏感”;CBO计算各种可能“执行计划”的“代价”,即cost,从中选用cost最低的方案,作为实际运行方案。各“执行计划”的cost的计算根据,依赖于数据表中数据的统计分布,ORACLE数据库本身对该统计分布并不清楚,必须要分析表和相关的索引(使用ANALYZE 命令),才能搜集到CBO所需的数据。
RBO是一种呆板、过时的优化器,它只认规则,对数据不敏感。毕竟规则是死的,数据是变化的,这样生成的执行计划往往是不可靠的,不是最优的,CBO 相比RBO进步很大。
CBO/RBO都是在交易数据中演变成来的,CBO只能统计静态的数据,比如在分析领域的ETL计算,还有很多外部条件,比如数据量和资源的关系,任务之间的相互影响,高SLA任务保障等等,这些通过机器学习算法就可以解决静态统计不能解决的一些问题,因此我在想未来的优化器应该是MBO:MachineLearning Based Optimizer。
大家觉得呢?
微信扫一扫
关注该公众号
相关推荐
基于减法平均的优化器Subtraction-Average-Based Optimizer 基于减法平均的优化器Subtraction-Average-Based Optimizer是指一种新的swarm-inspired metaheuristic算法,用于解决优化问题。该算法的基本思想是使用...
《智能优化算法:Aquila Optimizer——金雕优化器》 智能优化算法是现代计算机科学领域中的一个重要分支,尤其在解决复杂优化问题时展现出了强大的潜力。Aquila Optimizer,又称为金雕优化器,是一种新颖的群智能...
介绍一种基于训练后鹦鹉关键行为的高效优化方法——鹦鹉优化器(Parrot Optimizer, PO)。该成果于2024年2月发表在中科院2区top SCI期刊Computers in Biology and Medicine。
本文将详细讨论"Political Optimizer"(简称PO)算法,这是一种灵感来源于政治选举过程的优化策略。通过分享提供的MATLAB源代码和相关的PDF文档,我们可以深入了解PO算法的工作原理及其在实际应用中的效果。 ...
在Oracle数据库管理系统中,成本基础优化器(Cost-Based Optimizer, CBO)是决定查询执行计划的关键组件。为了确保CBO能够选择最佳的执行策略,准确地收集和维护统计信息至关重要。本文将深入探讨如何通过调整初始化...
该压缩包为Ranger 优化器(性能优于Adam)- a synergistic optimizer using RAdam (Rectified Adam) and LookAhead in one codebase。
* Optimizer:优化器,负责选择合适的执行计划。 * RDDs:Resilient Distributed Datasets,Spark 的核心数据结构。 * SQL Code Generator:生成执行计划对应的 SQL 代码。 How Spark Executes a Query? Spark ...
先看报错代码:大概意思是, 传给优化器的learning_rate参数错误。 模型训练是在服务器Linux环境下进行的,之后在本地Windows(另一环境)继续跑代码,所以初步怀疑是keras版本不一致导致的。 Linux下keras版本...
Ranking-based biased learning swarm optimizer for large-scale optimization (RBLSO),基于秩排序的学习粒子群算法,求解大规模优化问题。
能量谷优化器(Energy Valley Optimizer,EVO)是一种新兴的全局优化算法,它借鉴了自然界中能量谷的概念来寻找最佳解。本篇文章将深入探讨EVO算法及其在Matlab环境中的实现。 能量谷优化器是由Ahmed A. G. Eldai等...
《猎豹优化器在Matlab环境中的应用与详解》 在数学建模和科学计算领域,优化算法扮演着至关重要的角色。Cheetah Optimizer,以其高效和灵活的特点,成为了Matlab用户解决优化问题的得力工具。这款优化器以其名字...
Oracle9i包含两种主要的优化器:成本基于(Cost-Based Optimizer, CBO)和规则基于(Rule-Based Optimizer, RBO)。CBO是默认的优化器,它通过估算不同执行计划的成本来决定最佳路径,而RBO则依赖于预定义的规则和...
### 综合学习粒子群优化器(Comprehensive Learning Particle Swarm Optimizer, CLPSO):全球多模态函数优化的革新方法 #### 引言与背景 粒子群优化(Particle Swarm Optimization, PSO)作为一项相对较新的技术...
### Oracle的优化器(Optimizer)详解 #### 一、Oracle优化器概述 在Oracle数据库中,每当执行SQL语句时,系统首先需要确定最佳的执行路径或计划,这一过程由**优化器(Optimizer)**负责。优化器的主要任务是评估SQL...
分享了野马优化器算法源代码及原文,亲测有效,更多算法可进入空间查看
《蚁狮优化器(Ant Lion Optimizer)在MATLAB中的实现》 蚁狮优化器(Ant Lion Optimizer, ALO)是一种受自然界蚁狮捕食行为启发的优化算法,广泛应用于解决复杂工程问题中的全局优化任务。该算法源于对蚁狮在沙土中...
下面我们将深入探讨优化器的相关知识点。 1. **编译器优化**: - **Optimizer.cc**:这个文件名暗示了一个与编译器优化相关的源代码文件。在C++编程中,`.cc`通常代表"compiled code",意味着这可能是一个包含了...
酶作用优化器:一种新型的仿生优化 EAO是一种生物启发的元启发式优化算法,用于全局优化23个经典函数,IEEE CEC2014、CEC20217和CEC2022 EAO是一种生物启发的元启发式优化算法,模拟生物系统中酶作用的自适应机制。...
Exponential Distribution Optimizer (EDO)是一种用于解决优化问题的智能算法,其核心思想是利用指数分布的特性来探索和优化复杂多模态函数。在机器学习和工程领域,优化算法是寻找最优解的关键工具,尤其对于那些...