首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >甲骨文-列直方图显示,即使是在GATHER_TABLE_STATS之后

甲骨文-列直方图显示,即使是在GATHER_TABLE_STATS之后
EN

Stack Overflow用户
提问于 2019-03-31 08:43:24
回答 1查看 510关注 0票数 0

我正在尝试对Oracle 12c中的SQL查询进行性能调优,该查询使用的是窗口分区。在HUB_POL_KEY上创建了一个索引,即表坑上的PIT_EFF_START_DT。在使用/*+ gather_plan_statistics */ hint运行解释计划时,我注意到解释计划中有一个窗口排序步骤,估计行计数为5000 K,实际行计数为1100。我在表上执行了DBMS_STATS.GATHER_TABLE_STATS。当我签入USER_TAB_COLUMNS表时,我发现没有为HUB_POL_KEY,PIT_EFF_START_DT生成直方图。但是,所有其他列都存在直方图。

SQL查询

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
SELECT 
PIT.HUB_POL_KEY,
NVL(LEAD(PIT.PIT_EFF_START_DT) OVER (PARTITION BY PIT.HUB_POL_KEY ORDER BY PIT.PIT_EFF_START_DT) ,TO_DATE('31.12.9999', 'DD.MM.YYYY')) EFF_END_DT
FROM PIT

第一次尝试:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
EXEC DBMS_STATS.GATHER_TABLE_STATS('stg','PIT');

第二次尝试:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
EXEC DBMS_STATS.GATHER_TABLE_STATS('stg','PIT', method_opt=>('FOR COLUMNS SIZE 254 (HUB_POL_KEY,PIT_EFF_START_DT)'));

检查直方图:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
SELECT HISTOGRAM FROM USER_TAB_COLUMNS
WHERE TABLE_NAME = 'PIT'
AND COLUMN_NAME IN ('HUB_POL_KEY','PIT_EFF_START_DT') --NONE

表统计:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
SELECT COUNT(*) FROM PIT --5570253

SELECT COLUMN_NAME,NUM_DISTINCT,NUM_BUCKETS,HISTOGRAM FROM USER_TAB_COL_STATISTICS
WHERE TABLE_NAME = 'PIT'
AND COLUMN_NAME IN ('HUB_POL_KEY','PIT_EFF_START_DT')
+------------------+--------------+-------------+-----------+
|   COLUMN_NAME    | NUM_DISTINCT | NUM_BUCKETS | HISTOGRAM |
+------------------+--------------+-------------+-----------+
| HUB_POL_KEY      |      4703744 |           1 | NONE      |
| PIT_EFF_START_DT |       154416 |           1 | NONE      |
+------------------+--------------+-------------+-----------+

我在这里错过了什么?为什么在运行具有指定大小的gather_table_stat过程时桶大小为1?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-04-04 08:13:41

按照Oracle文档,正确的语法应该是method_opt=>('FOR COLUMNS (HUB_POL_KEY,PIT_EFF_START_DT) SIZE 254')。尝试它并没有像预期的那样创建直方图统计数据(可能是一个bug¯_(ツ)_/¯)。

另一方面,使用method_opt=>('FOR ALL COLUMNS SIZE 254')method_opt=>('FOR COLUMNS <column_name> SIZE 254')可以正常工作。

可能的解决办法是分别收集列的统计数据:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
EXEC DBMS_STATS.GATHER_TABLE_STATS('stg','PIT', method_opt=>('FOR COLUMNS HUB_POL_KEY SIZE 254'));
EXEC DBMS_STATS.GATHER_TABLE_STATS('stg','PIT', method_opt=>('FOR COLUMNS PIT_EFF_START_DT SIZE 254'));
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55443122

复制
相关文章
将网站http跳转至https,并将www域名重定向至不带www
实现了将http://liaobu.de, http://www.liaobu.de, https://www.liaobu.de 都跳转至https://liaobu.de 的效果
wo.
2021/06/15
3.5K0
搜索优化:利用IIS的URL重写模块配置IIS让不带www的域名永久301到www上面。
在对网站做优化的时候通常会让不带www的域名如zjkdh.com永久301到自已要优化的域名上面,如(www.zjkdh.com),这么做就是为了集权,把所有域名的权重集到一个上面,这样的话有可能会使你域名的权重更集中,不分散,这种前提下有可能会比不处理的情况涨的多一些。
睿儿网络郝刚
2020/09/08
3.3K0
搜索优化:利用IIS的URL重写模块配置IIS让不带www的域名永久301到www上面。
网站开启CDN后www301跳转到不带www
最近给网站上了CDN后,却发现原来输入https://www.wnag.com.cn/,现在不会跳转到https://wnag.com.cn/了。
可定
2020/04/20
5.4K0
网站开启CDN后www301跳转到不带www
【已解决】域名解析的时候带上www和不带www的区别及DNS解析问题
凯哥个人博客已经由A里云迁移到腾讯云了。在A里云后台域名解析的时候,www解析到新的服务器IP上了,但是不带www的访问后还是一直访问的老服务器IP的。问题描述:
凯哥Java
2023/02/01
12.7K2
【已解决】域名解析的时候带上www和不带www的区别及DNS解析问题
访问域名带不带www对于SEO来说有什么区别吗
好久没有写文章了,原因嘛无非就是阳了呗,什么心思都没有了,腰酸背痛,终于在“阳过”和“阳康”之后水一篇文章吧,其实在我们搭建网站的时候,首先都会进行域名注册,然后绑定服务器域名解析服务器IP,这样以来用户就可以通过注册的域名来访问我们的博客网站,可是我一直都在纠结在访问页面的时候带不带“www”因为就域名而言是否解析www都不影响网站的访问,我们在解析域名的都是都会以一个为标准,另外一个301重定向就好了,既然都能访问到网站,那这两者有什么区别呢?
李洋博客
2023/03/03
2.1K0
访问域名带不带www对于SEO来说有什么区别吗
访问域名带不带www对于SEO来说有什么区别吗
好久没有写文章了,原因嘛无非就是阳了呗,什么心思都没有了,腰酸背痛,终于在“阳过”和“阳康”之后水一篇文章吧,其实在我们搭建网站的时候,首先都会进行域名注册,然后绑定服务器域名解析服务器IP,这样以来用户就可以通过注册的域名来访问我们的博客网站,可是我一直都在纠结在访问页面的时候带不带“www”因为就域名而言是否解析www都不影响网站的访问,我们在解析域名的都是都会以一个为标准,另外一个301重定向就好了,既然都能访问到网站,那这两者有什么区别呢?
雾海梦曦
2023/01/09
2.1K0
访问域名带不带www对于SEO来说有什么区别吗
PHP的HTTP验证
在日常开发中,我们进行用户登录的时候,大部分情况下都会使用 session 来保存用户登录信息,并以此为依据判断用户是否已登录。但其实 HTTP 也提供了这种登录验证机制,我们今天就来学习关于 HTTP 验证相关的知识。
硬核项目经理
2020/06/16
3.9K0
http和www服务基础知识
一.http www端口: http协议www服务的默认端口是:80 加密的www服务,http默认端口:443(网银,支付的时候) 二.用户访问网站基本流程: 第一步:客户端用户从浏览器输入www.baidu.com网站网址后回车,系统会查询本地host文件及DNS 缓存信息,查找是否存在网址对应的IP解析记录。如果有就直接获取到IP地址,然后访问网站,一般第一次请求时,DNS缓存是没有解析记录的。 第二步:如果客户端没有DNS缓存或者hosts没有对应的www.baidu.com网站网址的域名解析记录,
用户1173509
2018/01/17
2.7K0
http和www服务基础知识
了解下HTTP和WWW如何运作
对于程序员来说,HTTP这个知识点都得了解了解,这里尝试用PPT的方式来介绍下HTTP。
Jimmy_is_jimmy
2022/03/10
2570
了解下HTTP和WWW如何运作
http://www.178linux.com/7944
Linux系统的终端主要包括控制台终端、控制终端、串口终端、伪终端、虚拟终端。 控制台终端(/dev/console)。 在Unix系统中,计算机显示器通常被称为控制台终端。 Console与虚拟终端相关联,内核将信息送到控制台终端上 (/dev/console), 通过与console相关联的虚拟终端将信息 显示到屏幕上。 控制终端(/dev/tty) 控制终端是一个应用程序的概念。对于登录shell来讲, /dev/tty就是我们使用的终端 3、串口终
小小科
2018/05/03
1.1K0
u3d www json http
立羽
2023/08/24
1780
战争与技术-核武器与WWW、HTTP的关系,WWW宣布支持乌克兰
接上集,上集我们和大家分享了战争与技术的第二集,有关Netty和导弹的关系。这集我们为大家分享互联网基石WWW和HTTP的故事。
ImportSource
2022/04/12
4280
战争与技术-核武器与WWW、HTTP的关系,WWW宣布支持乌克兰
python 的http请求模块 url
urllib3是一个强大的,理智的友好的HTTP客户端程序。大部分的Python的生态系统已经使用,你也应该urllib3。urllib3带来从Python标准库缺少许多关键特征:
py3study
2020/01/06
1.5K0
HTTP协议之URL语法
URL提供了一种对任意的一种互联网资源定位的手段。但是这些资源是可以通过不同的方案来(比如,HTTP,FTP,SMTP)进行访问的,因此URL的语法会随着方案的不同而不同。
魔王卷子
2019/05/28
1.1K0
Http请求URL长度限制[通俗易懂]
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/172528.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/23
3.4K0
快递查询API (http://www.kuaidi.com/)
框架 Yii2 前几天申请的key审核通过了,今天把完整的代码发出来。 <?php /** * Created by http://www.kuaidi.com * User: http://ww
友儿
2022/07/27
4770
快递查询API (http://www.kuaidi.com/)
yii2美化url(www.yii2.com/site/index)
第二步:在backend\web里面创建一个.htaccess文件(复制粘贴下来的代码)
贵哥的编程之路
2021/12/23
4210
yii2美化url(www.yii2.com/site/index)
HTTP method GET is not supported by this URL
在写一个简单的浏览器访问客户端代码的时候突然遇到了这个错误,那么我就来讲讲这个错误为什么发生 首先我们来看看浏览器报错的信息
一只胡说八道的猴子
2020/09/27
1.4K0
HTTP method GET is not supported by this URL
JavaScript 的表单或邮箱验证
JavaScript 可用来在数据被送往服务器前对 HTML 表单中的这些输入数据进行验证。 被 JavaScript 验证的这些典型的表单数据有: 用户是否已填写表单中的必填项目? 用户输入的邮件地址是否合法? 用户是否已输入合法的日期? 用户是否在数据域 (numeric field) 中输入了文本?
用户1503405
2021/10/08
1.8K0
点击加载更多

相似问题

android -在活动中显示数据的最佳存储实践

14

在android中显示gif

22

在android中显示gif

689

在android上显示嵌套列表的最佳实践

14

android :在android中显示gif图片

13
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文