博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
八、IO优化(3)稀疏列
阅读量:7092 次
发布时间:2019-06-28

本文共 638 字,大约阅读时间需要 2 分钟。

一、Nullable

  在设计表时,有时会允许某列可以使用Null值(默认)。

CREATE TABLE [dbo].[EmpTable2](

[EmpID] [varchar](10) NOT NULL,

[DepID] [nvarchar](10) NULL,

[Title] [nvarchar](10) NULL

)

二、稀疏列

  稀疏列是对 Null 值采用优化的存储方式的普通列。

  稀疏列减少了 Null 值的空间需求,但代价是检索非 Null 值的开销增加。 当至少能够节省 20% 到 40% 的空间时,才应考虑使用稀疏列。

三、稀疏列的使用场景

1. 列集

  使用稀疏列的表可以指定一个列集以返回表中的所有稀疏列。列集是一种非类型化的 XML 表示形式,它将表的所有稀疏列组合成为一种结构化的输出。列集与计算列的相似之处在于,列集并不是物理地存储在表中。列集与计算列的不同之处在于,列集可直接更新。

  稀疏列和列集是通过使用 CREATE TABLE 或 ALTER TABLE 语句定义的。INSERT、UPDATE 和 DELETE 语句可以通过名称来引用稀疏列。详见

2. 筛选索引

  对于仅包含少量非 NULL 值的稀疏列,因为稀疏列有许多 Null 值行,所以尤其适用于筛选索引。稀疏列的筛选索引可以仅仅对已填充值的行编制索引。这会创建一个更小、更有效的索引。

本文结语:

  使用稀疏列,可以减小存储空间,或者创建更有效的筛选索引。

转载地址:http://fcnql.baihongyu.com/

你可能感兴趣的文章
通过java得到windows的磁盘空间大小
查看>>
VTP配置
查看>>
速写几点linux方面的感悟
查看>>
sharepoint 在做好备份后,网站管理员没有权限登录
查看>>
linux ssh key免密码分发
查看>>
corosync+pacemaker+mysql+drbd构建mysql高可用集群
查看>>
docker的dockerfile文件
查看>>
前端工具 - 15个最佳的 JavaScript 表单验证库
查看>>
linux服务器安装pip命令
查看>>
JAVA游戏编程之一----IDE安装调试(3) --JAD 文件介绍--debug调试
查看>>
在CentOS 7上安装Kafka
查看>>
awk用法(二)
查看>>
Java的动态代理
查看>>
Unix整理笔记——文件系统——里程碑M4
查看>>
使用loadrunner进行报表导出下载的性能测试
查看>>
React Native – 使用 JavaScript 开发原生应用
查看>>
网络基础CCNP篇|如何接入公网
查看>>
局域网共享
查看>>
sudo、磁盘配额、数组、信号捕捉
查看>>
niceTitle插件
查看>>