教你在SQL Server 2000数据库中使用分区(3)
作者:Alizze 发布时间:2008-11-25 11:55:00
您应该看到查询计划中仅包括表 1999。将该查询计划与主键已删除的相同表生成的查询计划相比较,我们会发现:表 2000 仍然被排除。将这些计划与在已删除 date_key 约束的架构上生成的查询计划进行对比。这些约束被删除的情况下,表 1999 和表 2000 都被包括在查询中。
请注意,在通常情况下,在大型表上执行查询时,使用“TOP N”语法是好的做法,因为它可以迅速返回结果并使用最少的服务器资源。查看分区表的查询计划时,这一点尤为重要,因为由“SELECT *”语句生成的查询计划很难解析。对于偶尔进行观察的人而言,尽管在查询执行期间,查询中仅使用相关的表,但表面看起来好象查询计划包括了 UNION ALL 视图的所有组件表。
将条件直接应用于事实表:
要获得最佳的查询性能,所有的查询都应将条件直接放在事实表中的筛选键上。将约束放在第二张表(例如日期矢量表)的查询将包括所有分区。对 UNION ALL 事实表的标准星号联合查询工作良好,将条件放在任意未分区的矢量表的属性上,以标准方式创建星号查询 WHERE 子句,包括分区矢量(日期)的属性。
在分区矢量架构上设计查询与在未分区的架构上设计完全一样,只不过将日期条件直接放在事实表中的日期键上时日期条件最为有效。
如果每一分区表的索引中的第一个列为带日期的簇索引,转到所有分区解析某一特定查询的开销相对较小。编写预定义的查询时应尽可能提高其效率,例如那些生成标准报表或渐变更新下行数据流数据库的查询。
分区键的选择
事实表可以在多个矢量上进行分区,但是大多数人可能仅按日期进行分区。如前面描述的,日期分区可以支持简单的“滚动窗口”管理, 较旧的分区甚至可以被保存在不同的位置,或者减少索引次数。同样,大多数对数据仓库的查询是按日期进行筛选的。
对于按日期分区的应用程序,决策变量为:
使多少数据保持联机状态?这项决策的主要依据是业务要求,同时要考虑保持大量数据联机的费效比。


猜你喜欢
- 利用上一篇的框架,再写了个翻转棋的程序,为了调试minimax算法,花了两天的时间。几点改进说明:拆分成四个文件:board.py,play
- 本文实例讲述了Python requests库用法。分享给大家供大家参考,具体如下:requests是Python中一个第三方库,基于 ur
- 本文实例为大家分享了python实现二叉树的遍历具体代码,供大家参考,具体内容如下代码:# -*- coding: gb2312 -*- c
- Atom是一款功能强大的跨平台编辑器,插件化的解决方案为atom社区的繁荣奠定了基础。任何人都可以把自己做的组件贡献在github上,并能方
- 1、pyecharts绘制饼图(显示百分比)# 导入模块from pyecharts import options as optsfrom
- 以下函数采用FSO对象,文件位置在FSO.ASP。FSO对象的文件编码属性只有三种,系统默认,Unicode,ASCII,并没有我们要的ut
- 启动IDLE后会打开Python shell窗口。当键入代码 时,它会基于Python语法提供自动缩进和代码着色功能。使用IDLE中的Pyt
- 题目:在提示符下使用open打开一个文件刚开始网上看了下打开的方式,结果一直实现不了,报错是没找到这个文件,而且和我输入的文件名不一样。错误
- 虽说Oracle的动态SQL语句使用起来确实很方便,但是其拼装过程却太麻烦。尤其在拼装语句中涉及到date类型字段时,拼装时要加to_cha
- 本文实例讲述了JS学习笔记之数组去重实现方法。分享给大家供大家参考,具体如下:操作的数组 let arr=[0,1,23,'1
- 最近项目中需要Python的打包,看到网上也没有很详细的资料,于是做了一些示例程序。研究了一下,Python如何在Windows和Linux
- Hadoop 命令行最常用指令篇:1.ls (list directory)Usage:hadoop fs -ls [R]Option: -
- Mysql安装、配置、优化,供大家参考,具体内容如下Mysql下载首先登入官网下载mysql的安装包,官网地址https://dev.mys
- 前言成语填空想必大家都是十分熟悉的了,特别是有在上小学的家长肯定都有十分深刻的印象。在我们的认知里看图猜成语不就是一些小儿科的东西吗?当然了
- 本文实例为大家分享了使用XML配置c3p0数据库连接池的具体代码,供大家参考,具体内容如下想通过JDBC来配置c3p0数据库连接池,上网想找
- 大家都知道,在SQL脚本中设置多字段做关键字相对比较简单,例:primary key(id1,id2) ,但用脚本建数据库就比较麻烦了。那么
- python发起http请求,并解析返回的json字符串的小demo,方便以后用到。#! /usr/bin/env python  
- 用Python实现出来的机器学习算法都是什么样子呢? 前两期线性回归及逻辑回归项目已发布(见文末链接),今天来讲讲BP神经网络。BP神经网络
- 前期准备及前情回顾#对于一维向量用np.arange生成以元组形式输出从0开始的数组([0, 1, 2, 3, 4, 5, 6, 7, 8,
- 目录前期准备界面编写截图功能实现OCR实现内容显示总结前期准备在这个阶段主要准备整个小程序的结构,既然要实现ocr,那么输入就是一张图片,而