Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >关于表压缩(Table Compression)技术概述及其历史演变

关于表压缩(Table Compression)技术概述及其历史演变

作者头像
SQLplusDB
发布于 2020-03-26 02:15:48
发布于 2020-03-26 02:15:48
1.2K00
代码可运行
举报
运行总次数:0
代码可运行

概述

本文介绍Oracle表压缩(Table Compression)技术概述及其历史演变

在Oracle数据库中,普通表(即堆表)可以进行压缩技术来提高数据库性能和节省存储空间。

优缺点

表压缩(Table Compression)的好处和缺点主要如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
好处:节省磁盘空间、减少buffer cache的使用、减少I/O 、某些情况下还能加快查询执行时读的速度
缺点:加载数据和进行DML时消耗更多的CPU

表压缩分类

表压缩根据压缩方法不同可以分为以下几类:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
基本表压缩(Basic table compression)
高级行压缩(Advanced row compression)
混合列压缩(EHCC)
   Warehouse compression
   Online archival compression

详细分类还可以参考在线文档中的下表:

Database Administrator's Guide

>20 Managing Tables

>>Consider Using Table Compression

表压缩技术的演化

语法演化

9.2&10g版本:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ALTER TABLE <table_name>
COMPRESS | NOCOMPRESS

11.1版本:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ALTER TABLE <table_name>
COMPRESS [ FOR { ALL | DIRECT_LOAD } OPERATIONS ]
| NOCOMPRESS

11.2版本:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ALTER TABLE <table_name>
COMPRESS [ BASIC
          | FOR { OLTP
                | { QUERY | ARCHIVE } [ LOW | HIGH ]
                }
          ]
| NOCOMPRESS其中“COMPRESS FOR OLTP”用于代替11.1版本的“COMPRESS FOR ALL OPERATIONS”。

12.1版本:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
ALTER TABLE <table_name>
COMPRESS
| ROW STORE COMPRESS [ BASIC | ADVANCED ]
| COLUMN STORE COMPRESS [  FOR { QUERY | ARCHIVE } [ LOW | HIGH ] ]
 [ [NO] ROW LEVEL LOCKING ]
| NOCOMPRESS

表压缩的确认

我们可以通过ALLTABLES/DBATABLES等视图的COMPRESSION和COMPRESS_FOR来查看表压缩的设置状况。

参考:

Database Concepts

http://docs.oracle.com/database/121/CNCPT/tablecls.htm#CNCPT010

>Table Compression

Database Performance Tuning Guide

https://docs.oracle.com/database/121/TGDBA/pfgrf_build_db.htm#TGDBA94152

>Table Compression

>>Estimating the Compression Factor

>>Tuning to Achieve a Better Compression Ratio

Database Administrator's Guide

>20 Managing Tables

http://docs.oracle.com/database/121/ADMIN/tables.htm#ADMIN13948

>Consider Using Table Compression

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2016-06-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Oracle数据库技术 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
知识&案例:SQL*Loader的执行性能--Conventional Path 篇
本章将通过某案例介绍在使用SQL*Loader工具时的性能相关知识和提高执行效率的方法。
SQLplusDB
2020/03/26
1.1K0
Oracle压缩黑科技(一)—基础表压缩
原文链接 https://www.red-gate.com/simple-talk/sql/oracle/compression-oracle-basic-table-compression/ 译者 周天鹏 在关于Oracle压缩的这一系列文章中,我们会研究下传统Oracle数据库系统的各类压缩方式,这意味着该系列文章的目录结构大概是: 1. 基础表压缩 2. OLTP表压缩 3. 索引压缩 但是,不讨论Exadata的hybrid columnar compression (HCC)。 在这三种压缩
沃趣科技
2018/03/26
2.1K0
Oracle压缩黑科技(一)—基础表压缩
混合列压缩(HCC)在OLAP及OLTP场景中的测试
2019年度 ACOUG活动启动啦!为了感恩和回馈一直支持社区工作的技术爱好者、会员、嘉宾和合作伙伴,2019年度,我们汇集了行业大咖最新的精彩主题跟大家分享,更有惊喜好礼等你拿,点击“我要报名”,立即参与!2019年,我们将探索更多可能。
数据和云
2019/05/12
4.4K0
Oracle 在线重定义(上)
11g 官方文档:https://docs.oracle.com/cd/E11882_01/server.112/e25494/tables.htm#ADMIN11668
JiekeXu之路
2024/01/26
4580
Oracle 在线重定义(上)
从ORA-01752的错误,透过现象看本质
这几天开发同学反映了一个问题,有一个Java写的夜维程序,用于每天定时删除历史过期数据,3月10日之前经过了内测,但这两天再次执行的时候,有一条SQL语句一直报ORA-01752的错误,由于近期做过一次开发库的迁移,从一个机房搬迁至另一个机房,而且开发同学确认这期间未变代码逻辑,所以怀疑是否和数据迁移有关,这个错误被测试同学提为了bug,卡在版本测试中,有可能造成进度延误,所以属于比较紧急的问题。
bisal
2019/01/29
1.1K0
Oracle 20c新特性:TRANSFORM支持索引压缩
Oracle 20c 通过引入新的 TRANSFORM 参数子句 INDEX_COMPRESSION_CLAUSE  来支持索引压缩。此子句使您可以控制在导入期间是否执行索引压缩。
Yunjie Ge
2022/04/24
1.1K0
《Oracle Concept》第二章 - 14
表压缩 数据库能使用表压缩来降低存储空间。压缩技术可以节省磁盘空间,降低数据库buffer cache的内存使用量,在一些场景下,还会提高检索执行的速度。表压缩对数据库应用来说是透明的。
bisal
2019/03/15
4950
《Oracle Concept》第二章 - 14
[译] Oracle Database 21c 中的数据泵(expdp、impdp)增强功能
以下示例,通过 expdp 实用程序导出 T1 表,需要注意的是,T1 表需要包含使用新 JSON 数据类型定义的列。
Lucifer三思而后行
2022/04/13
7500
视图DBA_GOLDENGATE_SUPPORT_MODE引起的集成模式OGG不同步问题排查过程(耗时3天,真费时。。。)
使用OGG 21.3可以远程同步Oracle 11.2.0.4的数据库,这个我之前已经测试过,参考:https://www.xmmup.com/shiyongogg-21-3yuanchengshishihuxiangtongbuoracle-11-2-0-4shuangzhu.html
AiDBA宝典
2023/04/26
5680
视图DBA_GOLDENGATE_SUPPORT_MODE引起的集成模式OGG不同步问题排查过程(耗时3天,真费时。。。)
EXP/IMP迁移案例,IMP遭遇导入表的表空间归属问题
1.确认迁移需求:源数据库cssf 用户所有表和数据迁移到目标数据库新建用户cssf_gt下,表空间为dbs_cssf_gt。
Alfred Zhao
2019/05/24
1.1K0
Oracle压缩黑科技(三):OLTP压缩
原文链接:https://www.red-gate.com/simple-talk/sql/oracle/compression-in-oracle-part-3-oltp-compression/
沃趣科技
2018/05/15
2.5K0
Oracle压缩黑科技(三):OLTP压缩
[MYSQL] mysql压缩页原理和解析
当我们磁盘空间比较紧张 或者 数据比较'冷'的时候, 就会想到压缩数据来实现空间的释放. 压缩数据可以在业务层实现, 也可以在数据库层实现
大大刺猬
2024/09/20
7920
[MYSQL] mysql压缩页原理和解析
InnoDB 页面压缩Page Compression可降低磁盘开销,提高吞吐量。
InnoDB数据页面压缩(Page Compression)技术可以使数据文件体积变小,降低磁盘开销,2亿行记录,可提高吞吐量(20%-30%),以较小的成本提高了CPU的利用率。尤其是对只读/读多写少的业务,(例如,查询历史订单表)最为有效,同样的磁盘空间可以存储更多的数据。
贺春旸的技术博客
2023/12/01
3390
InnoDB 页面压缩Page Compression可降低磁盘开销,提高吞吐量。
MySQL表压缩和页压缩,难道只是空间压缩?
临近春节,相信每个公司都会进行全面巡检,无论是业务层还是数据库层,达到事前预防的目的;今天就来分享一下针对MySQL数据存储层面,在数据库存储来不及扩容的情况下,MySQL中的压缩方案;
SEian.G
2022/01/18
3.4K0
MySQL表压缩和页压缩,难道只是空间压缩?
如何不影响生产库性能的情况下评估整库的容量
最近有位朋友,要做一个T级别的数据迁移工作,打算使用数据泵,这个工具提供了非常多的参数,为的就是控制导入导出的过程。
bisal
2020/02/11
7190
案例:12.2环境用户登录错误ORA-01017
Keyword: ORA-01017 12.2 authentication SQLNET.AUTHENTICATION_SERVICES sec_case_sensitive_logon
SQLplusDB
2020/03/26
2K0
第12期:压缩表性能监测
这类操作需要重新对二级索引数据页解压和以及重新压缩,不过 MySQL 对这部分操作放入 change buffer,所以频率相对来说不是很高。
爱可生开源社区
2020/09/14
9780
教你如何快速从 Oracle 官方文档中获取需要的知识
https://docs.oracle.com/en/database/oracle/oracle-database/index.html
JiekeXu之路
2020/06/10
8.8K0
教你如何快速从 Oracle 官方文档中获取需要的知识
第四章 为IM 启用填充对象之在NO INMEMORY表上指定INMEMORY列属性:示例(IM-4.4 第四部分)​
第一章 Oracle Database In-Memory 相关概念(IM-1.1)
Yunjie Ge
2022/04/23
3460
第四章 为IM 启用填充对象之在NO INMEMORY表上指定INMEMORY列属性:示例(IM-4.4 第四部分)​
实现并发新高度:23ai的无锁列值保留
Oracle Database 23ai支持Lock-Free Reservation,中文通常译为“无锁列值保留”。
Alfred Zhao
2024/06/14
2170
实现并发新高度:23ai的无锁列值保留
推荐阅读
相关推荐
知识&案例:SQL*Loader的执行性能--Conventional Path 篇
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验