iDDBS分布式数据库产品白皮书
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
iDDBS分布式数据库系统
产品白皮书
二〇一四年十一月
目录
1.引言 (3)
2.产品简介 (3)
3.产品业务能力 (4)
4.产品功能 (4)
4.1.产品功能架构 (4)
4.1.核心功能描述 (5)
5.产品特点与优势 (7)
5.1.产品特点 (7)
5.2.产品优势 (8)
6.产品性能 (10)
6.1.分布式数据库研发:内部集成测试 (10)
6.1.1.测试环境 (10)
6.1.2.测试摘要 (11)
6.2.性能总结 (12)
7.平台环境要求 (12)
软件运行环境 (13)
8.附录 (13)
1.引言
随着传统的数据库技术日趋成熟、计算机网络技术的飞速发展和应用范围的扩充,数据库应用已经普遍建立于计算机网络之上。这时集中式数据库系统表现出它的不足以及商业分布式方案代价大:
1)集中式处理,势必造成性能瓶颈;应用程序集中在一台计算机上运行,一旦该计算机发生故障,则整个系统受到影响,可靠性不高,集中式处理引起系统的规模和配置都不够灵活,系统的可扩展性差。
2)海量数据无法支撑,越来越多的互联网企业在使用着一些关系型数据库以及非关系型数据库,但目前很多产品目前没有一个很好数据库架构来解决海量数据存储以及高访问量问题,通常受限于软件、硬件、网络IO瓶颈,它们无法支撑更多的访问量以及数据容量,在目前互联网上很少有一种比较通用的解决手段。
3)一般企业在这方面没有投入大量成本去做相关的技术研究,通常会在客户端做相应的技术改造,而这些方案是在特定语言以及特定的软件框架下形成的,很难有一个通用型,跨语言、开发框架难以复用的问题,也对相关的运维人员(比如DBA)带来维护上面的困难。
随着信息技术的发展,人们对海量数据的存储要求更加迫切,对数据查询性能的要求也更加迫切,对数据的扩展能力和高可用也有着强烈的要求,因此分布数据库的落地成为了必然。
2.产品简介
iDDBS是一个支持海量数据的高性能分布式数据库系统,具有对客户端透明,负载均衡、高可用性、低成本等特性。iDDBS的核心部分是分布式数据库代理层软件。代理层是座落与Client和DB Server(s)之间的软件,其主要功能是执行SQL 解析、分库分表、实现读写分离、数据对称/非对称复制、路由表、执行并发SQL计算、切片SQL到多台数据库并合并回笼结果等功能,同时iDDBS能够有效的将分布在不同地域的数据库资源进行有效的整合,可以根据
业务需要随时扩展节点,满足数据的海量存储和高并发的数据访问需要,可以将业务分摊到不同的节点进行业务处理,而应用程序却不需要做改动处理。
3.产品业务能力
iDDBS分布式数据库系统结合了当前ETL理论、分布式数据库理论、中国移动详单查询业务,其业务能力架构如下图所示:
息处理路由转换负载均衡将各业务端的服务请求发送到各数据库节点。
数据库节点收到代理的请求信息,将处理的结果发送到代理服务器,代理服务器根据请求的sql信息,将返回的结果集进行合并处理,发送到服务请求端。
QoS和业务服务监控提供实时、灵活的SLA能力,满足对不同层次客户的个性化服务要求。
4.产品功能
4.1. 产品功能架构
iDDBS分布式数据库系统的功能架构如下图所示:
4.1. 核心功能描述
核心功能的简要描述如下表:
5.产品特点与优势5.1. 产品特点
支持TCP的服务访问通讯协议
支持事务处理机制
支持ddl操作语言在多节点执行
支持插入数据无默认字段也可以进行路由
支持一条sql插入多记录路由
支持批量提交
支持count查询结果集合并为一条记录
支持max查询结果集合并为一条记录
支持min查询结果集合并为一条记录
支持sum查询结果集合并为一条记录
支持order by 查询多节点结果排序
支持分页数据路由
支持动态代理参数修改
支持动态规则加载
支持临时新增服务节点和虚拟节点
支持临时可访问ip端变更
支持同类数据表路由切分
支持单个字段多节点distinct查询
支持单个字段多节点group by查询
支持存储过程路由
支持多用户隔离访问
5.2. 产品优势
路由管理
●采用读写分离策略,将需要执行的sql进行甄别,如果属于写策略就将sql发送
到对应的写接入端,如果属于读策略就将sql发送对应的读接入端,同时降低了服务器压力,实现读写分离策略。
●采用轮询策略,将业务请求循环的发送到业务节点,降低了单个节点的压力。
●采用高可用策略,在单个节点出现故障时能够切换到备用节点调用,保障业务
的正常运行。
●采用心跳监控策略,实时对调用节点进行监控,将出现故障的节点排除到可调
用节点之外,实现了数据库节点的高可用。
●路由规则的变化能够即时生效,保障业务能够顺利进行扩展。
消息管理
●采用NIO无阻塞通讯模式,业务节点不会由于节点请求频繁导致大量请求被
阻塞,保障业务能够不间断的执行。
●采用消息包进行拆分处理模式,对每次接受的最大数据量和发送的最大数据量
进行分包处理,保障业务不会因为占用大量内存而无法运行。
●支持消息节点的重构处理,将消息进行重构处理。
代理配置设管理
●采用定时任务检测,将最新更新的配置信息加载到服务中,通过定时任务加载
可以保障在不影响系统运行的情况下加入新的业务规则,供业务系统调用。●采用多线程处理机制,对业务请求进行处理,保障业务的高效运行。
●采用数据库连接池机制,保障业务不用频繁的连接数据库和关闭数据库,提高
系统性能。
●支持临时新增服务节点,保障业务的临时扩展
数据同步管理
●采用动态获取表机制,保障日期表能够进行同步处理。
●采用load机制,保障数据表高效的同步到数据表。
●采用集群处理机制,保障业务在业务在多个节点同时运行。
●采用组件开发思想,降低系统的耦合性,提高系统的扩展性。
结果集合并处理
支持order by 结果的重新排序。