Chinaunix首页 | 论坛 | 博客
  • 博客访问: 11680289
  • 博文数量: 8065
  • 博客积分: 10002
  • 博客等级: 中将
  • 技术积分: 96708
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-16 17:06
文章分类

全部博文(8065)

文章存档

2008年(8065)

分类: 服务器与存储

2008-07-16 10:40:34

介绍11g对LOB类型的新增功能。




Oracle的11g中,OracleLOB类型的功能得到了很大程度上的增强,有功能方面的,有性能方面的,还有易用性方面的。

首先Oracle11g的sqlplus已经可以支持BLOB的显示了。在10g及以前版本,是无法在sqlplus里面显示BLOB的,必须要想办法转化为RAW,十分不方便,现在11g的sqlplus已经可以支持LOB类型的显示了。

这个功能完全是在sqlplus客户端工具上完成的,只要sqlplus是11g以上版本,就可以显示blob,和Oracle的server版本没有关系。

$ sqlplus yangtk/yangtk@ytk102

SQL*Plus: Release 11.1.0.6.0 - Production on Mon Aug 20 18:02:36 2007

Copyright (c) 1982, 2007, Oracle. All rights reserved.


Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining options

SQL> desc t_blob
Name Null? Type
----------------------------------------- -------- -------------------------
ID NUMBER
OTHER BLOB

SQL> COL OTHER FORMAT A50
SQL> SELECT * FROM T_BLOB;

ID OTHER
---------- --------------------------------------------------
1 ABC12340D30392BE398F

SQL>

上面是一个11g的sqlplus客户端,连接到10g的server,执行的查询,下面看看用10g的sqlplus连接11g的server:

E:>sqlplus yangtk/yangtk@ora11g

SQL*Plus: Release 10.2.0.1.0 - Production on 星期一 8月 20 15:38:58 2007

Copyright (c) 1982, 2005, Oracle. All rights reserved.

连接到:
Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 - Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

SQL> SELECT * FROM T_BLOB;
SP2-0678: 列或属性类型无法通过 SQL*Plus 显示

在sqlplus中显示BLOB内容只是LOB类型增强的一小部分。Oracle在服务器端对LOB增加很多的功能。

首先LOB类型的容量从4G增加到了最大128T,如果说原来的4G的容量偏小的话,那么128T足够存放任何信息了。

目前数据库容量超过10T的屈指可数,128T几乎可以将任何一个数据库完全的存放在一条记录的一个字段中了。

由于是在笔记本上虚拟出来的11g环境,没有足够的空间来测试这个功能了。

Oracle11g增加了LOB的新存储参数SECUREFILE,使用这个参数可以设置LOB的一些新功能,比如压缩compress、加密encript以及duplicate功能。

设置压缩功能可以对LOB字段进行单独的压缩,这个压缩功能独立于表和索引的压缩。

加密功能可以避免对LOB字段进行明文存放。

DUPLICATE功能使得Oracle可以避免存储相同的LOB数据,对于完全相同的LOB,Oracle实际只存储一份。

除了上面三个新增功能外,Oracle对RETENTION也进行了增强。在11g中对于RETENTION功能进行了细化,增加了MAX/MIN/AUTO/NONE四个关键字。使得用户可以设置LOB类型的读一致性和闪回功能。

11g在nocache和cache reads语句中的logging语句中新增了一个FILESYSTEM_LINK_LOGGING,这种方式的LOGGING只记录元数据的变化。

使用SECUREFILE还可以提高LOB处理的性能。FAST BULK DATA TRANSFER可以提高大数据量访问的性能。LOB PREFETCH可以提高常访问的小数据量LOB的性能。
阅读(270) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~