Oracle中压缩数据节省空间和提高速度
2007-05-11 12:21:26 来源:WEB开发网而且,为了确保数据被实际压缩,你需要利用一种正确的方法将数据加载或插入到表中。只有在利用以下4种方法之一批量加载或批量插入过程中才会进行数据压缩: 直接路径SQL*Loader
带有APPEND提示的串行INSERT
并行INSERT
CREATE TABLE ... AS SELECT
如果在一个平面文件中有输入数据是可用的,那么直接路径SQL*Loader方法是将这些输入数据加载至一个表格中最方便的手段。下面给出一个示例: $sqlldr sanjay/sanjay@proddb control=sales_history.ctl direct=true
如果在一个登台表中有输入数据,那么你可以使用带有APPEND提示的串行INSERT方法或者并行INSERT方法。
作为一个例子,请看一个名为SALES_HISTORY的未压缩登台表中的可用输入数据。用串行INSERT方法时,你可以使用以下的语句向已压缩表中插入数据: INSERT /*+ APPEND */
INTO SALES_HISTORY_COMP
SELECT * FROM SALES_HISTORY;
或者,你也可以用并行INSERT方法将数据由一个登台表转移到一个已压缩表中,如下所示: ALTER SESSION ENABLE PARALLEL DML;
INSERT /*+PARALLEL(SALES_HISTORY_COMP,4)*/
INTO SALES_HISTORY_COMP
SELECT * FROM SALES_HISTORY;
请注意,在使用并行INSERT方法时,你需要首先利用ALTER SESSION ENABLE PARALLEL DML命令为会话期来启动并行DML。
如果输入数据位于一个平面文件中,那么你也可以使用一个外部表,然后将这些数据插入到一个压缩表中,就像这些数据放在一个登台表中可用一样。(对外部表的讨论超出了本文的范围)。
- ››oracle 中 UPDATE nowait 的使用方法
- ››Oracle ORA-12560解决方法
- ››Oracle 10g RAC 常用维护命令
- ››Oracle如何在ASM中定位文件的分布
- ››Oracle的DBMS_RANDOM.STRING 的用法
- ››oracle 外部表导入时间日期类型数据,多字段导入
- ››Oracle中查找重复记录
- ››oracle修改用户登录密码
- ››Oracle创建删除用户、角色、表空间、导入导出等命...
- ››Oracle中登陆时报ORA-28000: the account is lock...
- ››Oracle数据库在配置文件中更改最大连接数
- ››Oracle中在pl/sql developer修改表的两种方式
更多精彩
赞助商链接