Oracle数据库数据恢复、性能优化

找回密码
注册
搜索
热搜: 活动 交友 discuz
发新帖

96

积分

0

好友

4

主题
1#
发表于 2012-7-26 11:40:15 | 查看: 6779| 回复: 10
db:10.2.0.5 rac
os:linux 64

有一张表只有几行,但是被频繁的update,导致数据库热快。表的行数,和字段数不多,都在一个数据块上。
我怎么去优化这张表?有什么思路?
还有我这有一个思路,就是把每一条放在一个block上,这个怎么操作??
2#
发表于 2012-7-27 11:27:27
这个表是否允许多节点访问,还是固定在单节点上的?

表中的数据是否是多Session之间共享?

回复 只看该作者 道具 举报

3#
发表于 2012-7-27 13:03:29

回复 2# 的帖子

点节点访问
多Session之间共享

回复 只看该作者 道具 举报

4#
发表于 2012-7-27 13:58:07
可以将整张表Cache到内存中,不过你这种情况,即便一个块,一行也不会有性能改善。因为你无法控制这个块,只在一个节点上使用

回复 只看该作者 道具 举报

5#
发表于 2012-7-27 14:25:15

回复 4# 的帖子

我的思路很简单,就是大量的update,一是有热块,二是会有事物锁等待。 一个块一行 虽然IO返回高了,至少能让热快缓解。

回复 只看该作者 道具 举报

6#
发表于 2012-7-27 14:40:11
gc这块的事件等待会很高

回复 只看该作者 道具 举报

7#
发表于 2012-7-27 15:02:13

回复 6# 的帖子

我这张表只是一个应用在访问,而且也只是在一个节点访问这张表。这些都控制好了。想这样的情况还有什么优化思路?

回复 只看该作者 道具 举报

8#
发表于 2012-7-27 15:15:10
根据预计的并发数,设置initrans参数,还有把表cache到内存中

回复 只看该作者 道具 举报

9#
发表于 2012-7-27 15:52:36
分散记录到不同数据块
1, 使用非标准block表空间,如blocksize=2K
2, 使用较高的pctfree

回复 只看该作者 道具 举报

10#
发表于 2012-7-27 16:08:19
你这个表只有几行数据。可以考虑使用list分区。使用小块 大的pctfree也行

create table ttt (c1 int,c2 int)
partition by list (c1)
(partition p1 values(1),
partition p2 values(2),
partition p3 values(3)
);

insert into ttt select 1,2 from dual;
insert into ttt select 2,2 from dual;
insert into ttt select 3,2 from dual;
commit;

select DBMS_ROWID.ROWID_OBJECT(rowid) "OBJECT",DBMS_ROWID.ROWID_RELATIVE_FNO(rowid) "FILE",DBMS_ROWID.ROWID_BLOCK_NUMBER(rowid) "BLOCK",DBMS_ROWID.ROWID_ROW_NUMBER(rowid) "ROW",rowid from ttt;   
OBJECT       FILE      BLOCK        ROW ROWID
---------- ---------- ---------- ---------- ------------------
     79334          4     122677          0 AAATXmAAEAAAd81AAA
     79335          4     123701          0 AAATXnAAEAAAeM1AAA
     79336          4     124725          0 AAATXoAAEAAAec1AAA

[ 本帖最后由 dla001 于 2012-7-27 16:09 编辑 ]

回复 只看该作者 道具 举报

11#
发表于 2012-7-31 09:21:46
用list 分区处理吧。每条放在一个分区上

回复 只看该作者 道具 举报

您需要登录后才可以回帖 登录 | 注册

QQ|手机版|Archiver|Oracle数据库数据恢复、性能优化

GMT+8, 2024-12-25 13:03 , Processed in 0.048044 second(s), 21 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部
TEL/電話+86 13764045638
Email service@parnassusdata.com
QQ 47079569