`

Oracle 压缩表的一点测试

 
阅读更多
---压缩表可减少数据量,从而减少IO

DROP TABLE t purge;

CREATE TABLE t NOCOMPRESS AS
SELECT rownum AS n, rpad(' ',500,mod(rownum,15)) AS pad
FROM dual
CONNECT BY level <= 200000;

--收集表统计信息

admin@ORCL> execute dbms_stats.gather_table_stats('ADMIN','T');

PL/SQL 过程已成功完成。



--未压缩的表当前情况
admin@ORCL> SELECT table_name, blocks,compression  FROM user_tables WHERE table_name = 'T';

TABLE_NAME                         BLOCKS COMPRESS
------------------------------ ---------- --------
T                                   14449 DISABLED
admin@ORCL> set autotrace on
--查看资源消耗,COST 为3185,逻辑读为14297
admin@ORCL> select count(*) from t;

  COUNT(*)
----------
    200000


执行计划
----------------------------------------------------------
Plan hash value: 2966233522

-------------------------------------------------------------------
| Id  | Operation          | Name | Rows  | Cost (%CPU)| Time     |
-------------------------------------------------------------------
|   0 | SELECT STATEMENT   |      |     1 |  3185   (1)| 00:00:39 |
|   1 |  SORT AGGREGATE    |      |     1 |            |          |
|   2 |   TABLE ACCESS FULL| T    |   199K|  3185   (1)| 00:00:39 |
-------------------------------------------------------------------


统计信息
----------------------------------------------------------
          1  recursive calls
          0  db block gets
      14297  consistent gets
          0  physical reads
          0  redo size
        408  bytes sent via SQL*Net to client
        385  bytes received via SQL*Net from client
          2  SQL*Net roundtrips to/from client
          0  sorts (memory)
          0  sorts (disk)
          1  rows processed


--开始压缩表

ALTER TABLE t MOVE COMPRESS;

execute dbms_stats.gather_table_stats('ADMIN','T');

admin@ORCL> SELECT table_name, blocks,compression  FROM user_tables WHERE table_name = 'T';

TABLE_NAME                         BLOCKS COMPRESS
------------------------------ ---------- --------
T                                    2639 ENABLED

set autotrace on 
admin@ORCL> select count(*) from t;

  COUNT(*)
----------
    200000


执行计划
----------------------------------------------------------
Plan hash value: 2966233522

-------------------------------------------------------------------
| Id  | Operation          | Name | Rows  | Cost (%CPU)| Time     |
-------------------------------------------------------------------
|   0 | SELECT STATEMENT   |      |     1 |   587   (2)| 00:00:08 |
|   1 |  SORT AGGREGATE    |      |     1 |            |          |
|   2 |   TABLE ACCESS FULL| T    |   200K|   587   (2)| 00:00:08 |
-------------------------------------------------------------------


统计信息
----------------------------------------------------------
          0  recursive calls
          0  db block gets
       2596  consistent gets
          0  physical reads
        116  redo size
        408  bytes sent via SQL*Net to client
        385  bytes received via SQL*Net from client
          2  SQL*Net roundtrips to/from client
          0  sorts (memory)
          0  sorts (disk)
          1  rows processed
/

注意:压缩后的表更新的开销会更大,查询耗费的CPU也更多。所以压缩表一般适合在更新比较少,且CPU消耗不大,IO消耗很大系统中试用。

 

分享到:
评论

相关推荐

    Navicat Premium连接oracle配置

    总结来说,Navicat Premium 12连接Oracle数据库涉及的主要知识点包括:理解数据库连接的基本原理、了解Oracle Instant Client的作用和下载、配置Navicat Premium以指向正确的oci.dll文件、以及如何测试和验证连接...

    地震前兆Oracle LOB数据压缩与交换及其访问效率研究.pdf

    综上所述,本篇文章对Oracle数据库中LOB数据的压缩与交换技术进行了深入研究,提出并测试了多种压缩算法,并针对地震前兆监测数据的特点,探讨了如何优化数据的读取、交换和写入效率,为相关领域提供了宝贵的参考。

    oracle数据库迁移步骤

    Oracle提供了多种工具和技术来实现这一点,其中最常用的就是`expdp`(Export Data Pump)和`impdp`(Import Data Pump)。这些工具在Oracle 11g版本中得到了显著增强,特别是数据泵的引入极大地提高了卸库的速度。 ...

    Oracle SQL高级编程(资深Oracle专家力作,OakTable团队推荐)--随书源代码

    12.4.1 压缩索引 348 12.4.2 基于函数的索引 350 12.4.3 反转键索引 353 12.4.4 降序索引 354 12.5 管理问题的解决方案 355 12.5.1 不可见索引 355 12.5.2 虚拟索引 356 12.5.3 位图联结索引 357 12.6 小结...

    oracle 定时备份

    - **备份文件归档**:备份完成后,建议对备份文件进行压缩归档处理,可以使用`rar`或`zip`等工具对DMP文件进行压缩,并存储在一个安全的地方,避免被误删除或覆盖。 - **备份文件验证**:定期检查备份文件的有效性...

    免安装的Oracle客户端

    - **工作负载重放客户端**(Instant Client Package-WRC):用于重放工作负载以测试数据库性能的工具。 - **预编译包**(Instant Client Package-Precompiler):包含用于预编译Pro*C应用程序的“proc”二进制文件...

    IX上安装oracle(网络版)

    最后,Oracle 9.2.0.1.0的安装通常涉及将下载的文件解压缩到硬盘上,然后按照安装指南进行操作。这可能包括设置环境变量,创建数据库实例,配置网络服务等步骤。安装过程中可能需要根据提示进行额外的系统调整,例如...

    PL/SQL Developer连接64位的Oracle图解及相应文件下载

    首先,我们需要明白一点:尽管你的操作系统可能是64位的,但为了兼容性,我们依然可以使用32位的Oracle客户端来连接数据库。这是因为PL/SQL Developer本身支持32位版本,而且32位的Oracle客户端通常能与更多的应用...

    安装Oracle数据库详解 48页图文

    需要注意的是,Oracle数据库安装过程较为复杂,建议在安装前详细阅读官方文档,并在测试环境中进行多次练习。此外,确保操作系统和硬件环境符合Oracle的最低要求,以避免在安装过程中遇到不必要的问题。

    plsql安装包.zip

    PLSQL Developer是一款专为Oracle数据库设计的集成开发环境(IDE),它提供了用户友好的界面,使数据库管理员和开发人员能够更方便地编写、测试和调试PL/SQL代码。以下是使用PLSQL Developer的一些核心功能: 1. **...

    计算机软件毕业设计_WEB助学贷款管理系统_计算机毕业设计源码_计算机毕业设计源代码.rar

    3. **数据库设计**:包括学生信息表、贷款信息表、还款记录表等,用于存储和检索相关数据。可能使用MySQL、SQL Server或Oracle等关系型数据库管理系统。 4. **安全机制**:确保用户数据的安全,如使用HTTPS协议进行...

    p33452377-141100-Generic.zip

    3. 解压缩:使用合适的工具(如WinRAR或7-Zip)解压缩文件,通常会得到一个或多个patch文件。 4. 执行补丁:按照Oracle提供的文档指导,执行补丁安装脚本,这通常涉及到在命令行中运行特定的补丁应用工具,如opatch...

    jdk-17.0.4.1_linux-aarch64_bin.tar.gz.zip

    首先,JDK是Java编程语言的核心组件,它包含了Java运行环境(JRE)、编译器、调试器以及其他工具,使得开发者能够在本地环境中编写、测试和运行Java应用程序。JDK 17.0.4.1 是Oracle公司发布的一个版本,它是Java SE...

    LabVIEW 数据存储指南.zip_LABVIEW数据_LABVIEW数据存储_labview 存储_labview 数据_l

    8. **数据压缩与加密**:LabVIEW提供了压缩和解压缩功能,可以对大量数据进行压缩以节省存储空间。同时,通过加密函数,可以保护敏感数据的安全性。 9. **数据可视化**:LabVIEW的强大之处在于其强大的图形化表示...

    毕业设计源码之公考上岸通(公考学习通).zip

    【压缩包子文件的文件名称列表】中,“项目部署说明.zip”可能包含的是如何在本地或服务器上安装和配置该应用的详细步骤,这对于初学者或者想要运行该项目的人来说非常重要。"myProject"可能代表项目的主要源代码...

    Linux上安装jdk.docx

    有两种方法可以做到这一点: **方法一:官网手动下载** 访问Oracle的官方网站(http://www.oracle.com/technetwork/java/javase/downloads/index.html),找到JDK 13的下载页面(可能需要登录)。如果你遇到登录...

    java毕业设计&课设-漂流瓶.zip

    【压缩包子文件的文件名称列表】:“漂流瓶”可能是这个项目的主要程序文件或者包含项目文件的文件夹,里面可能包括了如.java源文件、.jar可执行文件、配置文件、数据库脚本、测试文件、README文档等。这些文件共同...

    宾馆管理系统。后面还有公用的jar

    9. **测试与部署**:系统开发完成后,需要进行全面的测试,包括单元测试、集成测试和压力测试,确保其在各种场景下都能正常工作。部署策略可能涉及负载均衡、备份恢复和更新策略等。 通过以上分析,我们可以看到...

    ssms_lxm20200416.rar

    标题“ssms_lxm20200416.rar”指的是一个压缩文件,其中包含了一个名为“ssms_lxm20200416.sql”的子文件。这个文件的描述表明它与“数据库脚本”相关。标签进一步确认了这一点。下面,我们将深入探讨数据库脚本这一...

    KMEGGU2.zip_java编程

    标题中的“KMEGGU2.zip_java编程”表明这是一个与Java编程相关的压缩文件,其中可能包含了一些Java源代码示例,特别是关于分页查询显示的代码。描述中提到的“一个很好的java源程序,分页查询显示代码”进一步确认了...

Global site tag (gtag.js) - Google Analytics