【IT168 技术文档】IBM® DB2® 9 for Linux®, UNIX®, and Windows® 包括了一项新的基于字典的行压缩特性,该特性可用于压缩数据对象。当压缩数据时,通过使用更少的数据库页表示相同的数据,可以节省磁盘存储空间。一些具有包含重复模式的行的大型表将从该特性中获益匪浅。在本教程中,您将通过一系列的练习来熟悉这项新特性。理解该特性的优点,然后在您自己的环境中实现行压缩。
开始之前
关于本教程
数据行压缩用较短的符号字符串替换数据行中公共的字节模式。与值压缩相比,行压缩能节省更多的存储空间。不过,实现行压缩需要一定的附加成本,并且每当需要压缩或解压缩一个行时,都需要付出相应的处理成本。DB2 9 中的数据行压缩基于 Lempel-Ziv (LZ) 算法。LZ 算法使用一个静态字典存储所需的信息。在 Data-compression.com 上可以找到 关于该算法的详细信息。这种字典是存储在表本身中的,因而也需要一点开销(大约 74KB)。如果不能节省存储空间,那么 DB2 9 是不会压缩行的。
本教程通过一系列的练习让您熟悉这项新的基于字典的行压缩特性。本教程面向的读者是 DB2 技术专家、数据库管理员和程序员。您应该对 DB2 on Linux, UNIX, and Windows(本文后面简称为 DB2 LUW)有一个基本的理解。您还应该熟悉 DB2 Command Window,并知道如何运行 DB2 LUW 脚本。
目标
本教程将帮助您熟悉 DB2 9 中数据压缩的概念和功能。在这些练习中,您将学习如何:
-启用/禁用行压缩。
-使用 Tablespace 创建中的新选项以使一个页可以包含更多的行。
-使用各种 SQL 查询和工具来分析压缩的优点。
先决条件
本教程是针对那些拥有初级到中级技能和经验的 Linux 或 UNIX 程序员而编写的。您应该大致熟悉如何使用 UNIX 命令行 shell,并具有 C 语言方面的实用知识。
系统需求
要运行本教程中的例子,需要:
-DB2 9 数据服务器。
-Microsoft Windows 2000 或更高版本,以及一个拥有管理员权限的账户,或者具有 root 访问权限的 Linux(Validated edition)。
-Java Runtime Environment 1.4.2 或更高版本。
-请参考 DB2 9 系统需求页面,以确保您的硬件满足需求。
上面的链接里还提供了 DB2 9 Express-C。请参阅教程 “DB2 XML 评估指南” (developerWorks,2006 年 6 月),了解安装 DB2 的步骤。 除非修改了 DB2 配置,否则 DB2 在安装之后将自动启动。
-使用 compression.zip 文件中提供的示例脚本和文件来演示本教程中的概念。将其中的内容解压到一个名为 DB2compression 的子目录中(C:\DB2compression 或 home/userid/DB2compression)。该目录在本教程中被简称为 DB2compression。本教程假设您将 DB2 安装在默认目录下,并且所有 DB2 练习都是以数据库管理员 id 执行的。
使用DB2 9多种系统的行压缩功能压缩数据库
0
相关文章