2009年3月13日星期五

Oracle中的Redo log能放到內存文件系統中來實現,高明!

前兩天看博文
http://bitirainy.spaces.live.com/Blog/cns!6AECD20E2E08EE3A!1238.entry
bitirainy就不用多說了把寫到

2月28日

老板的期望

老 板总期望听到让他兴奋的消息,这个难度不是一般的大。因为他的工作背景以及多年经验,在技术领域,目前公司还没有一个人比他更全面,这的确,给全技术部的 人出了很大的难题。去年让他兴奋的消息是我们把redo log给解了,现在正在分解应用和推广的过程中。 今年oracle拆分到mysql 和 搭建廉价存储 还算得上件大事。 老板一直念叨的事情是: 如何解决数据可以轻松随意增加或者减少属性的问题。 这事说远就大了,对象数据库 咱就别指望了,如何通过某种解决方案去解决这个问题,是一个大课题!"

下面有一個哥們留言跟我想的一樣
牛哥撰寫:
大师,方便透露下redo log 是啥问题??

我就一直納悶oracle redo log 問題是什麽問題呢?可以講oracle的性能提升?

今天看了另一個博文:
http://www.alidba.net/index.php/archives/183

不要过度迷信小型机


其中描述如下:
  • 在待测主机上安装好 Oracle 数据库,配置足够装载下所有数据的 SGA,将 Oracle 的 Redo 日志放在内存文件系统上。然后在我们技术能力范围内对 Oracle 进行相应的调优。
  • 使用我们真实的线上数据抽样(约10GB),Import 进入待测试主机上的 Oracle 数据库中。
  • 通过 PL/SQL 编写出模拟我们在线业务中最为典型的事务逻辑,然后使用C++编写多线程程序作为压力测试客户端。
  • 通过多台主机运行压力测试程序,平缓的给待测主机增加压力,待测主机的 CPU 利用率基本用完为止。
哦原來是這樣做的!
但是問題來了,1,如果redo log file 是放在memory中,那availablility 如何保證的呢?
2, memory file system用的那個呢?
第一個問題,我猜: 是不是 log是分group的,把每一個group中的一個文件放到 memory file system中,其他的還在disk中,同一組之間的 file同步是oracle 自己來實現的,而且是異步實現的?而且這個memory file system支持冗餘配置,可以實現類似raid1的功能?將memory file system 獨立出來,所有用到做redo log file 的都share的使用這個東西
再想一下還有啥可能?

第二個問題,我記得原來做squid 的時候,可以將squid中的那個存儲在內存中虛擬出來的一個file system中,這個就是一個memory file system,年代太久遠了,忘了,要查一下,不管怎么說,bitirainy高人啊!

記錄一下以後看有沒有機會補充

没有评论:

发表评论