Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1406171
  • 博文数量: 556
  • 博客积分: 12626
  • 博客等级: 上将
  • 技术积分: 5799
  • 用 户 组: 普通用户
  • 注册时间: 2006-01-11 15:56
个人简介

从事IT基础架构多年,发现自己原来更合适去当老师……喜欢关注新鲜事物,不仅限于IT领域。

文章分类

全部博文(556)

文章存档

2019年(6)

2018年(15)

2017年(17)

2016年(11)

2015年(2)

2014年(2)

2013年(36)

2012年(54)

2011年(100)

2010年(41)

2009年(72)

2008年(14)

2007年(82)

2006年(104)

分类:

2007-07-04 18:27:48

    最近突然想看点什么了,于是就拿timesten试试了,没准儿这是以后的趋势呢。timesten是oracle推出的一种关系型内存数据库,随着现在系统规模越来越大,应用变得越来越慢,而硬件越来越先进,于是内存数据库应运而生了。其实说白了就是把数据都放到内存里,速度当然就会快,呵呵。今天开始,有空就看一点点,希望能坚持把这个高明白吧。
 
    首先,按照oracle的说法,使用传统基于disk的RDBMS时,即使将数据都拿到内存里,性能的提高仍然会受到逻辑编码,索引设计以及数据访问机制的影响。而timesten简化了很多东西,运算法则、结构等等,可以更直接的路由到数据,总之,假设数据完全放到内存里,脱离磁盘的话,复杂的东西必然就变得简单了。
    具体的一点的说,使用传统rdbms访问buffer pool的数据时,首先通过与server process建立IPC连接访问RDBMS的查询优化器(Query Optimizer),之后通过一个hash函数以及线形的搜索来找到访问页的位置,之后将其copy到private buffer,在通过IPC将数据返回给应用,整个过程的性能开销都浪费在了IPC上。而timesten简化了这些,去除了IPC的开销,通过直接访问timesten找到数据内存中的地址,之后将数据返回给应用。过程简化了,速度自然应该可以变快,不过是否真的快很多,我现在还不知道:)
 
    timesten支持ODBC和JDBC,而且比其它数据库系统支持要好,要快。支持SQL-92标准,不过听说对oracle本身的pl/sql反倒不支持了,不知道真假,以后再说了。它同样支持用户帐号等分级的访问控制管理。timesten同样使用的是cost-based优化器,不过灵敏度更高,因为不需要考虑disk访问的开销问题。Read-committed仍然是timesten的确实隔离级别,当然serializable也是支持的。timesten通过Transaction Log API(XLA)来监控更新操作,timesten的有一种被称为fuzzy的checkpoint,可以不通过log file来进行恢复,当然额外的需要维护连个checkpoint文件。数据老化分为两种类型,基于时间戳和基于使用(LRU)。timesten可以通过Cache Connect来连接oracle数据库实现数据的同步。
 
   今天先写这么多吧,能安心看点东西还是挺幸福的~
阅读(3627) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~