构想下一代优化器MBO:MachineLearning Based Optimizer

熟悉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。

大家觉得呢?

原文发布于微信公众号 - 大数据和云计算技术(jiezhu2007)

原文发表时间:2016-06-10

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏阮一峰的网络日志

信息机器Memex

1945年,一个美国科学家Vannevar Bush在《大西洋月刊》上发表了一篇文章《As We May Think》,提出一种信息机器的构想,就像下图中的样子...

393110
来自专栏云时之间

深度学习与应用:百度AI平台使用浅谈

最近因为对文本情感分析有一些需要,所以去学习使用了一下百度的NLP处理模块,特此记录一下,来和大家一起分享。

19540
来自专栏AI研习社

博客 | Github开源人体姿态识别项目OpenPose中文文档

人体姿态识别与估计的应用场景:抖音尬舞机、体育动作教学、3D健身教练、3D试衣、绘画辅助、游戏人物动作采集。

1.8K40
来自专栏量子位

陈天奇团队发布TVM:把深度学习部署到手机、树莓派等更多硬件

允中 编译整理 量子位 出品 | 公众号 QbitAI ? △ 陈天奇,华盛顿大学计算机系博士生,此前毕业于上海交通大学ACM班。XGBoost、cxxnet等...

48250
来自专栏AI科技大本营的专栏

Python热文Top10,精选自1000篇文章

【AI 科技大本营导读】每月一次的热文推荐又又又来啦~这次我们从近 1000 篇 Python 文章进行了筛选,挑选出了 10 篇(前 1%)值得一看的文章以飨...

15260
来自专栏Data Analysis & Viz

Gephi绘制微博转发图谱:以“@老婆孩子在天堂”为例

以前看过一篇提取《釜山行》剧本中人物,并用Gephi绘制关系图谱的文章,因此想用Gephi绘制下微博转发情况,借此来换个角度看看微博内容是怎么扩散的。其中爬取转...

24420
来自专栏机器之心

自动生成硬件优化内核:陈天奇等人发布深度学习编译器TVM

39160
来自专栏腾讯数据中心

变频冷机在超低负载下如何安全又节能运行?

使用变频冷机是为了节能,节能的前提是“冷机处于非满载工况下运行”。但如果当冷机负载太低(低于30%以下),冷机不仅无法有效节能,甚至不能正常工作——此时冷机会反...

43220
来自专栏SDNLAB

SDN控制平面东西向现状简介

What is SDN West-East Interface 在SDN架构中,控制平面掌控全局网络的资源,主要控制数据平面的转发等功能,尤其重要,所以控制平面...

37870
来自专栏大数据文摘

Kaggle | 使用Python和R绘制数据地图的十七个经典案例(附资源)

96050

扫码关注云+社区

领取腾讯云代金券