Chinaunix首页 | 论坛 | 博客
  • 博客访问: 5226644
  • 博文数量: 1696
  • 博客积分: 10870
  • 博客等级: 上将
  • 技术积分: 18357
  • 用 户 组: 普通用户
  • 注册时间: 2007-03-30 15:16
文章分类
文章存档

2017年(1)

2016年(1)

2015年(1)

2013年(1)

2012年(43)

2011年(17)

2010年(828)

2009年(568)

2008年(185)

2007年(51)

分类: 数据库开发技术

2008-10-07 09:57:59

Oralce内存数据库TimesTen简介

中兴通讯重庆研究所 游波

关键词:内存数据库,TimesTen,数据库,一致性,可靠性,复制,锁

文章摘要:

   近期和Oracle技术工程师作了一次关于TimesTenOracle10GOracle9i的交流。本文对TimesTen作一简要介绍,主要在于各项目组在开发设计中可以考虑使用比较成熟的商业内存数据库系统。TimesTen除具有一般商业内存数据库的特点外,还具有同Oracle数据库绑定的功能。

 

 

1.      内存数据库简介

在重研所多个项目中都有内存数据库的应用,但重研所应用的内存数据库有多个版本,没有统一的版本,目前以FastDb占主流。普遍存在以下问题,访问方式不符合SQL92规范,不支持客户服务器模式,没有完整的API,可靠性不高,和数据库之间的数据互操作困难等等。

近期和Oracle技术工程师作了一次关于TimesTenOracle10GOracle9i的交流。在交流中,Oracle的工程师比较详细地介绍了Oracle的内存数据库TimesTen。因此在与Oracle技术工程师交流过程中,根据重研所的需求情况特别关注了一下TimesTen

ORACLETimes Ten公司620日在上海宣布,双方已就甲骨文收购Times Ten正式达成最终协议。Times Ten公司是一家私有的实时数据管理软件供应商,主要为电信、网络、证券交易等行业提供基础架构软件,并用这种软件进行事件管理、交易和数据的工作。其在全球的客户包括Amdocs、亚斯贝克通信公司、爱立信、JP摩根、NEC、诺基亚、斯普林特、美国航空等。这家公司目前支持的系统包括实时计费系统、股票交易系统、呼叫中心系统、航线运营系统等。ORACLE收购Times Ten标志 Oracle进入内存数据库领域。

 

 

2.      Times Ten简介

Times Ten官方定义:TimesTen®/Cache (Cache) is a real-time dynamic data caching system. It includes TimesTen’s in-memory database and data exchange technologies. Together, they enable applications to combine the real-time performance of TimesTen with the large storage capacity of an RDBMS.

 

 

Times Ten 特点:

l         符合RDBMS标准的独立内存数据库服务

l         支持SQL92

l         支持 ODBC & JDBC

l         高性能

l         可以作为Oracle数据库的前端Cache,目前不支持其他数据库

l         支持本地的高速访问和网络访问方式

l         可靠性高。支持完整日志,支持镜像复制功能。

l         不是开源代码,需要较高费用

l         目前不支持存储过程和触发器

 

 

Times Ten Oracle 数据库的比较

系统特点

Oracle

TimesTen

架构

磁盘为中心

内存为中心

驱动方式

人机交互

计算机到计算机

实施方式

单独的服务器

可以嵌入应用

响应速度

毫秒级

微秒到毫秒

数据容量

数十TG

数十G

管理

DBA和系统管理

不需要特别的进行管理

 

 

3.      Times Ten体系结构

并发管理:

l         支持多线程访问。

l         支持不同的事务隔离级别:Read committed Serializable

l         支持不同级别的锁控制:库级,表级,行级

l         支持拴:用于保护内部数据结构

l         自动死锁检测和解除

l         完整的事务控制机制,包括commit/rollback

l         数据一致性:数据库总是保持数据一致状态,并且在掉电等情况下能够基于磁盘(日志等)恢复一致性。

l         可靠性:通过logCheckpoint file保证可靠性

 

 

 

 

日志:

l         支持自动检查点

l         支持人工强制检查点

l         支持完整日志机制。

l         支持日志写入硬盘,写入内存,支持不写日志以提高效率。

 

 

镜像复制:

l         灵活的配置:支持多种形式

l         快速可靠:不是基于数据复制,而是基于日志。

l         支持同步或异步模式

l         支持镜像之间的自恢复

l         支持故障时,应用访问自动快速安全切换到备用

 

 

oracle数据库缓存:

l         TimesTen Cache中表符合关系模型

l         Cache 提供只读,自动刷新数据库数据,自动刷入数据库,手工刷入数据库等多种数据同步机制。

l         SQL语句传递功能:对于不在内存数据库中表的访问,timesten传递到数据库执行

 

 

SQL开发

l         支持SQL92的函数

l         基于代价的查询优化机制

l         完善的索引方式

l         支持分不事务处理

l         支持ODBC2.5 JDBC3.0

l         支持cc++

l         支持命令交互方式ttlsql

l         支持事件触发可以部分替代触发器

 

 

安全控制

l         可以开启和关闭安全访问控制

l         7种访问权限控制:Instance Administrator, Connect, CreateDatastore, Select, Write, DDL, and Admin

l         支持SQL GRANT/REVOKE方式授权

 

 

4.      性能

以下是timesten的性能测试数据

 

 

5.      应用案例

上图是一个预付费(实时计费)的案例。Timesten用于实时计价和出话单,为了保证可靠性采用镜像(复制)技术。
阅读(1839) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~