查看: 9421|回复: 10

视图和表关联查询优化讨论-请高人指点!

[复制链接]
论坛徽章:
1
ITPUB十周年纪念徽章
日期:2011-11-01 16:26:59
发表于 2011-8-5 14:43 | 显示全部楼层 |阅读模式
waplog_httptraffic是一张视图,其中用union all关联了两张表,每张表数据量为千万级。WAPGW_FILE_SIZE是一张小表。
现在waplog_httptraffic视图中的两张表都建立INCOMING_REQUEST_TIME索引,WAPGW_FILE_SIZE中min_size和max_size分别建立了索引。

现在以下sql这个查询很慢,有什么优化措施啊!求帮助!


以下为sql语句:
Select to_date('2011-08-02 14:00:00','yyyy-mm-dd hh24:mi:ss'),
        b.file_size_id,
             COUNT ( CASE
               WHEN a.VERSION = '1.2' THEN
                    1
               ELSE
                    NULL
               END ) as  WAP1X_REQ_NUM,
               NVL( Sum( CASE
               WHEN a.VERSION = '1.2' AND outgoing_status_code<500 THEN
                    nvl(a.DOWNLINK_CONTENT_LENGTH+a.UPLINK_CONTENT_LENGTH,0)
               ELSE
                       0
               END ),    0) as  WAP1X_REQ_DATA_FLOW,
              NVL( Sum( CASE
               WHEN a.VERSION = '1.2' AND a.outgoing_status_code<500 THEN
                    nvl(a.DOWNLINK_CONTENT_LENGTH,0)
               ELSE
                       0
               END ),    0) as  WAP1X_REQ_DOWNLOAD_DATA_FLOW
        from waplog_httptraffic a, WAPGW_FILE_SIZE b
        WHERE INCOMING_REQUEST_TIME >= TO_DATE('2011-06-22 12:00:00', 'YYYY-MM-DD HH24:MI:SS')
              AND INCOMING_REQUEST_TIME < TO_DATE('2011-06-22 12:05:00', 'YYYY-MM-DD HH24:MI:SS')
              and b.min_size <= nvl(a.UPLINK_CONTENT_LENGTH+a.DOWNLINK_CONTENT_LENGTH, 0)
              and b.max_size >= nvl(a.UPLINK_CONTENT_LENGTH+a.DOWNLINK_CONTENT_LENGTH, 0)
        group by file_size_id;
论坛徽章:
5
ITPUB9周年纪念徽章
日期:2010-10-08 09:28:51数据库板块每日发贴之星
日期:2011-07-22 01:01:02蜘蛛蛋
日期:2011-08-24 14:10:13ITPUB十周年纪念徽章
日期:2011-11-01 16:24:042012新春纪念徽章
日期:2012-01-04 11:54:26
发表于 2011-8-5 16:44 | 显示全部楼层
给钱帮你调 调一个10元

使用道具 举报

回复
论坛徽章:
8
数据库板块每日发贴之星
日期:2009-06-12 01:01:02数据库板块每日发贴之星
日期:2009-06-21 01:01:01ITPUB9周年纪念徽章
日期:2010-10-08 09:32:272010广州亚运会纪念徽章:游泳
日期:2010-11-12 16:42:092011新春纪念徽章
日期:2011-02-18 11:42:502010广州亚运会纪念徽章:三项全能
日期:2011-02-26 13:07:50咸鸭蛋
日期:2011-08-30 15:51:05ITPUB十周年纪念徽章
日期:2011-11-01 16:25:22
发表于 2011-8-5 16:50 | 显示全部楼层
我顶,我顶,楼上滴。

使用道具 举报

回复
论坛徽章:
7
数据库板块每日发贴之星
日期:2011-06-14 01:01:02数据库板块每日发贴之星
日期:2011-08-16 01:01:01ITPUB十周年纪念徽章
日期:2011-09-27 16:34:13ITPUB十周年纪念徽章
日期:2011-11-01 16:26:592012新春纪念徽章
日期:2012-01-04 11:57:56玉石琵琶
日期:2012-02-21 15:04:382013年新春福章
日期:2013-02-25 14:51:24
发表于 2011-8-5 17:12 | 显示全部楼层
做个跟踪看一下啊

使用道具 举报

回复
论坛徽章:
1
ITPUB十周年纪念徽章
日期:2011-11-01 16:26:59
 楼主| 发表于 2011-8-8 11:41 | 显示全部楼层
我用set autot on;调试了,逻辑读在建立索引和没有建立索引差不多饿。
楼上两位不厚道啦~

使用道具 举报

回复
认证徽章
论坛徽章:
86
秀才
日期:2015-09-21 09:46:16目光如炬
日期:2014-07-28 06:00:03马上有钱
日期:2014-06-16 15:55:42马上有房
日期:2014-06-16 15:55:422014年世界杯参赛球队: 伊朗
日期:2014-06-13 11:29:242014年世界杯参赛球队:巴西
日期:2014-06-06 14:36:14马上有钱
日期:2014-04-04 13:51:21马上加薪
日期:2014-04-04 13:35:40马上有房
日期:2014-02-18 16:42:022014年新春福章
日期:2014-02-18 16:42:02
发表于 2011-8-8 11:43 | 显示全部楼层
把执行计划和跟踪文件贴一下

使用道具 举报

回复
论坛徽章:
1
ITPUB十周年纪念徽章
日期:2011-11-01 16:23:26
发表于 2011-8-8 12:25 | 显示全部楼层
统计信息收集的准确吗

[ 本帖最后由 deepshrift 于 2011-8-8 23:37 编辑 ]

使用道具 举报

回复
论坛徽章:
1088
金色在线徽章
日期:2007-04-25 04:02:08金色在线徽章
日期:2007-06-29 04:02:43金色在线徽章
日期:2007-03-11 04:02:02在线时间
日期:2007-04-11 04:01:02在线时间
日期:2007-04-12 04:01:02在线时间
日期:2007-03-07 04:01:022008版在线时间
日期:2010-05-01 00:01:152008版在线时间
日期:2011-05-01 00:01:342008版在线时间
日期:2008-06-03 11:59:43ITPUB年度最佳技术原创精华奖
日期:2013-03-22 13:18:30
发表于 2011-8-8 13:03 | 显示全部楼层
呵呵,得学会自己看计划,这是最基本的要求和调优的动作

使用道具 举报

回复
论坛徽章:
1
ITPUB十周年纪念徽章
日期:2011-11-01 16:26:59
 楼主| 发表于 2011-8-8 16:58 | 显示全部楼层
这个是我用单表百万计数据测试的结果。

Execution Plan
----------------------------------------------------------
   0      SELECT STATEMENT Optimizer=ALL_ROWS (Cost=13 Card=1 Bytes=67
          )

   1    0   SORT (GROUP BY) (Cost=13 Card=1 Bytes=67)
   2    1     NESTED LOOPS (Cost=12 Card=1 Bytes=67)
   3    2       VIEW OF 'WAPLOG_HTTPTRAFFIC' (VIEW) (Cost=10 Card=3 By
          tes=165)

   4    3         UNION-ALL
   5    4           TABLE ACCESS (BY INDEX ROWID) OF 'TAB20110622_11'
          (TABLE) (Cost=5 Card=1 Bytes=26)

   6    5             INDEX (RANGE SCAN) OF 'TIME_IDX_TAB20110622_11'
          (INDEX) (Cost=3 Card=1)

   7    4           TABLE ACCESS (BY INDEX ROWID) OF 'TAB20110622_12'
          (TABLE) (Cost=5 Card=2 Bytes=52)

   8    7             INDEX (RANGE SCAN) OF 'TIME_IDX_TAB20110622_12'
          (INDEX) (Cost=3 Card=2)

   9    2       TABLE ACCESS (FULL) OF 'WAPGW_FILE_SIZE' (TABLE) (Cost
          =1 Card=1 Bytes=12)





Statistics
----------------------------------------------------------
          8  recursive calls
          0  db block gets
     483184  consistent gets
          2  physical reads
          0  redo size
        809  bytes sent via SQL*Net to client
        512  bytes received via SQL*Net from client
          2  SQL*Net roundtrips to/from client
          1  sorts (memory)
          0  sorts (disk)
          8  rows processed

使用道具 举报

回复
论坛徽章:
1
ITPUB十周年纪念徽章
日期:2011-11-01 16:26:59
 楼主| 发表于 2011-8-8 17:05 | 显示全部楼层
'WAPGW_FILE_SIZE' (TABLE) 我添加了索引,发现对这个表还是全表查询,该如何修改?

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

SACC2019中国系统架构师大会

【数字转型 架构演进】SACC2019中国系统架构师大会,7折限时优惠重磅来袭!
2019年10月31日~11月2日第11届中国系统架构师大会(SACC2019)将在北京隆重召开。四大主线并行的演讲模式,1个主会场、20个技术专场、超千人参与的会议规模,100+来自互联网、金融、制造业、电商等领域的嘉宾阵容,将为广大参会者提供一场最具价值的技术交流盛会。

限时七折期:2019年8月31日前


----------------------------------------

大会官网>>
TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 
京ICP备09055130号-4  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表