What should be considered if you want to use oracle in-memory


1.Which side shall we  enable in-memory,primary or standby.

In-memory can be enabled on both primary and standby side.So if you have ADG and it already provide query for PRD, you may want to enable it on standby,you can enable it on both primary and standby at the same time with different in-memory settings(Eg. different tables).

2.What's the architecture of your database.

It is a RAC database or it is a single instance database.If it is a RAC database,it is much more complex to set in-memory.

3.What's OS the memory size,how about SGA+PGA+ASM memory usage.What's the OS free memory when the database running normal.

You will know how many memory we can used for in-memory.

4.What's the table priority of load order

Some critical table may need to load into memory first,if there is no enough in-memory other low priority table will not be loaded. So you can set sum table size bigger than in-memory size,but it is not advised.

5.What's the table load type and compress type.

Some tables may never be modified when you load it into in-memory while some others may be updated,deleted,inserted.They should have different load type and compress type.So you can see the table in the in-memory can be updated or deleted or inserted but it should not be frequent.When we do DML on the tables in the in-memory,database will record special log for it , flush it onto disks and reload it into memory if the DML rows number trigger the threshold.

6.What's the sum size of the tables will be loaded.

Compute the memory will be used in the in-memory.The actual size of the table is much bigger than it used in the in-memory, they will be compressed when loaded.You can use procedure to compute the real size used in the in-memory.

7.How many CPU_COUNT  does the machine have.

You can set processes to load data from disk into in-memory according to CPU_COUNT.This is important because when you restart the database and it will be opened after all the tables should be loaded into in-memory have been done.It will cost 10 minutes or longer if you set a improper value.

8.Will fast start tablespace needed ?

If you  put huge tables into in-memory, like 2T.It will cost much time when you first startup the database even you set processes properly.So you may need fast start tablespace to save the data in the in-memory before shutdown the database.The database will read data in the tablespace into in-memory to save time.

10.How to load data at RAC environment.

There many choices to load data when you used multiple database instances.You can load different portions into different instances by rowid or partition or subpartition , load the same table copy into different instance, load the table to special instance use service.

11.Some important parameter

In-memory is shared-nothing in RAC instances.That is to say the query process will not read other instances' in-memory data except the query issue a  parallel query on other instance.So you should set parallel_degree_policy=AUTO and parallel_force_local=FALSE when you have to read in-memory data from other instances to get correct result. If you do not set the parameters the database will read the data which stored in other instance in-memory from disks.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值