我的编程空间,编程开发者的网络收藏夹
学习永远不晚

dbms_stat与analyze的区别是什么

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

dbms_stat与analyze的区别是什么

这篇文章主要讲解了“dbms_stat与analyze的区别是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“dbms_stat与analyze的区别是什么”吧!

【IT168知识库】  

自从Oracle8.1.5引入dbms_stats包,Experts们便推荐使用dbms_stats取代analyze。 理由如下

  1. dbms_stats可以并行分析

  2. dbms_stats有自动分析的功能(alter table monitor )

  3. analyze 分析统计信息的不准确some times

[@more@]

1,2好理解,且第2点实际上在VLDB中是最吸引人的;3以前比较模糊,看了metalink236935.1 解释,analyze在分析Partition表的时候,有时候会计算出不准确的Global statistics .

原因是,dbms_stats会实在的去分析表全局统计信息(当指定参数);而analyze是将表分区(局部)的statistics 汇总计算成表全局statistics ,可能导致误差。

如果想分析整个用户或数据库,还可以采用工具包,可以并行分析
Dbms_utility(8i以前的工具包)
Dbms_stats(8i以后提供的工具包)

dbms_stats.gather_schema_stats(User,estimate_percent=>100,cascade=> TRUE);
dbms_stats.gather_table_stats(User,TableName,degree => 4,cascade => true);

这是对命令与工具包的一些总结

1、对于分区表,建议使用DBMS_STATS,而不是使用Analyze语句。
a) 可以并行进行,对多个用户,多个Table
b) 可以得到整个分区表的数据和单个分区的数据。
c) 可以在不同级别上Compute Statistics:单个分区,子分区,全表,所有分区
d) 可以倒出统计信息
e) 可以用户自动收集统计信息

2、DBMS_STATS的缺点
a) 不能Validate Structure
b) 不能收集CHAINED ROWS, 不能收集CLUSTER TABLE的信息,这两个仍旧需要使用Analyze语句。
c) DBMS_STATS 默认不对索引进行Analyze,因为默认Cascade是False,需要手工指定为True

3、对于oracle 9里面的External Table,Analyze不能使用,只能使用DBMS_STATS来收集信息。

感谢各位的阅读,以上就是“dbms_stat与analyze的区别是什么”的内容了,经过本文的学习后,相信大家对dbms_stat与analyze的区别是什么这一问题有了更深刻的体会,具体使用情况还需要大家实践验证。这里是亿速云,小编将为大家推送更多相关知识点的文章,欢迎关注!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

dbms_stat与analyze的区别是什么

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

npm与cnpm的区别是什么

这篇文章主要讲解了“npm与cnpm的区别是什么”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“npm与cnpm的区别是什么”吧!npm作为包管理器来说相对来说比较好用,但是由于服务器不在国内
2023-06-27

CentOS与Ubuntu的区别是什么

CentOS与Ubuntu的区别是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。什么是 CentOS?CentOS(Community Enterprise Operati
2023-06-16

AmazonAurora与AmazonRDS的区别是什么

Amazon Aurora是建立在MySQL和PostgreSQL之上的,旨在提供高性能、高可用性和可扩展性的数据库解决方案。与传统的关系型数据库服务相比,Amazon Aurora具有更快的性能、更高的可靠性和更低的成本。Amazon
AmazonAurora与AmazonRDS的区别是什么
2024-03-11

web与php的区别是什么

web与php的区别:1、php主要用于后端处理数据和操作数据增删改查,而web前端用于把界面和数据显示给用户;2、php在服务器运行和解释,web前端主要用浏览器解决;3、php要考虑效率和安全性,web前端则要更注重可操作性和美观。
2016-02-02

wordpress与PHP的区别是什么

wordpress与PHP的区别:PHP是一门在服务器端执行的脚本语言,一种编程语言;而WordPress是一款个人博客系统,是使用PHP语言开发的博客平台,功能都是现成的直接使用。
2020-08-18

android与java的区别是什么

java是一门编成语言,而android是一个基于linux内核的手机操作系统。两者的关系在于,用java语言可以编写出应用程序安装在android,这也是现在java语言就业的一个方向。编程界网,大量的免费Java入门教程,欢迎在线学习!
android与java的区别是什么
2018-02-25

编程热搜

目录