数据库新宠IMDB
文/花纯春
什么是IMDB?这里所讲的IMDB不是大家喜欢看的电影--The Internet Movie Database (IMDb),而是In-Memory Database--内存数据库。
IMDB有哪些优势呢?为什么说Ta是数据库新宠?在这里,我就讲讲在IMDB中的老大—TimesTen的IMDB。
在此引用一下现成的TimesTen的介绍:
TimesTen 源于1992年HP试验室,当时主要目的是针对电信网络应用,使用内存数据库技术进行一些深入研究,于1996年,由该团队核心人员成立独立运作公司,并在1996年发布TimesTen第一个商用版本(TimesTen2.0),2001年,产品中增加Cache Connect组件,以至产品可以和Oracle无缝集成,2005年由Oracle收购,到今天为止,该产品已经有15年历史,有多达11个主要的发布版本产生,在TimesTen被收购之前,TimesTen在全球已经有1500+的企业用户(比如:爱立信、CISCO、amdocs、JPMorgan、AVAYA等等)。
好了,看了上述我粘贴过来的介绍(别BS我,这介绍写得很好,所以,直接借用了)。
你已经发现众多牛B叉叉的企业,都选用了IMDB,似乎不用IMDB就不是全球一流的企业一样—是不是感觉有点像是进入上流社会的标签。
为什么一流企业都用IMDB?原因很多,我们还是来关心一下IMDB的主要吸引力吧—速度!正因为IMDB能在速度上远远的超越传统的数据库产品(比如:Oracle、SQL SERVER等),这些在各领域顶尖的企业才会选用Ta,以保持自己的顶尖地位。
在此,我再次引用其速度方面的介绍:
Oracle TimesTen In-Memory Database 通过将应用库嵌入到应用程序内部,从而消除了上下文切换和不必要的网络操作,大大提高了数据访问性能,并通过在内存中管理数据并相应地优化数据结构和访问算法,同传统的基于硬盘的关系数据库相比, 即使把要访问的数据从硬盘全部缓存到关系数据库的内存中(如Oracle SGA的数据缓存Data Buffer), 无论从响应性和吞吐率, timesten都有显著的提升。实时数据管理有两个性能维度 — 响应时间和并行吞吐率。使用 Oracle TimesTen In-Memory Database,读取一条数据库记录的事务将花费不到 9 微秒的时间(1 微秒等于 1 百万分之一秒),而更新或插入一条记录的事务将花费不到 28微秒的时间。因此,即使在拥有很少处理器的系统上,吞吐率也是以每秒上万到上十万事务计的。
上面提到的TimeTen IMDB前面是加了Oracle的,说明这与Oracle是有关系的,没错。在TimeTen的介绍中已经提到“2005年由Oracle收购”。重要的是由此可以顺理成章的实现TimeTen与Oracle等传统数据库应用的集成。
任何新的软件产品或技术的广泛应用开来,不可能抛开传统产品和既有投资,一定要与既有的资产无缝的连接和延续,实现一个平滑的过渡。TimeTen IMDB实现了与oracle无缝集成,无需编码即可实现与Oracle双向同步。
Cache Connect to Oracle 是 Oracle TimesTen In- Memory Database 的一个选项,它为位于应用程序层中的 Oracle 数据创建实时、可更新的高速缓存。免除了后端系统的计算负担,并支持反应灵敏且可伸缩的实时应用程序。Cache Connect to Oracle 能够将 Oracle 数据的子集(表或者表的某些列以及表的全部数据或者部分数据)加载到 TimesTen 中,无需任何编码就能够实现双向数据同步更新,从而实现和Oracle无缝集成。
为了不至于写成产品宣传手册,在此,我简单写一下TimeTen IMDB的其他亮点:
应用透明转换, 全面支持Oracle RAC集群技术--保证在任何RAC结点宕机, 您的应用会及时的被切换,不需要任何等待。
获得国际专利的MicroLogging®内存数据引擎--保护自身不受应用程序进程故障的影响。
我个人估计,IMDB在国内的电信、金融等对实时性要求高的行业,会首先得到使用。随着软硬件成本的下降,技术的进步,会逐渐推广到各个行业。
IMDB现在还不如传统数据库那样应用广泛,资料也不是很多,所以,大家还是很有希望作领跑者,更多的信息,可以在Oracle官方网站查询和学习:http://www.oracle.com/technology/global/cn/products/timesten/index.html
Oracle 数据库有很多新资料和试用产品现在可以在官网下载:
http://wmdata.com.cn/oracle/iwom-DBO/index.asp?frm=metababy