开启SQL Server Denali之旅:字段存储索引

SQL Server的最近三个版本都贴上了非官方的标签,每一个版本都是为那些大 多数新特性所针对的用户群量身定做的。例如,SQL Server 2005被认为是一个面 向开发者版本,而SQL Server 2008则被看作是一个面向数据管理员的版本。具备 Microsoft PowerPivot数据分析工具并对SQL Server Analysis Services和 Reporting Services功能都进行了改进的SQL Server 2008 R2则是一个众所周知 的商业智能(BI)版本。

Microsoft于10月份在西雅图举行的Professional Association for SQL Server (PASS) Summit 2010上发布了SQL Server下一个版 本(代号Denali)的第一个社区技术预览版(CTP)。似乎这个发布版本将不会再贴上 传统的标签;相反,Denali具有适合所有人使用的功能。而且几个新的功能使 Denali能够吸引人们现在就开始对它进行评估和测试,因此您必须做好在商业版 在年末或明年发布时进行更新的准备。

字段存储索引

字段存储是 SQL Server引擎的一种新型索引。字段存储索引是通过一种名为VertiPaq的新数 据架构支持,相对于常规的索引,它的设计能够实现了显著的性能提升。

在常规的索引中,来自每个记录行的索引数据都被保留在一页中,而每个字段的 数据则分布在所有页。字段索引将来自各个字段的数据打包在一起,因此每页都 包含一个字段的数据。此外,每个字段的索引数据都是压缩的,而且由于字段总 是包含高度重复的价值,您就能够实现较高的压缩比。如果您只选择了少量的字 段,那么这就意味着索引中的页会更少一些,而且需要扫描的页也会更少。

由于存储在SQL Server中不同实例的数据性质会有所差别,因此很难知道 在现实应用程序中数据检索可以达到多快的速度,但是Microsoft表示它的速度可 以快几倍到几百倍的速度。

从业务的角度看,这个功能可以改变用户使用 数据仓库的方式。传统地,数据仓库中的表由于太大无法在实现实时检索,因此 它们并不适合临时检索:必须将这些表中的数据聚合起来,建立数据库和生成报 告,以及进行全天候缓存,才能够为用户提供及时的响应。

假设您的活期 存款中有1,000美元,并且可以开出500美元的支票。但是在线查看帐号信息之后 ,您会发现余额仍然显示为1,000美元。银行有时候需要一定的时间刷新帐户余额 ,因为对于大型的数据集,实现实时更新是不可行的,而且也几乎是不可能的。 类似的,数据仓库总是必须在晚上运行提取、转换和负载(ETL)过程来更新和汇总 数据。

但是一个存储字段索引可以在数分钟之内完成原本需要一个多小时 才能完成的检索,也能够在几秒钟内完成原本几将分钟才能完成的检索,因此您 的业务可以转变为实时检索方式。这意味着我们不需要等待几天的数据收集和汇 总时间。底线是什么呢?您的业务用户和执行决策者将更容易获得他们所需要的数 据。

时间: 2024-09-14 04:00:29

开启SQL Server Denali之旅:字段存储索引的相关文章

SQL Server · 特性分析 · 2012列存储索引技术

摘要 MS SQL Server 2012首次引入了列存储索引(Columnstore Index)来加速数据分析(OLAP)和数据仓库(Data Warehouse)场景的查询,它主要是通过将数据按列压缩存储的方式来减少查询对磁盘IOPS开销和CPU开销,最终达到提升查询效率,降低响应时间的目的.当然,列存储索引也不是一把万能的钥匙,在SQL Server 2012版本中它有诸多非常严苛限制条件. 这篇文章会从以下几个方面来介绍列存储索引: 列存储索引所涉及到的基本概念 列存储索引的结构 列存

解读SQL Server 2014可更新列存储索引——存储机制

概述 SQL Server 2014被号称是微软数据库的一个革命性版本,其性能的提升的幅度是有史以来之最. 可更新的列存储索引作为SQL Server 2014的一个关键功能之一,在提升数据库的查询性能方面贡献非常突出.据微软统计,在面向OLAP查询统计类系统中,相比其他SQL传统版本的数据库,报表查询的性能最大可提升上十倍. 下面我们从存储的角度来了解下SQL Server 2014的可更新列存储索引.   什么是列存储 微软为了提升SQL Server的查询性能,更好的支持大数据分析,早在S

操作-分高悬赏答案!!sql server 2008 r2中怎样存储txt文件?

问题描述 分高悬赏答案!!sql server 2008 r2中怎样存储txt文件? 客户要求将大量TXT文件原封不动存入sql数据库,使用pb开发程序,通过pb可以实现文件的下载和上传,目前的问题就是,怎么才能将txt文件存入数据库?有几种方法?那种方法最简单易实现?具体操作怎么来?分高悬赏 解决方案 简单得很,先用编辑软件把字段之间用ascii码的t分隔,也就是tab那个键按出来的空白. 然后复制到excel,数据就从文本变成了表格形式.然后excel里面有拼接函数 那就拼接成一个inser

comBox绑定SQL Server数据库中时间字段中的不重复的年份

  关于comBox绑定SQL Server数据库中时间字段中的不重复的年份如下: private void Education_Training_Load(object sender, EventArgs e) { MyDBase DB = new MyDBase(DBUser.sserver, DBUser.DBName, DBUser.suser, DBUser.spasswd); DataSet DS = DB.GetRecordset("select distinct (year(da

SQL Server 中BIT类型字段增删查改那点事

原文:SQL Server 中BIT类型字段增删查改那点事 话说BIT类型字段之前,先看"诡异"的一幕,执行Update成功,但是查询出来的结果依然是1,而不是Update的2 当别人问起我来的时候,本人当时也是处于懵逼状态的,后面联想具体的业务突然想起来这个字段是bit类型的 如果把这个现象跟BIT类型字段连续起来就不觉得奇怪了. 废话不多,直接上代码看结果就好了. 先建一个测试表 CREATE TABLE TestBIT ( Id INT IDENTITY(1,1), BitCol

SQL server 2012数据库某字段超过某个值短信提醒?

问题描述 SQL server 2012数据库某字段超过某个值短信提醒? SQL server 2012数据库某字段超过某个值短信提醒? 解决方案 这个问题有人问过了,我详细回答过了,移步http://ask.csdn.net/questions/235536 解决方案二: 给手机发送短信,是要通过运营商提供接口的. 解决方案三: 设置触发器,发现符合某个条件了,调用程序,然后程序再进行短信发送处理 解决方案四: 可以通过创建存储过程,由存储过程发送短信请求,触发器生成url参数,调用存储过程的

关于SQL Server中bit类型字段增删查改的一些事

前言 本文主要给大家介绍了关于SQL Server中bit类型字段增删查改的一些事,话说BIT类型字段之前,先看"诡异"的一幕,执行Update成功,但是查询出来的结果依然是1,而不是Update的2 当别人问起我来的时候,本人当时也是处于懵逼状态的,后面联想具体的业务突然想起来这个字段是bit类型的 如果把这个现象跟BIT类型字段连续起来就不觉得奇怪了. 废话不多,直接上代码看结果就好了. 先建一个测试表 CREATE TABLE TestBIT ( Id INT IDENTITY(

在 SQL Server 2005 中查询表结构及索引

server|索引 在 SQL Server 2005 中查询表结构及索引 -- 1. 表结构信息查询 -- ========================================================================-- 表结构信息查询 -- 邹建 2005.08(引用请保留此信息)-- ========================================================================SELECT     Tab

在SQL Server 2005中查询表结构及索引

server|索引 在 SQL Server 2005 中查询表结构及索引 -- 1. 表结构信息查询 -- ===================================================-- 表结构信息查询-- 邹建 2005.08(引用请保留此信息)-- ====================================================SELECT     TableName=CASE WHEN C.column_id=1 THEN O.name