DBScale大数据处理中间件产品解决方案。

DBScale大数据处理中间件

大数据处理中间件

DBScale是一款专门用来处理关系型数据库水平扩展(scaleout)的软件,它可以把多个独立的数据库实例组合成一个虚拟的数据库,以供客户端程序使用;客户端程序可以像使用一个独立的真实数据库实例一样去使用该DBScale虚拟数据库,而无需关心真实的数据库分布。当数据量、负载增大时,DBScale可以无限制的动态扩展数据库节点,以满足业务发展需要。

整体架构如下图所示:

DBScale并不是一个关系型数据库软件,而是一个用于数据库分布式水平扩展的中间件。如图所示,除客户端应用服务器外,整个架构主要分为两部分:存储计算节点部分:运行数据库软件,比如MySQL,图右侧的“BackendDBCluster”部分。该部分由多个独立、完整的数据库实例组成,不同实例可以运行在不同的物理机器,也可以相同;负责真实数据的存储和计算。每个数据库实例和单机数据库没有区别。

控制节点部分:运行DBScale软件,图中间的“DBScale”部分。DBScale位于客户端和数据库之间,所有客户端的请求和数据库返回的结果集,都要经过DBScale,DBScale负责调度分发客户端请求到真实的数据库实例,同时合并数据库实例返回的结果集、再返回给客户端。整个后端数据库集群对于客户端就是一个虚拟的单机数据库,完全透明。

主要特点如下:

DBScale不存储永久数据,只负责SQL请求调度和结果集的处理;数据存储在后端真实数据库。采用share-nothing架构。后端数据库没有共享存储,都是用本地存储。

采用sharding思想。数据按照行为单位水平分片,存储于后端数据库节点,每个节点只存储部分数据,整体才是一份完整的数据。每个节点(数据库实例)保存一份数据,意味着整个数据库实例数据量大大减小,索引、缓存等的利用率将大大提高,从而提高性能。

每个节点负责处理部分请求,锁的效率、事务提交等处理效率,都将提高,从而大大提高并发和整体吞吐量。

对数据库客户端程序完全透明。DBScale基于后端数据库协议进行SQL分析处理,支持后端数据库原有的客户端命令、API、JDBC等各种语言的连接驱动,原有的程序、ETL、BI工具等,都无需改动。

客户端语言无要求。由于DBScale的透明性,要后端数据库支持的开发语言,DBScale都支持。

在应用服务器或者真实数据库服务器上,无需安装额外的软件。

DBScale目前仅支持MySQL作为后端数据库,并将尽快支持PostgreSQL。

相关新闻

联系我们

联系我们

QQ:951076433

在线咨询:点击这里给我发消息

邮件:951076433@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

分享本页
返回顶部