English
    首页 | 产品专区 | 解决方案 | 成功案例 | 技术与服务 | 关于加瓦 | 广州中间件研究中心核心建设单位
 
  产品系列
 
 
主题图片
 
WPlus® S-JDBC加瓦数据库中间件
返回  

概述

什么是加瓦数据库中间件

  加瓦数据库中间件(以下简称为S-JDBC)是一种应用于访问数据库集群的中间件,它允许任何java应用通过JDBC驱动透明的访问数据库集群而不需要对应用、应用服务器和数据库系统作出改变。
  S-JDBC提供了灵活的体系架构,保证了数据库层具有良好的扩展性、可靠性和自动故障切换。当应用访问数据库时,S-JDBC将应用中的访问请求均衡到数据库集群中的各个镜像服务器。
  S-JDBC提供了被客户端使用的通用JDBC驱动。客户端通过这种通用JDBC驱动将SQL请求发送到S-JDBC,S-JDBC将请求分流到集群中的各个镜像数据库。S-JDBC可以适用于各种支持JDBC协议的关系数据库管理系统。

为什么要使用S-JDBC

  Java应用中经常会碰到数据库性能瓶颈或单点故障的情况。S-JDBC通过提供以下方式帮助解决这些问题:

  1. 增加数据库集群中的数据库节点及在多个节点间使用负载均衡技术保障数据库具有高性能和高可靠性
  2. S-JDBC提供了发生故障时镜像数据库间的透明切换
  3. 采用查询缓冲和透明的连接池技术提高性能
  4. 基于日志系统进行监控和分析
  5. 支持异质数据库组成的集群

功能

S-JDBC的工作原理

  S-JDBC灵活的体系架构保证了数据库层具有可扩展性、高可靠性和透明的故障切换。S-JDBC借鉴了RAIDb(廉价数据库冗余)的概念,数据库以镜像的方式分布在多个节点,S-JDBC把前端的查询语句分流到不同的节点。
S-JDBC提供了通用的JDBC驱动供客户端使用。通用JDBC驱动将前端的SQL请求发送到S-JDBC的控制器,控制器将这些请求分流到集群中的各个服务器上。S-JDBC适用于任何提供JDBC驱动的关系数据库管理系统,涵盖了几乎所有的开源和商业数据库。图1是S-JDBC原理图。

图1 S-JDBC原理图

  S-JDBC还支持由不同厂商提供的数据库建立的集群。S-JDBC提供的主要特性包括高性能、容错性和高可靠性,其它特性还包括监控、日志和查询结果缓冲。

S-JDBC的体系架构

  图2包含了S-JDBC的各种组件。客户端使用S-JDBC提供的通用JDBC驱动。S-JDBC控制器在客户端和数据库端之间扮演了一个代理人的角色。控制器为为客户端应用展现出一个被称作虚拟数据库的独立数据库视图,也就是说,后端的数据库集群对前端应用是透明的,前端应用只感觉到有一台数据库服务器在为自己提供服务。如图所示,一个控制器可以管理多个虚拟数据库。每个虚拟数据库拥有自己的请求管理者,请求管理者负责定义请求计划,缓冲和负载均衡策略。后端数据库管理组件通过数据库自带的JDBC驱动访问数据库。

图2: S-JDBC体系架构图

通用JDBC驱动

  S-JDBC提供的通用JDBC驱动的设计目的是取代专用JDBC驱动在应用中的使用。客户端应用只需要知道要使用的数据库中间件控制器的位置和数据库的名称。通用JDBC驱动继承了JDBC2.0的大多数接口并且实现了JDBC3.0的一些功能。S-JDBC支持存储过程,对于一些包含特殊存储过程的遗留系统,它也不需要改变任何代码。

负载均衡器(load balancer)

  S-JDBC按照不同用户对数据库集群的要求提供了多种负载均衡器。负载均衡器实现了数据库中间件的各种负载均衡策略。用户可以在“S-JDBC虚拟数据库配置文件中”指定负载均衡器。S-JDBC为不同的负载均衡器提供了不同的多播机制。例如,如果用户指定负载均衡器为RAIDb-1,S-JDBC将把数据写入集群中的所有数据库。

系统还原日志

  S-JDBC提供了还原日志,还原日志用来记录S-JDBC控制器在数据库两个检查点之间的写操作和事务操作。当用户重启瘫痪的数据库服务器时,可以从指定的检查点还原系统,还原日志将重新执行检查点之后的写操作和事务操作,一旦该数据库系统和集群中的其它数据库系统处于一致性状态时就可以正常使用了。


特点

  • 高可靠性

  S-JDBC控制器可以被镜像以避免控制器单点故障。S-JDBC提供透明的服务器故障切换,这种故障切换对于前端应用是不可见的,同时,它还提供了对数据库检查点和热还原的支持。

  • 高性能

  S-JDBC提供了多种一致性控制和负载均衡策略,它提供了连接池和细粒度的查询结果缓冲(支持更高的查询命中率)。S-JDBC改善了商业应用的响应时间和数据吞吐量。

  • 管理和监控

  S-JDBC为处于集群和网格环境下的数据库提供了图形化的管理平台,管理平台所基于的JMX技术可以使S-JDBC很方便的融入到现有的管理基础架构中。

  • 异质支持

  S-JDBC支持由异质数据库组成的集群,前提是这些数据库都要支持JDBC协议。S-JDBC通过快速的查询语句转换协调各数据库在SQL语法上的不同。

  • 开放的基础架构

  为了满足体系架构的要求或者用户的特殊需求,用户可以开发自定义的组件取代S-JDBC中的相应组件。

 
WPlus® mJoy 移动娱乐平台
WPlus® eAS 加瓦应用服务器
WPlus® i 加瓦应急指挥联动平台
         
Copyright 2006 W+ Technologies Limited All rights reserved
广州加瓦科技有限公司