最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

DB210.5列式表存储技术

来源:动视网 责编:小采 时间:2020-11-09 08:14:29
文档

DB210.5列式表存储技术

DB210.5列式表存储技术:DB2 10.5引入列式存储表技术,作为DW数据应用的特性,对性能具有很大的提升,同时对SQL基本不做索引优化,查询时直接可以按照列存 DB2 10.5引入列式存储表技术,作为DW数据应用的特性,对性能具有很大的提升,同时对SQL基本不做索引优化,查询时直接可以按
推荐度:
导读DB210.5列式表存储技术:DB2 10.5引入列式存储表技术,作为DW数据应用的特性,对性能具有很大的提升,同时对SQL基本不做索引优化,查询时直接可以按照列存 DB2 10.5引入列式存储表技术,作为DW数据应用的特性,对性能具有很大的提升,同时对SQL基本不做索引优化,查询时直接可以按


DB2 10.5引入列式存储表技术,作为DW数据应用的特性,对性能具有很大的提升,同时对SQL基本不做索引优化,查询时直接可以按照列存

DB2 10.5引入列式存储表技术,作为DW数据应用的特性,对性能具有很大的提升,同时对SQL基本不做索引优化,查询时直接可以按照列存储格式查询相关列即可,可以说管理很简单了。作为一个新特性,DB2 LUW V10.5的列式组织表功能依然作为一个可选择功能项,,用户可以按照自己数据库业务的特点,选择是否启用该功能,对于升级到DB2 LUW V10.5的数据库环境来说,需要经过同样的参数配置,也可以支持这个功能。

在创建数据库前,在DB2 V10.5实例提供了注册变量选项值,即DB2_WORK_LOAD新增可配置值ANALYTICS,配置改参数值后,DB2会为新创建的分析性工作负载数据库建立最佳缺省配置,启用改参数后,数据库会自动配置如下参数,也是支持和影响列式存储环境的几个关键参数:

dft_table_org该参数指定创建表的默认类型,通常设定为row,启用ANALYTICS注册变量值后,系统会自动配置为column

dft_degree 指定分区内SQL语句的并行度,该参数会被自动配置为any

dft_extent_sz 缺省表空间的扩张块大小,该参数会自动被设置为4(默认值为32)

catalogcache_sz 即目录高速缓存,该参数会被自动设置为比通常数据库类型的默认值更大的值

util_heap_sz 即实用程序堆大小,该参数会被自动配置为一个用于装载列组织表时所需额外内存的大小

auto_reorg 即自动重组操作,该参数会被配置为on

sortheap(排序堆)和sheapthres_shr需要根据实际计算配置

当然,如果在已经创建好的数据库库后才对DB2_WORK_LOAD注册变量参数配置analytics,当数据库运行autoconfigure也具有相同效果

创建列组织表

那么如何创建DB2列组织表呢?其实创建列组织表和创建普通行式组织表的语句大体相同,只是列式组织表在creat table后添加了ORGANIZE BY COLUMN的语句。当然如果你当前的数据库级的配置参数dft_table_org设置为column的话,也可以不使用organize by column语句选项,因为在启用该参数值的数据库中,创建的表默认就是列组织表类型,如下是一个创建列组织表的示例DDL:

CREATE TABLE "DB2INST1"."EMPLOYEE" (
"EMPNO" CHAR(6 OCTETS) NOT NULL ,
"FIRSTNME" VARCHAR(12 OCTETS) NOT NULL ,
"MIDINIT" CHAR(1 OCTETS) ,
"LASTNAME" VARCHAR(15 OCTETS) NOT NULL ,
"WORKDEPT" CHAR(3 OCTETS) ,
"PHONENO" CHAR(4 OCTETS) ,
"HIREDATE" DATE ,
"JOB" CHAR(8 OCTETS) ,
"EDLEVEL" SMALLINT NOT NULL ,
"SEX" CHAR(1 OCTETS) ,
"BIRTHDATE" DATE ,
"SALARY" DECIMAL(9,2) ,
"BONUS" DECIMAL(9,2) ,
"COMM" DECIMAL(9,2) )
IN "USERSPACE1"
ORGANIZE BY COLUMN;

行组织表与列组织表的转换

那么对于创建时没有指定列式组织或者由低版本升级的数据库中的行式组织表,如何将其转换成列式组织表呢?DB2 V10.5充分考虑了用户需求,提供了一个新的实用程序工具db2convert,用于将行式组织表转换为列式组织表,如下依然以db2inst2.employee表为例,将其转换为列式组织表,获取到的原始表的DDL语句如下:

CREATE TABLE"DB2INST2"."EMPLOYEE" (
"EMPNO" CHAR(6 OCTETS) NOT NULL ,
"FIRSTNME" VARCHAR(12 OCTETS) NOT NULL ,
"MIDINIT" CHAR(1 OCTETS) ,
"LASTNAME" VARCHAR(15 OCTETS) NOT NULL ,
"WORKDEPT" CHAR(3 OCTETS) ,
"PHONENO" CHAR(4 OCTETS) ,
"HIREDATE" DATE ,
"JOB" CHAR(8 OCTETS) ,
"EDLEVEL" SMALLINT NOT NULL ,
"SEX" CHAR(1 OCTETS) ,
"BIRTHDATE" DATE ,
"SALARY" DECIMAL(9,2) ,
"BONUS" DECIMAL(9,2) ,
"COMM" DECIMAL(9,2) )
IN "USERSPACE1"
ORGANIZE BY ROW;

为了便于观察过程,我们最好为其导入数据,有一定的数据量,以便于观察转换过程,此测试数据来源都是DB2示例数据库sample中相关表中获取的,在此就不多讲,读者可以自己自行测试效果。

如此,我们就可以对其进行转换,其实db2convert工具的用法相对简单,可以进行整库转换,也可以指定单表,需要提供表的schema和tablename,具体用法可以参阅相关使用说明:

文档

DB210.5列式表存储技术

DB210.5列式表存储技术:DB2 10.5引入列式存储表技术,作为DW数据应用的特性,对性能具有很大的提升,同时对SQL基本不做索引优化,查询时直接可以按照列存 DB2 10.5引入列式存储表技术,作为DW数据应用的特性,对性能具有很大的提升,同时对SQL基本不做索引优化,查询时直接可以按
推荐度:
标签: 数据库 oracle db2
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top