红联Linux门户
Linux帮助

[好东东]分享Linux平台下的实时内存数据库eXtremeDB

发布时间:2006-03-01 10:30:06来源:红联作者:catchingyou
香港创建伟业公司成功采用eXtremeDB构建新一代无线网络基础设施
香港移动通信基础设施的供货商Prime Creation Technology Ltd.,采用McObject 公司的eXtremeDB嵌入内存数据库,为移动网络运营商和无线应用服务商,提供基于Linux和Web技术的新一代实时呼叫中心解决方案。
该系统利用eXtremeDB HA框架为电信基础设施提供高达(99.999%)的可用性。在系统中,eXtremeDB为用户以及路由信息的Oracle数据库提供一个实时的基于Linux的缓存。Prime Creation公司的创造性架构利用Web服务以及HTTP/SOAP协议将eXtremeDB与后端Oracle同步。
“内存式高速缓存提供了几近零的响应滞后,这是基于磁盘的Oracle数据库查询程序所永远也达不到的。” Prime Creation 公司的技术总监Michael Tso认为:“采用eXtremeDB作为高速缓存给我们提供了两个领域的最好选择:实时内存性能和McObject公司数据库管理系统的可靠性及数据一致性。”
Tso先生说,Prime Creation在众多的实时数据库中最终选择eXtremeDB,主要因为eXtremeDB HA的扩展。EXtremeDB HA能使同一硬件设备内的或网络分布式设备中的多个eXtremeDB数据库得到同步。万一硬件或软件失效,eXtremeDB时间感知的两阶段提交协议使得在零拷贝延时的情况下瞬间完成故障恢复。
Tso先生说,性能、可靠性以及成本效率决定了选择Linux。Prime Creation希望应用程序有高呼叫业务量。对于缓存应用而言,Intel公司的Xeon CPU和Red Hat Linux企业服务器2.1的组合比其他平台更为经济。
过程控制应用、电信和网络设备,以及其它需要容错功能的系统,构成了在Linux上开发嵌入式软件的快速增长的市场。这些任务关键型的应用需要处理越来越大量的复杂数据,因而需要又快又轻的数据库来满足他们对可靠性的需求。
McObject公司的eXtremeDB内存式数据库系统通过除去磁盘I/O操作大大的提高了性能。此外,eXtremeDB从零设计除去了缓存、数据传输和复制、不需要磁盘型数据库的内置的数据恢复功能等他额外开销。该架构的这些优点使内存式数据库的性能远胜于传统数据库,即使在RAM中采用基于磁盘的系统。(更多内容请参见McObject公司www.mcobject.com/downloads.php的白皮书部分的报告:”主存储器和RAM-Disk数据库:基于Linux的测试”。)

eXtremeDB产品系列包括:
eXtremeDB Standrd Editon(标准版):
通过多任务和多线程支持局部存储器或共享存储器;
eXtremeHA Edition(高可用性版本)
建立在高时效性的二级执行协议之上,保证了主数据库和副数据库之间的一致性。在独立的硬件条件下,通过标准或外围通信协议完全支持多个同步数据库。
eXtremeTransactionLog(交易日志版本):
eXtremeDB新增稳定的eXtremeDB交易日志。在交易日志下,文档信息的改变都被记录到交易日志里。因此。当系统软硬件发生故障eXtremeDB运行程序可以借助它来恢复数据库。
eXtremeWS(Web Server):
eXtremeWS与eXtremeDB无缝集成,使您可以通过Web的方式访问、使用数据库。
eXtremeDB伸缩性非常强,数据管理的具体指标如下:
 数据库指标  数据类型

 每个数据库最多记录数:2,147,483,647  1,2,4,8有符号/无符号整数
 最多索引:32,767  日期,时间
 每个数据库中最多最多表格数:32,767  浮点,双字节
 表格中最多字段数或矢量数:32,767  字符型(定长)
 每个索引最多字段数:32,767  字符串(变长)
 矢量中最多单元数:32,767  定尺寸数组
 内存需求:最小60K  变长矢量
 同时最多打开数据库数:16  结构(任何程度的嵌入)
 每数据库最多同时连接数:64  BLOB
 自动索引(递增)
 用户定义识别符及指示

作为内存式实时数据库,eXtremeDB有良好的跨平台特性。在多种操作系统软件平台、处理器硬件平台上,eXtremeDB都能已超小的时间、空间开销为您管理实时数据。包括-
支持数据类型:
■ 1, 2, 4, 8有符号/无符号整数
■ enum
■ 浮点
■ 日期时间
■ char字符(固定长度), string字符 (variable length)
■ 固定大小数组
■ 变长矢量
■ structs (任何嵌入层次)
■ autoid (auto-increment)
■ BLOB
■ 用户定义识别符及参考
嵌入式平台
? VxWorks 5.4, 5.5
? QNX 4, QNX 6.x
? Various real-time Linux distributions
? LynxOS
? RTXC Quardos, RTXC 3.2
? Microsoft Windows embedded platforms
? Windows Real-Time Extensions
? Bare bones boards (no operating system is required)
 桌面与服务器平台
? Sun Solaris 8 and Solaris 9
? HP-UX 11.x
? Linux distributions
? Classic Windows (98/NT/2000/XP)
 开发环境
? gnu toolchain (gcc 2.95 and higher)
? Tornado 2.0 and 2.2 (GNU and Diab Compilers)
? QNX Momentics IDE (C, C++, Embedded C++)
? Metrowerks CodeWarrior IDE (various platforms)
? Microsoft Visual Studio (C/C++, .NET)


eXtremeDB-HA高可用性版本

eXtremeDB-HA是eXtremeDB的容错版本,HA以超小的尺寸和卓越的性能为eXtremeDB 提供高可用性。许多容错性系统都采用异步在数据库发生改变后再给备份数据库实例的被动机械备份方法。实际上,这样需要很长的响应时间,阻碍了系统的恢复,并有交易丢失的危险。显然,这在许多实时性较强的嵌入式系统中是绝不允许的。相反,eXtremeDB-HA运行采用了高实效性的备份方案。它能够在单一的交易之间随时更新数据信息,严格的数据处理时间保证了能够及时从主备份到副备份之间传输数据信息。这样的系统恢复过程就大大加快。一般的硬件配置如下:
■ 多任务(在统一硬件条件下的多任务或多线程)
■ 高速串口间通信的条件下支持2个或更多平台
■ 通过商业通信设备和诸如RS-485/RS-232,CAN或以太网将单独的Space地址相连。
■ 通过外围通信设备或协议将2个或多个控制器相连。

McObject开发的eXtremeDB-HA备份机制是建立在高实效性且严格的二级执行协议之上的。从而保证了主数据库和同步备份数据库之间的一致性。与eXtremeDB-HA运行系统连接的HA接口决定运用软件的配置建立,维护及中断eXtremeDB-HA众多连接途径。高实效性的HA传输协议触发通信和探测中断通信。高可用性应用程序结构:
包括eXtremeDB-HA在内的高可用性应用程序结构源码提供主副备份在交易间通过用户级通信渠道交换数据信息的采集机制,通过执行eXtremeDB核心库外的通信路径:HA应用程序结构在应用程序和eXtremeDB数据库编译码中就相对独立,并且在编译时提供灵活的测试及相互转换。高可用性应用结构为了能够更好地对容错的数据库解决方案进行开发部署,它提供演示数据库和如何与应用程序相集成的可用源码。这里包含建立在实时TCP/IP,UDP/IP,Named Pipes,Qnet等传输器通信路径的实例。此外,这一结构还提供可配置使用于任何一种路径且HA支持的应用程序原版。原版将能在开发商们安装后立即运行eXtremeDB -HA.
重要性能:
■ 在不丢失数据或中断操作的情况下恢复软硬件故障。
■ 高实效性的二级执行协议。
■ 轻松调用C,C++,APIs.
■ 通信路径和协议相对独立。
■ 支持热备份。
■ 备份与主数据库程序相一致。
■ 通过查询备份平衡负载。
■ 支持多个备份,随时可以备份。




eXtremeSQL
与McObject公司此前发布的eXtremeDB内存式实时数据库一样,eXtremeSQL也是纯内存式数据库,剔除了基于文件系统的数据库所必有的文件I/O操作、磁盘I/O操作、缓存机制、进程间通信等各种不确定性因素,以超小的时间、空间资源开销提供高速、确定、可靠、强壮并支持SQL的数据管理方案。全新的编程接口的eXtreme DB在诸如银行,证券交易等众多关键实时性领域广泛应用。eXtremeSQL也成为起主导作用的数据库语言。它建立在强壮的eXtremeDB和基于RAM SQL优化器之上,能够动态地处理海量动态SQL查询。
EXtremeSQL具有一下特色:
EXtremeSQL与eXtremeDB无缝集成,您可以在同一应用程序里使用功能强大的eXtremeDB API。EXtremeSQL无论实在多平台还是在性能集成方面都能给您带来颇多的方便.
§ 符合SQL-89标准--eXtremeSQL实现了ANSI SQL-89的大部分标准,包括INSERT、UPDATE、 DELETE及SELECT等语句;   
§ 面向eXtremeDB进行扩展--eXtremeSQL支持eXtremeDB的结构、数组、矢量及基于OID的表(类)查询优化;   
§ 与eXtremeDB无缝兼容--eXtremeSQL与eXtremeDB标准版、eXtremeDB高可用性(HA)增强版、eXtremeDB事务日志增强版等各个版本的eXtremeDB系统完全兼容。这样,用户不仅通过eXtremeDB获得接近于内存访问速度的数据管理性能;而且可以通过eXtremeSQL以SQL的语法访问eXtremeDB的数据库;   
§ 提供实用工具--eXtremeSQL同时还提供一些实用工具,如交互式SQL程序eXQL。eXQL可以用于测试SQL语句,也是eXtremeSQL实现的一个示例工程。eXQL还能够对文本文件中预置的eXtremeSQL语句进行批处理.

创建一个最优化的SQL执行语句是一项复杂而富有挑战性的工作。SQL优化器分析以供数据库SQL查询并从数据库路径中选择出最优的检索方法。查询的优化与数据库的分布密切联系。在通常情况下,优化器通过数据库所提供的统计情况取样,然后再采集统计信息,最终计算出所选执行路径的开销。显然,建立优化机制与CPU密切相关且具有不可预测性。优化查询时间因查询而异,执行命令也随着符号数据的改变二改变。对于嵌入式系统而言,实时性始终是关键,而eXtremeSQL对其有了可靠的保证。另外,eXtremeSQL优化器使得应用程序指定它们各自的执行路径。比如,优化器不在查询中记录表格:子目录(joins)按顺序执行,表格以查询来区分。查询优化中的重要规则:
■ 如有需要,您可以使用索引。
■ 每个表格都赋予其在FORM中相对应的索引。
■ 检索词被分为混合词或多组分类词。与此,以更小索引来访问表格关系通常最优校验。
■ 子查询执行路径可通过校验子查询表达式的相关性而得以最优化。仅在子查询表达式查询的结果引用封闭范围字段的情况下,子查询的结果才会被保存和重新计算。


eXtremeWS使您用过Web方式访问和使用数据
嵌入式网络服务器是网络设备的一项革新技术.它为嵌入式设备提供高效性,便捷性已在诸如通讯设备,工业控制,测试工具及消费性电子等领域已被广泛采用.嵌入式网络服务器使用户可以通过任何规格的浏览器来管理和控制他们的嵌入式设备.在超文本传输协议(HTTP)问世以前,嵌入式设备通过面板,默认终端或通过现成的协议与用户连接的设备来进行控制.目标码的较大尺寸就要求程序员在设备上启用其他的功能,同时,还需常常使用用户图形界面(GUI).网络服务器与嵌入式设备的无缝集成剔除了目标编程,还为嵌入式网络服务器提供更多的选择.网络化的设备管理比原有的管理发案提供了更多的便捷.

它的具体优点如下:
■ 无需分布用户软件且设备的管理平台不需在管理平台间相互移动.
■ 嵌入式网络接口设备几乎是触手可及.
■ 网络接口易于开发和维护.
■ 浏览器与服务器的连接有保障.
■ 在绝大多数情况下,在运行机上容易模拟设备的各项功能,可以运用嵌入式软件一起开发用户接口.

目前市场上诸多的服务器是为众多的商业化服务器来设计的,主要满足公共网络的需要.eg.商业化服务器应该为众多的用户提供实时的服务,支持实际用户,提供远程维护及搜索引擎,提供加密套接字协议层(SSL)支持及以简单网络管理协议(SNMP)合作.嵌入式网络服务器可以满足众多的需求:
■ 超小内存空间占取CPU资源极少.这是一切网络设备以及资源紧凑设备的共同要求.
■ 支持非磁盘式及文件系统设备:嵌入式网络服务器能够为没有文件系统的设备提供支持.嵌入式设备通常没有磁盘或其他永久存储器.与设备通过网络进行控制一样,这些设备需要编译统计网页,并与嵌入式网络服务器相连接.
■ 易与嵌入式软件集成:这一特点大大缩短了产品的上市时间.McObject公司提供的网络服务器源码大大缩短了产品的研发周期.
■ 可配置性.
■ 便携性:目前,软硬件寿命有着较大的差距.因此,包括网络服务器在内的软件设备的各个组件提供的高便携性非常满足用户们的需要.
eXtremeWS的性能特征:
McObject公司的嵌入式网络服务器是专门为嵌入式设备量身设计的.它的性能无比强壮,并可以与eXtremeDB无缝集成.它可以为智能化设备提供诸多别出心裁的解决方案.

下载中心:http://www.leadingtek.com.cn/download/default.htm
文章评论

共有 1 条评论

  1. shareman 于 2006-03-06 17:23:29发表:

    楼上的eXtremeDB这是一个极其富有创意的实时数据管理技术呀!数据直接存在内存中以供应用程序使用,想必这就是一大创新吧,电科院的PMU电力的电力监测系统就使用了它,真的不得不顶呀!!!!