Oracle数据库高级压缩算法介绍_第1页
Oracle数据库高级压缩算法介绍_第2页
Oracle数据库高级压缩算法介绍_第3页
Oracle数据库高级压缩算法介绍_第4页
Oracle数据库高级压缩算法介绍_第5页
已阅读5页,还剩20页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、Oracle数据库高级压缩算法介绍Oracle Database 12C Advanced CompressionTOC o 1-2 h z u HYPERLINK l _Toc535562639 1.引言 引言企业当前存储和管理的数据量正在快速增长,各种行业评估结果表明,数据量每 2-3 年就会加倍。数据量的这种迅猛增长为 IT 带来了艰巨的挑战。首当其冲的是存储成本:尽管存储的价格一直在大幅下降,但数据量的巨大增长仍使存储成为大多数 IT 预算中最大的成本因素之一。此外,由于数据库加速增长,很难在保持不超出预算的同时继续满足性能要求。在 Oracle Database 12c 中,为 Ad

2、vanced Compression 选件增添了一些旨在增强 Oracle 数据库存储管理功能的新特性。热图可自动跟踪修改和查询的时间戳,提供对数据访问状况的详细洞察。自动数据优化 (ADO) 则可根据热图收集的信息自动移动和压缩数据。这些功能结合在一起可帮助实施信息生命周期管理 (ILM) 战略。通过热图和 ADO,可以轻松使用 Oracle 数据库压缩技术中的现有创新,从而帮助降低管理大量数据的成本,同时还能提高应用程序和数据库性能。Advanced Compression 选件包含一套全面的压缩特性,旨在针对结构化数据、非结构化数据、数据库备份、网络流量以及Data Guard 重做实施

3、压缩,从而降低成本及提高性能。除热图和 ADO 外,Advanced Compression 选件中的其他新特性包括高级网络压缩、对闪回数据存档历史表的优化、存储快照优化以及到压缩格式的联机分区移动。本文将逐一介绍 Advanced Compression 选件的这些特性。Oracle Advanced CompressionAdvanced Compression 选件 (ACO) 提供一套全面的压缩功能,可帮助客户在降低存储成本的同时提高性能。它可针对包括关系数据(表)、非结构化数据(文件)、网络数据和备份数据在内的所有类型的数据实施压缩,使 IT 管理员可以大大降低其数据库存储占用的整体

4、空间。尽管各个服务器(生产、开发、QA、测试、备份等)的存储成本节省和优化通常被视为最切实的益处,但 Advanced Compression 选件的所有特性还旨在提高 IT 基础架构中所有组件的性能,包括内存、网络带宽和存储。热图业务对数据库中各种数据的需求不尽相同。数据的生命周期会经历各种不同的阶段: 首次插入数据时,它最开始为活跃数据,然后频繁查询和修改;这类数据是高级行压缩的理想候选对象。经过一段时间(在这段时间内会频繁进行查询,例如生成报告, 但很少修改数据)后,数据通常变得不太活跃;这种数据是混合列仓库压缩的理想候选对象。在最后阶段,数据差不多变成休眠状态,不再更新而且很少进行查询

5、,但必须保留以便用于合规性和监管用途;这种数据可使用混合列归档压缩进行压缩。热图是新的 Oracle 数据库特性,可在块和段级收集使用情况信息。通过将热图与自动数据优化结合使用(请参阅下面的“自动数据优化”一节),Oracle Database 12c 可以根据数据的使用情况自动执行压缩和存储策略,从而降低存储成本、提高性能和优化存储。在段级,热图可跟踪数据库中每个表和每个分区的最新修改与查询的时间戳。在块级,热图可跟踪最新修改的时间戳。自动数据优化使用这些时间戳来确定压缩和存储策略,它们在数据的整个生命周期中自动进行维护。热图可跳过对系统任务执行的内部操作,并自动排除统计信息收集、DDL、表

6、重新定义及类似操作。此外,可在会话级禁用热图,使 DBA 可以排除手动维护,避免污染热图数据。通过热图收集的数据,Oracle 数据库可以根据热图数据自动地、相互独立地压缩表的每个分区,从而实施压缩分层。这种压缩分层可以使用所有形式的 Oracle 表压缩,包括:高级行压缩和所有级别的混合列压缩 (HCC)(如果基础存储支持 HCC)。Oracle 数据库还可以根据热图数据,使用高级行压缩来压缩各个数据库块。自动数据优化自动数据优化 (ADO) 允许组织创建自动实施数据压缩(智能压缩)和存储分层的策略。智能压缩指的是利用热图信息将压缩策略和压缩级别与数据的实际使用情况相关联的能力。ADO 策略

7、定义应用于特定对象的条件和相应操作。利用热图维护的信息, Oracle Database 12c 可为请求的对象执行注册的 ADO 操作,从而透明且自动地将它们移至所需的状态。可在段级指定表和分区的 ADO 策略,或在行级为表指定这些策略。在维护时段,会在后台自动评估和执行段级 ADO 策略,也可以根据需要随时执行段级 ADO 策略。存储分层仅可在段级指定,并且仅可由段当前所在的表空间的空间压力触发。DBA 可以使用管理程序来设置或更改空间压力阈值。在维护时段,会在后台自动评估和执行行级 ADO 策略,也可以根据需要随时执行行级 ADO 策略。ADO 策略包括以下内容的明确说明:哪个条件将启动

8、压缩,例如没有访问或没有修改。策略何时生效,例如,在不再修改后的 30 天(或者数月或数年)、行或分区创建后的 7 天,或包含对象的表空间满足预定义的表空间饱和度阈值时。ADO 策略示例:在第一个示例中,创建了一个段级 ADO 策略,在至少 30 天都没有修改后,使用高级行压缩来自动压缩整个表。ALTER TABLE employee ILM ADD POLICY ROW STORE COMPRESS ADVANCED SEGMENT AFTER 30 DAYS OF NO MODIFICATION;在第二个示例中创建的是一个行级 ADO 策略,在至少 3 天都没有修改块中的任意行后,使用高级

9、行压缩来自动压缩表中的块:ALTER TABLE employee ILM ADD POLICY ROW STORE COMPRESS ADVANCED ROW AFTER 3 DAYS OF NO MODIFICATION;除智能压缩外,其他 ADO 策略操作包括将数据移动到其他存储层,这些存储层包括成本较低的存储层或具有其他压缩功能(例如混合列压缩 (HCC))的存储层。HCC 要求使用 Oracle 存储 Exadata、Pillar Axiom 或 Sun ZFS 存储设备 (ZFSSA)。在此示例中,当前包含对象的表空间满足预定义的表空间饱和度阈值时,表空间级的ADO 策略会自动将表

10、移至其他表空间:ALTER TABLE employee ILM ADD POLICY tier to ilmtbs;将段移至另一表空间时,另一选项是在移动对象后将目标表空间设置为只读。在数 据库备份期间,这对于历史数据非常有用,因为后续的完整数据库备份将跳过只读表空间。数据压缩Oracle 是数据库压缩技术的先驱者。十多年以前,Oracle Database 9i 第 2 版引入了基本表压缩,可压缩使用批量加载操作加载的数据。2007 年,Oracle Database 11g 第 1 版引入了 OLTP 表压缩(现在称为高级行压缩), 可在所有类型的数据处理操作(包括插入和更新等常规 DM

11、L 操作)期间维持压缩。此外,高级行压缩可最大程度减少对压缩数据进行写操作的开销,这使其非常适合 事务/OLTP 环境以及数据仓库,从而将压缩的益处扩展至所有应用程序负载。基本表压缩是 Oracle Database 12c 企业版 (EE) 的一个特性。而高级行压缩是 AdvancedCompression 选件的一部分。高级行压缩高级行压缩使用一种独特的压缩算法,这种算法专门设计用于 OLTP 应用程序。该算法通过消除数据库块甚至多个列中的重复值来发挥作用。压缩块包含一种称为符号表的结构,用于维护压缩元数据。压缩块时,通过先将重复值的单个副本添加到符号表来消除重复值。然后,每个重复值将替换

12、为对符号表中相应条目的简短引用。通过此创新设计,压缩数据自包含在数据库块中,因为用于将压缩数据转换为其原始状态的元数据存储在块的标头中。与维护全局数据库符号表的同类压缩算法相比,Oracle 的方法可提供显著的性能优势,因为它在访问压缩的数据时不会产生额外的 I/O。图 1:压缩块与非压缩块高级行压缩的优势在特定环境中可达到的压缩率取决于所压缩的数据,尤其是数据基数。通常,组织使用高级行压缩后,有望将其存储空间使用量减少为原来的二分之一到四分之一。即未压缩数据占用的空间量比压缩数据占用的空间量大 2 至 4 倍。高级行压缩的优势不仅仅是节省磁盘存储空间。其明显优势是 Oracle 可直接在内存

13、中读取压缩块,而不必先对块进行解压缩。由于 I/O 量减少,并且与 I/O 操作相关的系统调用数也减少,因此有助于提高性能。此外,缓冲区缓存的效率得到提升,因为不必添加内存即可存储更多数据。最低性能开销如上所述,高级行压缩对读取操作没有负面影响。在写入数据时可能要执行其他工作,因此无法完全消除写操作的性能开销。有许多优化可最大程度地减少高级行压缩的这种开销。Oracle 数据库是用批处理的方式压缩数据块,而不是每次执行写操作就压缩数据。新初始化的块会保持未压缩状态,直到块中的数据达到内部控制的阈值。当事务导致块中的数据量达到此阈值时,就会压缩块中的所有内容。随后,当更多数据添加到块并再次达到阈

14、值时,会重新压缩整个块以实现最高级别的压缩。该过程会重复进行,直到 Oracle 确定该块无法从进一步的压缩中获益。只有执行块压缩的事务才会遇到极小的压缩开销,压缩数据块上的大多数 DML 事务的性能与在未压缩数据块上的性能完全相同。未压缩数据压缩数据标头数据可用空间图例说明图 2:高级行压缩过程空数据块初始未压缩数据块压缩数据块部分压缩数据块压缩数据块性能示例:表扫描/DML 性能结果:ERP 数据库 10 个最大的表(来源:Oracle)比未压缩数据快 2.5 倍未压缩 已压缩压缩数据的 CPU 开销低于 3%未压缩 已压缩高级行压缩迁移和最佳实践对于新表和新分区,可以轻松启用高级行压缩:

15、只需使用 CREATE 命令创建表或分区,同时指定“ROW STORE COMPRESS ADVANCED”。参见以下示例:CREATE TABLE emp (emp_id NUMBER, first_name VARCHAR2(128), last_name VARCHAR2(128) ROW STORE COMPRESS ADVANCED;对于已有的表和分区,推荐三种方法来启用高级行压缩:ALTER TABLE ROW STORE COMPRESS ADVANCED此方法将为所有未来的 DML 操作启用高级行压缩,但是表中的现有数据将保持未压缩状态。Online Redefinition

16、(DBMS_REDEFINITION)此方法将为未来的 DML 操作启用高级行压缩,此外还压缩现有数据。使用 DBMS_REDEFINITION 可使表保持联机状态,在迁移期间仍可用于读/写活动。并行运行 DBMS_REDEFINITION 可实现最佳性能。在该操作期间,联机重新定义将索引克隆到临时表。在同步(刷新) 操作期间会递增维护所有克隆的索引,因此在联机重新定义期间或以后都不会在索引的使用上出现中断。唯一的例外是将联机重新定义用于重新定义分区,此时任何全局索引都无效,需要在联机重新定义后重新构建。ALTER TABLE MOVE ROW STORE COMPRESS ADVANCED此

17、方法将为未来的 DML 操作启用高级行压缩,此外还压缩现有数据。在表被移动期间,仍使其处于联机状态以用于读取活动,但具有独占(X) 锁定,因此所有 DML 操作都将被锁定,直到移动命令完成。并行运行 ALTER TABLEMOVE 可实现最佳性能。ALTER TABLE MOVE 将使分区或表上的任何索引失效;这些索引需要在 ALTER TABLE MOVE 之后重新构建。对于分区移动, 将ALTER TABLE MOVE PARTITION 与 UPDATE INDEXES 子句配合使用会保留索引(它会放置独占 (X) 锁,因此所有 DML 操作都将被锁定,直到移动命令完成) 不适用于未分区

18、的表。ALTER TABLE .MOVE PARTITION ONLINE 允许 DML 操作在正移动的分区上持续、不间断地运行。在移动分区操作期间保持全局索引,因此不再需要人工重新构建索引。某些联机移动分区的使用需要ACO:尤其是,如果用户使用该特性将分区移至压缩的格式(任何形式的压缩,包括基本压缩、高级行压缩或 HCC),则需要 ACO 许可。ALTER TABLE.MOVE 语句允许您将未分区表的数据或已分区表的分区数据重新定位到新的段中,并且可选择性地重新定位到其他表空 间中。ALTER TABLEMOVE ROW STORE COMPRESS ADVANCED 通过在要移至的表空间中

19、为压缩数据创建新范围来压缩数据,务必要注意的是,新段可以定位到数据文件中的任意位置,不一定在文件的尾部或头部。发布原始段时,根据范围的位置,可能会也可能不会缩减数据文件。以下是对作为 Advanced Compression 选件组成部分的功能的一些最佳实践和考虑事项:通常建议压缩数据库中的所有表,但有一个例外:如果该表用作队列,即在表中插入一些行,随后删除其中的大多数或全部行,然后再插入更多行并再进行删除,则您不应压缩该表。每个 Advanced Compression 功能的最佳测试环境是可以逼真地复制生产环境的环境,这将提供最真实的(在压缩之前和之后)性能和功能比较。通过高级行压缩减少空

20、间使用可在存储最多重复数据(小基数)的环境中实现最佳效果。对于备份来说尤其如此,更好的压缩将减少备份的数据,并因此缩短恢复时间。在批量加载之前排序数据(针对具有最多重复项的列)可以提高压缩率。关于是否在表空间级进行压缩:对于自定义应用程序,我们建议在表空间级进行压缩,但用户应考虑对流量很高或很小的表(例如用作队列的表)禁用压缩。对于对象个数通常很多的商业打包应用程序,推荐的方法是选择对象而不是排除对象。通常,前一百个最大的表和索引会占用大多数的数据库空间。压缩这些对象,同时排除用作队列的表等高流量对象,将获得大多数的压缩优势。随着时间的推移,可以根据需要压缩其他对象。Oracle Databa

21、se 企业版随附了前缀压缩(索引)功能,且不额外收费,该功能不需要购买 Advanced Compression 选件的许可。尽管 Advanced Compression 的 CPU 开销通常最小,但最好是在具有可用 CPU 周期的系统上实施高级压缩,因为压缩将会为一些 DML 操作带来额外(尽管很小)开销。Advanced Compression Advisor 是一个 PL/SQL 包,用于根据对数据样本的分析估计高级行压缩实现的潜在存储节省。它可以很好地估计在实施高级行压缩后获得的实际压缩率。Oracle 技术网网站上免费提供一个 Advanced Compression Adviso

22、r 版本,它支持 Oracle Database 9i 第 2 版到 11g 第 1 版。在 Oracle Database 11g 第 2 版及更高版本中则内置有 Advanced Compression Advisor (DBMS_COMPRESSION)。不支持将高级行压缩与包含 LONG 数据类型的表一起使用。更大的块未必能确保实现更高的高级行压缩率。如果您要确定更大/更小的块大小是否会影响高级行压缩率,建议使用您自己的数据进行测试。LOB 最好存储在 SecureFiles 中,如果客户已获得 Advanced Compression 选件许可,则可以使用高级 LOB 压缩和重复数据

23、消除来潜在地减少 LOB 所需的存储量。如果用户需要更多灵活性来定制 ADO 策略,可以通过自定义 ADO 策略来实现。自定义 ADO 策略利用用户提供的函数来评估每个适用的段。有时,有必要将一个层中的数据尽快移至另一层,而不大可能等到下一维护时段。立即执行 ADO 策略的能力提供了按需移动或压缩数据的能力,与任何现有策略无关。非结构化数据的压缩SecureFiles 提供了一种两全其美的架构来存储非结构化内容(例如文档、图像、电子表格和 XML 文件),它专门设计用来为文件数据提供等于或优于传统文件系统的高性能,同时保留了 Oracle 数据库的优势。SecureFiles 是 ANSI 标

24、准 LOB 数据类型的超集,支持从现有 BasicFiles LOB(前身)轻松迁移到 SecureFiles。利用 SecureFiles,组织可以在 Oracle 数据库中使用单个安全/审计模型和统一的备份与恢复流程来管理所有关系数据和相关文件数据,同时在所有信息间进行无缝检索。Advanced Compression 选件包含高级 LOB 压缩和重复数据消除特性, 可大大减少SecureFiles 数据的存储空间占用,同时还能提高性能。高级 LOB 重复数据消除对于存储文件精确副本的应用程序来说,这极其常用。典型的示例是多个用户可能收到相同附件的电子邮件应用程序。高级 LOB 重复数据消

25、除功能消除了 SecureFiles 数据的重复副本。Oracle 数据库存储 SecureFiles 数据的一个映像,并将重复副本替换为对该映像的引用。安全的散列图 3 高级 LOB 重复数据消除考虑一个电子邮件应用程序,其中 10 个用户接收的电子邮件中包含大小为 1MB 的相同附件。如果不使用高级 LOB 重复数据消除,则系统会为这 10 个用户的每一个都存储该文件的一个副本 这需要 10MB 的存储空间。如果示例中的电子邮件应用程序使用高级 LOB 重复数据消除,则只存储一次大小为 1MB 的附件。这节省了 90% 的存储需求。除存储节省外,高级 LOB 重复数据消除还提高了应用程序性

26、能。尤其是,写入和复制操作的效率大大提高,因为仅写入对 SecureFiles 数据的引用即可。此外,如果重复的SecureFiles 数据已存在于缓冲区缓存中,则读取操作的性能也可以提高。高级 LOB 压缩Advanced Compression 提供另一种机制来控制 SecureFiles 数据的大小。高级 LOB 压缩使用行业标准压缩算法来进一步最大程度地降低 SecureFiles 数据的存储需求。使用高级 LOB 压缩,文档或 XML 文件之类的文件的大小可减小为原来的二分之一至三分之一。高级 LOB 压缩可自动避免压缩无法再压缩的数据,例如,某文档在作为SecureFiles 文件

27、插入数据库之前,已通过第三方工具进行了压缩。应用程序仍能够对压缩的 SecureFiles 数据执行随机读取和写入,因为压缩的数据在内部分为小型的数据块。与在将文件插入数据库之前压缩整个文件相比,这可以极大地提高性能。高级 LOB 压缩有三个级别:低、中和高。默认情况下,高级 LOB 压缩使用中级压缩, 该级别通常能提供很好的压缩,并且具有 3-5% 的适度 CPU 开销。低级别的高级 LOB 压缩针对高性能进行了优化。低级别的高级 LOB 压缩可保持中级压缩 80% 左右的压缩效果,而 CPU 开销则是后者的三分之一。最后,高级别的高级 LOB 压缩可实现最高的存储节省,但会产生最大的 CP

28、U 开销。有关 SecureFiles 和 LOB 存储的详细信息,请参阅 Oracle Database SecureFiles 和大型对象开发人员指南。备份数据的压缩除了压缩存储在数据库内部的数据之外,Advanced Compression 还包括压缩备份数据的功能。Recovery Manager (RMAN) 和数据泵是两个最常用的备份 Oracle 数据库中存储的数据的工具。RMAN 对数据库数据进行逐块备份(也称为“物理”备份),可用于执行数据库、表空间或块级恢复。数据泵用于执行“逻辑”备份,方法是将一个或多个表中的数据卸载到一个平面文件中。Advanced Compressio

29、n 包括压缩这两种工具生成的备份数据的功能。Recovery Manager (RMAN) 压缩企业数据库的持续增长为数据库管理员带来了巨大的挑战。数据库的大小直接影响到维持数据库备份所需的存储大小以及备份过程的性能。Advanced Compression 提供了可以显著降低备份数据存储需求的 RMAN 压缩技术。由于 RMAN 与 Oracle 数据库紧密集成,备份数据经过压缩后再写入到磁盘或磁带,且在恢复之前不需要解压缩,这样便显著降低了存储成本,并且有可能大大缩短备份时间和恢复时间。RMAN 压缩有三个级别:低、中和高。存储节省量从低到高逐渐增加,而可能占用的CPU 资源也逐渐增多。数

30、据泵压缩Oracle Database 10g 第 2 版中率先推出了对数据泵作业相关的元数据进行压缩的功能。在 Oracle Database 11g 中,该压缩功能得到了扩展,支持在导出时压缩表数据;这一扩展功能是 Advanced Compression 选件的一部分。数据泵压缩是内联操作,因此转储文件规模的减小意味着磁盘空间的大量节省。与操作系统或文件系统压缩实用程序不同,数据泵压缩在导入端也是完全的内联操作,因此不需要在导入转储文件之前对其进行解压缩。在导入期间,系统会自动对压缩的转储文件集进行解压缩,不需要数据库管理员执行任何其他操作。全部数据泵功能在使用压缩文件时可用。对常规文件

31、使用的任何命令对压缩文件也起作用。以下选项用于确定应压缩转储文件集的哪些部分:ALL 针对整个导出操作启用压缩。DATA-ONLY 用于将所有数据以压缩格式写入转储文件。METADATA-ONLY 用于将所有元数据以压缩格式写入转储文件。这是默认选项。NONE 针对整个导出操作禁用压缩。Oracle 数据泵导出的 expdp 命令行选项可用于控制对 Oracle 数据泵转储文件使用的压缩级别(BASIC、LOW、MEDIUM 或 HIGH),还可以为 PL/SQL DBMS_DATAPUMP包指定相同的选项。压缩级别越高,产生的延迟就越高,但实现的压缩率也就越高。这就是说,HIGH 选项很可能

32、产生更多开销,但可以更好地压缩数据。这些选项使 DBA 可以根据 Oracle 数据泵转储文件的大小平衡压缩数据花费的时间,使用 LOW、MEDIUM 和 HIGH 选项需要 Oracle Advanced Compression。转储文件大小的减少量因数据类型和其他因素而异。请注意,使用数据泵进行导入时,CREATE TABLE 语句将具有与导出文件中的定义匹配的压缩子句。如果缺少压缩子句,则表会继承存储该表的表空间的 COMPRESSION 属性。有关 Oracle 数据泵的详细信息,请访问 HYPERLINK /technology/products/database/utilities

33、/index.html /technology/products/database/utilities/index.html高级网络压缩高级网络压缩也称为 SQL 网络数据压缩,可用于压缩要在发送端传输的网络数据,然后在接收端对其解压缩从而减少网络流量。高级网络压缩可降低通过数据连接传输的会话数据单元 (SDU) 大小。降低数据大小即可减少传输 SDU 所需的时间。高级网络压缩的优势包括:增加有效的网络吞吐量:压缩可缩短传输大量数据的时间。由于传输时间的减少,SQL 查询响应明显加快。受限带宽环境可利用它来缩短查询响应时间。降低带宽使用率:压缩通过减少要传输的数据来节省带宽,使其他应用程序可以

34、使用腾出的带宽。这还有助于降低提供网络带宽的成本。高级网络压缩不仅使 SQL 查询响应更快,还节省带宽。在窄带宽连接中,借助更快的CPU,能够显著改进性能。该压缩对于客户端应用程序是透明的。Data Guard 重做传输压缩Oracle Data Guard 是一个管理、监视和自动化软件基础架构,用于创建、维护和监视一个或多个备用数据库,保护企业数据免受故障、灾难、错误和数据损坏的影响。Data Guard 通过重做数据(恢复事务时需要的信息)来保持主数据库和备用数据库的同步。当主数据库中发生事务时,则生成重做数据并将其写入本地重做日志文件中。Data Guard 重做传输服务 用于将此重做数

35、据传送至备用站点。 使用 Advanced Compression,可以采用压缩格式传输重做数据,以便降低网络带宽消耗,而且在一些情况下还可以缩短重做数据的传输时间。当 Oracle Data Guard 配置使用同步重做传输 (SYNC) 或异步重做传输 (ASYNC) 时,均可以采用压缩格式传输重做数据。有关 Oracle Data Guard 的详细信息,请访问 HYPERLINK /technology/deploy/availability/index.html /technology/deploy/availability/index.html闪回数据存档历史表的优化闪回数据存档

36、(FDA) 在 Oracle Database 11g 第 1 版中推出;它可以自动跟踪在行级对指定表进行的更改,创建行级历史记录。它还可以自动跟踪对指定表进行的模式更改。FDA 的主要功能是能够执行事务时间临时 SQL 查询 使用数据库简单而又强大的闪回查询功能对历史数据执行查询。FDA 生成作为历史记录的数据量可能会很大; 为了优化此数据的存储和性能, Advanced Compression 使 FDA 可以利用高级行压缩、高级 LOB 压缩和重复数据消除以及压缩分层,这些功能在默认情况下并不可以用于 FDA 历史表。通过 Advanced Compression,FDA 能够在闪回存档

37、级别启用或禁用优化的数据,并且该功能可以用于 CREATE FLASHBACK ARCHIVE 和 ALTER FLASHBACK ARCHIVE。存储快照优化尽管 Recovery Manager (RMAN) 仍然是执行 Oracle 数据库备份的最普遍的方法,但还有另一方法可用于创建数据库备份,即创建数据库中所有文件(数据文件、控制文件以及联机重做日志)的存储快照,将该快照挂载到运行生产数据库的系统之外的另一个系统上,然后将数据从第二个系统复制到第三方存储,例如磁带。通过此方式创建的快照是“崩溃状态一致”的,只要存储产品遵守 Oracle 文档中概括的特定指导准则。如果恢复该快照,Ora

38、cle 无法将恢复的数据库与创建快照时崩溃的数据库区别开来。崩溃状态一致的备份可以在进行标准崩溃(即实例)恢复后打开和使用。但是,它们不能可靠地用于时间点恢复,因为重做日志不包含用于介质恢复的足够信息,无法消除数据文件的不一致(因为创建快照时,打开了该数据库进行写入)。要执行时间点恢复,必须遵守在 Support Note 604683.1 中概括的要求,并严格按照其中的手动过程进行操作。或者,在备份模式下创建快照(即 ALTER DATABASE BEGIN | END BACKUP)来消除时间点恢复限制,因为其他信息会写入重做日志,从而在恢复时消除数据文件的不一致。由于在创建快照之前,每个

39、数据库都需要放置在此模式下,并且在完成快照后需要将它们移出该模式 当必须对数十、数百甚至数千数据库进行该过程时,这种复杂性会得到放大。此外,在此模式下,如果块映像发生更改,则整个块映像都写入重做日志,导致额外的 I/O 活动 当您在同一阵列中运行许多数据库时,这一开销会得到放大。通过 Oracle Database 12c RECOVER .SNAPSHOT TIME 命令(在 Advanced Compression 中提供),可以一步恢复数据库并非在备份模式下创建的存储快照,不管是恢复到当前时间还是创建快照后的特定时间点,无需任何其他过程。通过使用这些快照支持所有类型的恢复操作,该优化有效

40、地消除了对备份模式及其相关复杂性和开销的需求, 从而将省出的 DBA 时间集中在更关键的生产任务上。联机移动分区(到任何压缩格式)ALTER TABLE .MOVE PARTITION ONLINE 允许 DML 操作在正移动的分区上持续、不间断地运行。在移动分区操作期间保持全局索引,因此不再需要人工重新构建索引。某些联机移动分区的使用需要 Advanced Compression:尤其是,如果用户使用该特性将分区移至压缩的格式( 任何形式的压缩,包括基本压缩、高级行压缩或混合列压缩),则需要 ACO 许可。现成的压缩功能Oracle Database 12c 企业版提供许多现成的压缩功能,不

41、需要单独的许可;包括:对 Oracle 存储的混合列压缩(Axiom 和 ZFSSA)混合列压缩 (HCC) 技术是组织一组数据库块中的数据的方法。HCC 将行方法与列方法结合使用来存储数据。该技术使用一种称为压缩单元的逻辑结构来存储一组经 HCC 压缩的数据。加载数据时,行分组以列格式存储,将指定列的值存储并压缩在一起。一组行的列数据经过压缩后,将纳入压缩单元中。将具有相同数据类型和相似特征的列数据存储在一起,可大大增加通过压缩所节省的存储空间,典型的 HCC 压缩率可达 6 倍到 15 倍,具体取决于使用的 HCC 压缩类型。混合列压缩最初在 Exadata 上提供,现在已扩展至支持与 O

42、racle Database 企业版 及更高版本配合使用的 Pillar Axiom 和 Sun ZFS 存储设备 (ZFSSA) 存储。有关 HCC 的详细信息,请参阅 HYPERLINK /technetwork/middleware/bi-foundation/ehcc-twp-131254.pdf Oracle 混合列压缩技术白皮书1基本表压缩十多年以前,Oracle Database 9i 引入了基本表压缩,可压缩使用批量加载操作加载的数据。现在,基本表压缩是 Oracle Database 企业版 (EE) 的一个特性。与 Advanced Compression 不同,基本压缩不

43、会将压缩应用于初始批量加载后对表执行的DML 操作(插入/更新)。基本压缩和高级行压缩在磁盘上的格式完全相同,因此通过更改表/分区上的存储定义将基本压缩转换为高级压缩,在技术上是可行的。1 HYPERLINK /technetwork/middleware/bi-foundation/ehcc-twp-131254.pdf /technetwork/middleware/bi-foundation/ehcc-twp-131254.pdfRMAN 基本压缩Oracle Recovery Manager (RMAN) 包含一种基本压缩功能,该功能可使 RMAN 对备份集执行二进制压缩。DataPu

44、mp 元数据压缩COMPRESSION 参数可用于减小 DataPump 导出期间写入的元数据的大小。索引压缩索引键压缩是 Oracle 数据库的一个特性,可让用户压缩索引或索引组织表中主键列值的一部分,从而降低重复值产生的存储开销。键压缩将索引键分为前缀条目(分组段)和后缀条目(唯一段)。通过在索引块的后缀条目间共享前缀条目来实现压缩。只有在 B 树索引的叶块中的键会被压缩。键压缩在索引块内部而不是在多个索引块之间执行。可以单独对索引进行压缩,与基础表数据是否压缩无关。总结数据量的激增给企业带来了严峻挑战。企业必须快速适应不断变化的业务环境,而不影响盈利水平。IT 管理人员需要高效地管理现有

45、基础架构以控制成本,而且还需要持续提供卓越的应用程序性能。Advanced Compression 选件与 Oracle Database 12c 相结合,可提供一组强大的压缩、性能和数据存储优化功能,使 IT 管理人员在复杂的环境中取得成功。使用 Advanced Compression,企业可高效地管理其数据中心所有组件上不断增长的数据需求,从而在持续提供最佳应用程序性能的同时,最大程度地降低运营支出 和资本支出。压缩语法示例以下示例显示了如何启用高级行压缩和高级 LOB 压缩/重复数据消除;更多信息,请参见 Oracle Database SQL 语言参考。高级行压缩语法CREATE T

46、ABLE emp (emp_id NUMBER, first_name VARCHAR2(128), last_name VARCHAR2(128) ROW STORE COMPRESS ADVANCED;高级 LOB 重复数据消除语法CREATE TABLE t1 (a CLOB)LOB(a)STOREASSECUREFILE(DEDUPLICATECACHE);高级 LOB 压缩语法CREATE TABLE t1 (a CLOB)LOB(a)STOREASSECUREFILE(COMPRESS HIGHCACHE);甲骨文(中国)软件系统有限公司北京远洋光华中心办公室地址:北京市朝阳区景华

47、南街5号远洋光华中心C座21层 邮编:100020电话:(86.10) 6535-6688传真:(86.10) 6515-1015北京汉威办公室地址:北京市朝阳区光华路7号汉威大厦10层1003-1005单元 邮编:100004电话:(86.10) 6535-6688传真:(86.10) 6561-3235北京甲骨文大厦地址:北京市海淀区中关村软件园24号楼甲骨文大厦邮编:100193电话:(86.10) 6106-6000传真:(86.10) 6106-5000北京国际软件大厦办公室地址:北京市海淀区中关村软件园9号楼国际软件大厦二区308单元邮编:100193电话:(86.10) 8279

48、-8400传真:(86.10) 8279-8686北京孵化器办公室地址:北京市海淀区中关村软件园孵化器2号楼A座一层邮编:100193电话:(86.10) 8278-6000传真:(86.10) 8282-6401上海名人商业大厦办公室地址:上海市黄浦区天津路155号名人商业大厦12层邮编:200001电话:(86.21) 2302-3000传真:(86.21) 6340-6055上海腾飞浦汇大厦办公室地址:上海市黄浦区福州路318号腾飞浦汇大厦508-509室邮编:200001电话:(86.21) 2302-3000传真:(86.21) 6391-2366上海创智天地10号楼办公室地址:上海

49、市杨浦区凇沪路290号创智天地10号楼512-516单元 邮编:200433电话:(86.21) 6095-2500传真:(86.21) 6107-5108上海创智天地11号楼办公室地址:上海市杨浦区淞沪路303号创智天地科教广场3期11号楼7楼 邮编:200433电话:(86.21) 6072-6200传真:(86.21) 6082-1960上海新思大厦办公室地址:上海市漕河泾开发区宜山路926号新思大厦11层 邮编:200233电话:(86.21) 6057-9100传真:(86.21) 6083-5350广州国际金融广场办公室地址:广州市天河区珠江新城华夏路8号合景国际金融广场18楼邮编

50、:510623电话:(86.20) 8513-2000传真:(86.20) 8513-2380成都中海国际中心办公室地址:成都市高新区交子大道177号中海国际中心7楼B座02-06单元邮编:610041电话:(86.28) 8530-8600传真:(86.28) 8530-8699深圳飞亚达科技大厦办公室地址:深圳市南山区高新南一道飞亚达科技大厦16层邮编:518057电话:(86.755) 8396-5000传真:(86.591) 8601-3837深圳德赛科技大厦办公室地址:深圳市南山区高新南一道德赛科技大厦8层0801-0803单元邮编:518057电话:(86.755) 8660-71

51、00传真:(86.755) 2167-1299大连办公室地址:大连软件园东路23号大连软件园15号楼502 邮编:116023电话:(86.411) 8465-6000传真:(86.755) 8465-6499苏州办公室地址:苏州工业园区星湖街328号苏州国际科技园5期11幢1001室邮编:215123电话:(86.512) 8666-5000传真:(86.512) 8187-7838沈阳办公室地址:沈阳市和平区青年大街390号皇朝万鑫国际大厦A座39层3901&3911室邮编:110003电话:(86.24) 8393-8700传真:(86.24) 2353-0585济南办公室地址:济南市泺源大街150号中信广场11层1113单元邮编:250011电话:(86.531) 6861-1900传真:(86.531) 8518-1133南京办公室地址:南京市玄武区洪武北路55号置地广场19层1911室邮编:210018电话:(86.25) 8579-7500传真:(86.25) 8476-5226西安办公室地址:西安市高新区科技二路72号西安软件园零壹广场主楼1401室邮编:710075电话:(86.2

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论