一种分布式系统及根据该系统进行逐步扩容的方法

文档序号:6541928阅读:152来源:国知局
一种分布式系统及根据该系统进行逐步扩容的方法
【专利摘要】本发明提供一种逐步进行扩容的分布式系统及利用该系统进行逐步扩容的方法,该系统包括ETL写入数据模块、缓冲模块、数据重分布模块、数据索引分布表形成模块、调度模块以及多个数据库,所述多个数据库承载在多个服务器上,所述缓冲模块为ETL移动硬盘,所述缓冲模块以及多个数据库与所述ETL写入数据模块通讯连接;所述调度模块包括暂停单元、启动单元以及添加任务单元。解决了扩容后老节点不能使用的问题,从而降低了服务器的成本,增加了收益。一方面能够保证系统在白天的工作时间仍能够对外提供系统服务,另一方面保证了新旧节点都可以运行。
【专利说明】一种分布式系统及根据该系统进行逐步扩容的方法
【技术领域】
[0001]本发明涉及一种系统扩容方法,具体的涉及一种分布式系统及根据该系统进行逐步扩容的方法。
【背景技术】
[0002]大数据处理系统中,每个节点存储的数据量都很大,比如一个硬盘的实际数据量
2.8T。当系统处理能力不足,需要增加数据节点来提升处理能力的时候,如何将原有系统的数据进行重分布,部署到所有数据节点(老节点+新节点),是一个比较难的问题。目前大部分分布式数据系统都采用hash方式分布数据,当增加节点时,由系统使用hash方式进行重分布。但由于数据量巨大,往往24小时也无法完成,而大部分系统工作时间还需要对外提供服务,这个矛盾需要解决。某些产品,比如EMC的greenplum系统,在广东移动信令采集分析系统中,当节点要从10个节点扩充到50个节点时,没有办法做到这一点,只好使用新旧节点并行导入数据,最后的新系统只有40个节点,而不是50个节点。这个问题在从50个到100个的时候会更严重。

【发明内容】

[0003]本发明为解决上述提到的在数据处理系统中进行重新分布扩容存在的缺点,提供一种分布式系统以及根据该分布式系统进行逐步扩容法,能够逐步对系统进行扩容,一方面能够保证系统在白天的工作时间仍能够对外提供系统服务,另一方面保证了新旧节点都可以在系统中运行。
[0004]本发明提供一种逐步进行扩容的分布式系统,其包括ETL写入数据模块、缓冲模块、数据重分布模块、数据索引分布表形成模块、调度模块以及多个数据库,所述多个数据库承载在多个服务器上,所述缓冲模块为ETL移动硬盘,所述缓冲模块以及多个数据库与所述ETL写入数据模块通讯连接;所述调度模块包括暂停单元、启动单元以及添加任务单
J Li ο
[0005]具体的,一种根据上述分布式系统进行逐步扩容的方法,其包括以下步骤:
[0006]S1:在分布式系统的多个新的数据库产生后,根据多个新的新数据库的数量,数据索引分布表形成模块,生成新的数据索引分布表;
[0007]S2:所述暂停单元暂停ETL写入数据模块写入数据的操作,将文件保存至缓冲模块,所述添加任务单元将ETL写入数据的任务添加入任务队列;
[0008]S3:所述启动单元启动数据重分布模块,将数据按新的数据索引分布表进行分布;
[0009]S4:重新启动ETL写入数据模块,加速处理队列中ETL写入数据的任务;直至ETL写入数据完成后,重新启动在线查询任务。
[0010]优选的,数据索引分布表形成模块根据新数据库的数量,通过业务规则生成新的数据索引分布表。[0011]优选的,所述新的数据索引分布表将旧节点中的数据的30% -60%分布至新的节点中。
[0012]优选的,所述新的数据索引分布表将旧节点中的数据的50%分布至新的节点中。
[0013]优选的,所述添加任务单元包括选择单元以及命令单元,所述选择单元能够设定ETL写入数据的任务的优先级,所述命令单元根据任务的优先级选择任务执行的先后命令。
[0014]优选的,ETL写入数据的任务的优先级分为最高优先级、次优先级以及普通优先级。
[0015]本发明的优点如下所述:本发明采用分天逐步扩容法对系统进行扩容,扩容后老节点以及新节点都能够使用,解决了扩容后老节点不能使用的问题,从而降低了服务器的成本,增加了收益。大数据服务器的成本一般在5-15万元左右,按10万I台计算,当有20个老节点能被利用时,就可以节约200万元。并且,能够逐步对系统进行扩容,一方面能够保证系统在白天的工作时间仍能够对外提供系统服务,另一方面保证了新旧节点都可以在系统中运打。
【专利附图】

【附图说明】
[0016]图1为本发明提供的逐步进行扩容的分布式系统的结构示意图;
[0017]图2为本发明的调度模块的结构示意图;
[0018]图3为本发明的分布式系统逐步扩容法中扩容时的示意图。
【具体实施方式】
[0019]首先,对本发明中涉及到的一些术语进行解释说明:
[0020]数据库是一个面向主题的、集成的、不可更新的、随时间不断变化的数据集合,它用于支持企业或组织的决策分析处理。数据库通常用于存储企业的历史数据,并通过ETL过程,产生企业报表等。
[0021]ETL是指将分布的、异构数据源中的数据(例如关系数据、平面数据文件)等抽取到临时中间层后进行清洗、转换、集成,最后加载到数据库中,成为企业报表、联机分析处理、数据挖掘的基础。ETL任务一般在夜间运行,处理企业的大批量数据,形成关键运营指标(KPI, Key Performance Indication)装载到报表中。
[0022]数据源是指ETL运算某个任务所需要的源头数据,有时是生产数据库的数据,有时是另外一个ETL程序所产生的数据。
[0023]生产数据库是企业的日间营业活动所使用的数据库,是数据库最大的数据源。
[0024]下面结合附图以及具体实施例对本发明做进一步解释。
[0025]如图1所示,一种逐步进行扩容的分布式系统,其包括ETL写入数据模块1、缓冲模块2、数据重分布模块3、数据索引分布表形成模块4、调度模块5以及多个数据库6,多个数据库6承载在多个服务器上,缓冲模块2为ETL移动硬盘,缓冲模块2以及多个数据库6与ETL写入数据模块I通讯连接;如图2所示,调度模块5包括暂停单元50、启动单元51以及添加任务单元52。
[0026]如图3所示,一种根据上述的分布式系统进行逐步扩容的方法,其包括以下步骤:
[0027]S1:在分布式系统的新的数据库(以下也称为节点)产生后,数据索引分布表形成模块4根据新数据库的数量,生成新的数据索引分布表;
[0028]S2:暂停单元50暂停ETL写入数据模块I写入数据的操作,将文件保存至缓冲模块,添加任务单元52将ETL写入数据的任务添加入任务队列;
[0029]S3:启动单元51启动数据重分布模块3,将数据按新的数据索引分布表进行分布;ETL写入数据模块I找的新的节点位置,将数据存入;
[0030]S4:启动单元51重新启动ETL写入数据模块1,加速处理队列中ETL写入数据的任务;
[0031]S5:ETL写入数据完成后,启动单元51重新启动在线查询任务。
[0032]优选的,数据索引分布表形成模块4根据新数据库的数量,通过业务规则生成新的数据索引分布表。
[0033]优选的,新的数据索引分布表将旧节点中的数据的30% -60%分布至新的节点中。在本实施例中,新的数据索引分布表将旧节点中的数据的50%分布至新的节点中。如下表所示:
[0034]在分布式系统中,数据的分布往往是按hash值或者业务规则进行分布的。按hash值分布主要是通过数学算法实现,扩容的时候无法人为控制,导致扩容后老节点无法继续使用,增加了数据库的成本问题。在本发明中,按照业务规则生成新的数据索引分布表进行分布,在扩容时容易控制。
[0035]举例如下:将新的数据索引分布表将旧节点中的数据的50%分布至新的节点中。
[0036]假设数据按号码后两位进行数据分布,扩容前分布关系如下:
[0037]
【权利要求】
1.一种逐步进行扩容的分布式系统,其特征在于:其包括ETL写入数据模块、缓冲模块、数据重分布模块、数据索引分布表形成模块、调度模块以及多个数据库,所述多个数据库承载在多个服务器上,所述缓冲模块为ETL移动硬盘,所述缓冲模块以及多个数据库与所述ETL写入数据模块通讯连接;所述调度模块包括暂停单元、启动单元以及添加任务单J Li ο
2.一种分布式系统进行逐步扩容的方法,其特征在于:其包括以下步骤: 51:在分布式系统的多个新的数据库产生后,根据多个新的新数据库的数量,数据索引分布表形成模块,生成新的数据索引分布表; 52:所述暂停单元暂停ETL写入数据模块写入数据的操作,将文件保存至缓冲模块,所述添加任务单元将ETL写入数据的任务添加入任务队列; 53:所述启动单元启动数据重分布模块,将数据按新的数据索引分布表进行分布; 54:重新启动ETL写入数据模块,加速处理队列中ETL写入数据的任务;直至ETL写入数据完成后,启动在线查询任务。
3.根据权利要求2所述的逐步扩容的方法,其特征在于:数据索引分布表形成模块根据新数据库的数量,通过业务规则生成新的数据索引分布表。
4.根据权利要求3所述的逐步扩容的方法,其特征在于:所述新的数据索引分布表将旧节点中的数据的30% -60%分布至新的节点中。
5.根据权利要求4所述的逐步扩容的方法,其特征在于:所述新的数据索引分布表将旧节点中的数据的50%分布至新的节点中。
6.根据权利要求2所述的逐步扩容的方法,其特征在于:所述添加任务单元包括选择单元以及命令单元,所述选择单元能够设定ETL写入数据的任务的优先级,所述命令单元根据任务的优先级选择任务执行的先后命令。
7.根据权利要求6所述的逐步扩容的方法,其特征在于:ETL写入数据的任务的优先级分为最高优先级、次优先级以及普通优先级。
【文档编号】G06F17/30GK103944964SQ201410116840
【公开日】2014年7月23日 申请日期:2014年3月27日 优先权日:2014年3月27日
【发明者】李晓华 申请人:上海云数信息科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1