CN103984737A - 一种基于计算相关度的多数据中心数据布局优化方法 - Google Patents
一种基于计算相关度的多数据中心数据布局优化方法 Download PDFInfo
- Publication number
- CN103984737A CN103984737A CN201410218596.2A CN201410218596A CN103984737A CN 103984737 A CN103984737 A CN 103984737A CN 201410218596 A CN201410218596 A CN 201410218596A CN 103984737 A CN103984737 A CN 103984737A
- Authority
- CN
- China
- Prior art keywords
- data
- calculating
- data set
- data center
- layout
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/217—Database tuning
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种基于计算相关度的多数据中心数据布局优化方法,根据执行计算处理数据集的情况,生成计算集和数据集集合的访问关联矩阵,计算出任意两个数据集之间的计算相关度,生成对应的计算相关度矩阵;计算每个数据中心的基本容量,定义布局关联矩阵,根据计算相关度部署数据集。本发明通过构建访问关联矩阵和布局矩阵,给出计算相关度的具体数学表示,根据建立的计算相关度矩阵,以低复杂度的方法实现数据布局,并将新数据和中间数据动态部署至合适的数据中心,可以有效减少跨数据中心数据调度,提高系统的访问性能。
Description
技术领域
本发明涉及分布式数据存储与管理领域,尤其涉及一种基于计算相关度的多数据中心数据布局优化方法。
背景技术
数据爆炸使得信息社会已进入大数据时代。大数据的数据量庞大,蕴藏着丰富多样的信息,带来巨大经济效益和社会效益的同时也面临着严峻的技术挑战。大数据“3V”特性(即容量大、更新速度快、种类多种多样)使得传统的数据库管理已无法满足大数据存储与管理的要求,云计算作为目前非常重要的一种分布式网络计算平台,被视为是实现大数据非常有效的存储、管理和分析平台,是大数据管理与分析的一种经济有效的解决方案。
然而,在云计算的分布式多数据中心环境下,如何将这些数据部署到合适的数据中心就成为了一个关键性问题。大数据是复杂多样的,包括结构化数据,半结构化数据,非结构化数据,其中非结构化数据的比重愈来愈大,例如Web上的文字,文档,图片和视频等以及流数据都是非结构化数据。多种异构数据混合在一起,共同描述对象,因此传统的按照数据的本身属性来组织和部署数据已经是不可行的,需要在数据本身属性的基础上,按照数据的“社会属性”,即对数据的需求,以“按需存储,按需利用”的原则组织和部署数据。同时,处理大数据的计算是复杂的和数据密集的,大数据的数据集都是GB甚至TB级的,当执行一个计算需要处理不同数据存储在不同的数据中心时,数据调度成为一个无可忽视的巨大挑战。在当前有限的网络带宽资源下,在数据中心之间调度数据的代价是非常昂贵的,而调度计算的代价则非常低,因此大数据布局的基本思想是将计算需要同时处理的数据集部署在同一数据中心内,当计算调度至该数据中心时,所有的数据处理操作都在本地完成。
目前针对分布式系统的数据布局已经做了许多相关研究。传统的数据布局策略分为两类:动态的和静态的。动态数据布局方法在每一次访问请求之后都会潜在的更新布局。当数据量较少,例如缓存,动态数据布局是有效的。然而当分布式文件系统中数据量巨大,动态策略带来的系统负担和代价则过于庞大。静态数据布局假设访问统计是不变的,因此数据布局策略只需要计算一次就可以持续工作很长时间。LPT算法是著名的静态数据布局启发式算法,之后SP和BP算法都是在LPT基础上提出的静态数据布局算法,能够最小化跨节点的负载方差,达到理想的全局负载平衡。但这些布局策略都是基于这样一种假设:数据的访问是独立的,虽然简化了问题,但是不符合实际情况,并且不适用于数据密集型计算。
对于数据密集型计算,执行一个计算可能需要处理多个数据集,执行多个计算也可能需要处理同一个数据集。当执行某个计算常常需要共同处理几个数据集,则认为这几个数据集之间是相关的。当大规模并发计算需要跨数据中心执行时,数据调度会消耗很多的资源和时间,这是系统无法承受的。因此,更多的研究根据数据相关性部署数据,以期减少甚至避免数据中心间的数据调度次数。Doraimani等基于相关性将文件分组。Fedak等将数据相关性记为一个数据属性“affinity”,由用户预定义。然而,数据的存储位置是由云计算系统决定的,数据存储和管理对用户是透明的,用户无法获悉数据的存储位置,因此用户定义数据相关性很明显是不切实际的。Kosar等针对分布式计算系统提出一种数据布局方法,确保可靠有效的传输数据,但是主要考虑如何有效调度数据,无法减少整体的调度次数。Zheng等分别针对跨数据中心数据传输、数据依赖性和全局负载均衡,提出数据布局策略,但是数据依赖性及其破坏程度没有给出具体的定量表示,也没有考虑数据集和数据中心的差异,对负载均衡的实际效果会有影响,同时遗传编码效率与合理度对算法复杂度影响严重。副本策略也是减少数据中心间的数据迁移的有效手段,目前有大量针对副本策略的研究。但是大数据的数据量已经非常庞大,不合理的副本方法会进一步带来巨大的存储空间开销,有些并不常用的数据集副本造成系统太多不必要的冗余,严重影响存储效率和空间利用率。
综合分析,目前的多数据中心数据布局优化方法存在着以下缺陷:单一的静态布局方法无法实现数据布局优化,单一的动态布局方法复杂度过高,并且现存方法缺乏对数据间相关度以具体地和动态地描述,对分布式数据密集型计算产生的数据调度问题无能为力或者效果甚微,数据布局优化方法的实现复杂度较高。
发明内容
本发明要解决的技术问题在于针对现有数据布局优化方法中的缺陷和不足,提供一种基于计算相关度的多数据中心数据布局优化方法。
本发明技术方案提供的一种基于计算相关度的多数据中心数据布局优化方法,包括以下步骤:
步骤S1,对于分布式多数据中心存储系统,依据一定时期内系统日志的历史访问数据记录,分析得到系统所有计算单位时间内的执行频次及计算所处理的数据集集合;
步骤S2,根据执行计算处理数据集的情况,生成计算集C和数据集集合D的访问关联矩阵Α如下,
设依据一定时期内分布式多数据中心存储系统中系统日志记录的历史访问数据信息,分析得到系统所有计算构成的计算集单位时间内的执行频次及计算所处理的数据集集合其中,Sk表示第k个数据中心,l为数据中心的总数;ci表示第i个计算,m为计算的总数,μi为计算ci的单位时间内的执行频次;dj表示第j个数据集,n为数据集的总数;
依据组合论定义计算与数据集的访问因子αij如下。
则构建计算集C与数据集集合D的访问关联矩阵Α,
Α=[αij]m×n
步骤S3,根据访问关联矩阵Α,计算出任意两个数据集之间的计算相关度并生成对应的计算相关度矩阵W=[ωjh]n×n;
步骤S4,设每个数据中心Sk的容量为sk,计算每个数据中心Sk的基本容量sk×δk,δk为比值参数;
步骤S5,定义布局关联矩阵Β如下,
依据组合论定义数据集dj与数据中心Sk的布局因子βjk如下,
则构建数据集集合D与数据中心S的布局关联矩阵Β,
Β=[βjk]n×l
步骤S6,根据计算相关度ωjh部署数据集,包括以下子步骤,
步骤S6-1,初始化,包括将所有数据中心Sk置空,布局关联矩阵Β为全0矩阵,令k=1;
步骤S6-2,遍历计算相关度矩阵W主对角线元素,将ωjj最大的数据集dj部署在数据中心Sk,布局关联矩阵Β对应位置元素βjk置为1;
步骤S6-3,遍历相关度矩阵W一侧的所有元素,选择与数据集dj之间计算相关度ωjh最大的数据集dh部署在数据中心Sk,布局关联矩阵Β对应位置元素βhk置为1;
步骤S6-4,迭代进行操作如下,直到超出当前数据中心Sk的基本容量,
计算选择与已部署的各数据集计算相关度之和最大的数据集dx,并根据基本容量sk×δk计算剩余容量undep_sk;设选择出的所有的数据集dx大小之和为Σεx,根据Σεx,在剩余容量undep_sk的限制内部署数据集dx至数据中心Sk,βxk=1,超出限制的数据集dx部署在数据中心Sk+1,βx(k+1)=1;
步骤S6-5,计算相关度矩阵W中已部署数据集对应元素置为0,令k=k+1,返回S6-2循环处理,直到所有的数据集布局完成。
而且,所述步骤S6-4包括以下子步骤,
步骤S6-4-1,执行计算公式得到对应最大的dx后,计算判断dx是否唯一,是则进入步骤S6-4-2,否则进入步骤S6-4-3;
步骤S6-4-2,判断是否满足容量判定公式Σεx≤undep_sk,满足则将此唯一的dx部署至数据中心Sk,βxk=1,返回执行S6-4-1,不满足则部署在数据中心Sk+1,βx(k+1)=1,进入步骤S6-5;
步骤S6-4-3,判断是否满足容量判定公式Σεx≤undep_sk,满足则将所有dx部署至数据中心Sk,βxk=1,返回执行S6-4-1,不满足则根据剩余容量undep_sk和每个dx的大小,选择尽可能数量最多的dx部署在数据中心Sk,相应βxk=1,其他的dx部署在数据中心Sk+1,βx(k+1)=1,进入步骤S6-5。
而且,对写入分布式多数据中心存储系统的新数据集df,更新访问关联矩阵Α,计算df与分布式多数据中心存储系统中每个数据中心Sk的计算相关度如下,
在不超出数据中心的基本容量限制下,选择最大的数据中心部署数据集df,并更新布局关联矩阵Β。
而且,对于执行计算产生的中间数据,先暂存在执行该计算的本地数据中心,如需要长期存储则将相应数据集则作为写入分布式多数据中心存储系统的新数据集df进行处理。
本发明方法基于计算相关度优化数据布局,能够动态实现数据的按需存储,同时由于计算单位时间执行频次是相对平稳的,又克服了传统动态数据布局方法在每一次请求之后的潜在布局更新行为。发明给出计算相关度的具体表达,以最小化跨数据中心数据调度为基本目标,能够优化分布式数据密集型计算产生的数据调度问题,以简单的算法实现复杂的数据布局优化问题。本发明具有以下优点和积极效果:
(1)本发明提出数据间计算相关度的概念和具体表达,以最小化跨数据中心数据调度为基本目标,能够优化分布式数据密集型计算产生的数据调度问题,方法实现复杂度低。
(2)本发明将计算相关度、计算处理数据和数据布局矩阵化表示,使得动态管理数据布局的复杂度和难度大大降低,布局发生改变,计算相关度发生改变,只需要修改矩阵中的元素值即可。
(3)本发明可以适用于定期布局优化或者手动优化等多种情形,对于细粒度划分的海量数据集具有良好的性能。经过大量实验证明,本发明的方法可以得到近似最优的合理解,同时保证很低的计算时间复杂度,可以应用在实际的数据布局优化中。
附图说明
图1是本发明实施例提供的多数据中心数据布局优化方法总体流程图。
图2是本发明实施例提供的基于计算相关度数据布局实施流程图。
图3是本发明实施例中固定数据中心个数,不同数据集数量所对应的跨数据中心调度次数示意图。
图4是本发明实施例中固定数据中心个数,发明方法在不同数据集数量的时间复杂度示意图。
图5是本发明实施例中固定数据集个数,不同数据中心所对应的跨数据中心调度次数示意图。
图6是本发明实施例中固定数据集个数,发明方法在不同数据中心数量的时间复杂度示意图。
具体实施方式
数据布局优化能够使数据布局更加接近实际需求,有效实现系统资源的合理与充分利用,降低分布式多数据中心存储系统数据组织与管理的难度和对系统造成的压力,提高系统整体访问性能和管理效率。本发明的技术方案提供一种基于计算相关度的多数据中心数据布局优化方法,针对大规模分布式多数据中心存储系统的海量数据存储布局优化问题,以及数据密集型计算的执行效率问题,根据数据密集型计算的“数据共同”现象定义数据集之间的计算相关度,在不考虑数据副本的前提下实现海量数据集无重复布局,将计算相关度高的数据集尽可能部署在同一个数据中心,当计算调度至该数据中心,绝大多数的数据处理在本地完成,减少跨数据中心数据调度次数。一个数据集单位时间内被计算处理的次数是一个定值,数据集之间计算相关度越高,在同一数据中心中被计算同时处理的次数越多,则单位时间内需要被调度至其他数据中心计算处理的次数就越少,相应地,跨数据中心数据调度的次数就越少。
本发明应用在面向复杂应用的数字城市数据存储与访问平台,实施例的平台由20台DellPowerEdge T410服务器组成,每台服务器是主频2.13GHz的Intel Xeon E5606CPU,16GDDR3内存和3TB SATA硬盘。每台服务器作为一个数据中心,每个数据中心部署VMare和Hadoop分布式文件系统。大规模复杂应用是由Flex4.5开发,用户可以通过用户接口提交数据和请求执行计算。
下面结合附图及实施例,对本发明进行进一步详细说明。应当理解,本发明旨在为解决跨数据中心数据调度提供一种指导性优化方法,所述发明内容及具体实施例仅用以解释本发明,并不用于限定本发明。
本发明实施例提供一种基于计算相关度的多数据中心数据布局优化方法,总体流程如附图1,包括如下步骤:
步骤S1:对于分布式多数据中心存储系统,依据一定时期内系统日志的历史访问数据记录,分析得到系统所有计算单位时间内的执行频次及计算所处理的数据集集合。系统日志一般保存为profile记录。具体实施时,本领域技术人员可以自行根据需要选取历史记录的时期。
步骤S2:根据执行计算处理数据集的情况,生成访问因子αij,并生成计算集C和数据集集合D的访问关联矩阵Α。
实施例构建计算与数据集的访问关联矩阵Α,具体实现方式如下:
设依据一定时期内分布式多数据中心存储系统中profile记录的历史访问数据信息,分析得到系统所有计算构成的计算集单位时间内的执行频次及计算所处理的数据集集合其中,Sk表示第k个数据中心,l为数据中心的总数;ci表示第i个计算,m为计算的总数,μi为计算ci的单位时间内的执行频次;dj表示第j个数据集,n为数据集的总数。
依据组合论定义计算与数据集的访问因子αij,其公式为:
构建计算集C与数据集集合D的访问关联矩阵Α,反映执行计算ci是否处理数据集dj,
Α=[αij]m×n
分析访问关联矩阵Α,发现一些计算执行时常常会处理同一个数据集。多个计算执行时频繁地共同处理多个数据集,则认为这些数据集之间具有相关性。共同处理数据集的计算越多,且这些计算单位时间内执行频次越高,数据集之间的相关性越强。
步骤S3:根据访问关联矩阵Α,利用公式(1)计算出任意两个数据集之间的计算相关度ωjh,并生成对应的计算相关度矩阵W。
实施例构建计算相关度矩阵W,具体实现方式如下:
依据同时处理数据集对的计算平均执行频次定义数据集间计算相关度表达。对任一数据集dj∈D,将这些需要处理数据集dj的计算所构成计算集记为j=1,2,…,n。采用同时处理数据集对的计算平均执行次数来衡量数据集之间的相关度,称之为计算相关度,数据集dj和dh之间的相关度记为ωjh,其公式为:
其中,ωhj为数据集dh和dj之间的相关度,为需要处理数据集dh的计算所构成计算集,h=1,2,…,n。
根据定义的访问关联矩阵Α,计算相关度写成为:
根据公式(1)即可计算出任意两个数据集dj和dh之间的计算相关度;
构建计算相关度矩阵W,矩阵W是n×n的关系矩阵,反映在计算动态执行时系统中数据集之间的相互关系。
W=[ωjh]n×n
步骤S4:计算每个数据中心Sk的基本容量sk×δk。
实施例计算每个数据中心的基本容量实现方式为,设每个数据中心Sk的容量为sk,则其基本容量为sk×δk。其中,比值参数δk是取值在0和1之间的变量,具体实施时本领域技术人员可自行预设取值。分布式的云计算系统是局部动态的,某些时刻会有新数据写入,在执行各种计算的过程中也会有中间数据产生,这些中间数据可能只是临时存储,在被其他计算使用之后就会删除,但仍需要一些存储空间。对数据中心Sk,需要合理预留一部分存储空间,存储的数据量不能超过基本容量sk×δk。
步骤S5:定义布局关联矩阵Β。通过监视和管理矩阵Β即可实现对数据集布局的管理和分析,实时监控数据布局情况。当数据集的布局发生改变,可相应调整矩阵Β的对应位置元素:布局因子βjk。
实施例构建数据集集合D与分布式多数据中心存储系统S的布局关联矩阵Β,具体实现方式如下:
依据组合论定义数据集dj与数据中心Sk的布局因子βjk,当数据集dj部署在数据中心Sk,即dj∈Sk,βjk=1,当数据集dj未部署在数据中心Sk,即,βkj=0,其公式为:
构建数据集集合D与数据中心S的布局关联矩阵Β,反映数据集集合D在分布式多数据中心存储系统S的布局情况,
Β=[βjk]n×l
依据该布局关联矩阵实时监控数据布局情况。通过监视和管理矩阵Β即可实现对数据集布局的管理和分析,当数据集布局发生改变,只需要相应调整矩阵Β,使得动态管理数据布局的复杂度和难度大大降低。针对无重复地数据布局,矩阵Β中任一行向量元素和为1,
且
其中表示数据中心Sk中数据集的个数,εj为数据集dj的大小。可根据这两个布局关联矩阵的约束条件实时检测和校验布局是否合理。
步骤S6:根据计算相关度ωjh部署数据集。
实施例依据计算相关度ωjh部署数据集时,因为计算相关度矩阵W是n×n的对称矩阵,只需要遍历对角线及其一侧的元素即可,降低遍历时间。对角线元素ωjj为单位时间内计算使用数据集dj的总次数。包括以下子步骤,
依据计算相关度矩阵W,优先遍历计算相关度矩阵W主对角线元素,最大值对应数据集dj部署在第一个数据中心S1;
遍历相关度矩阵W一侧的所有元素,选择ωjh最大的元素所对应的数据集dh(dh可能不唯一)部署在该数据中心S1;
未部署的各数据集分别与已部署在该数据中心S1的各数据集计算相关度之和最大的数据集dx(dx可能不唯一)部署在该数据中心S1,其中,βj1为数据集dj与数据中心S1的布局因子;对数据中心Sk,则计算公式如下,
迭代进行该子步骤,直到该数据中心S1达到基本容量s1×δ1;
针对数据中心S2返回重复以上子步骤,…直到所有数据集部署至数据中心,满足各数据中心存储的数据量均不超过其基本容量sk×δk。
具体实施时,可采用以下流程实现:
S6-1:初始化,包括将所有数据中心Sk置空,布局关联矩阵Β为全0矩阵,如附图2中①,令k=1。
S6-2:优先遍历计算主对角线元素,ωjj最大的数据集dj部署在数据中心Sk,矩阵Β对应位置元素βjk置为1。例如,k=1时,ωjj最大的数据集dj部署在第一个数据中心S1,矩阵Β对应位置元素βj1置为1。
如附图2中②,具体流程可设计为遍历计算相关度矩阵W主对角线元素,当ωjj最大时对应数据集dj部署在数据中心Sk,βjk=1,然后进入S6-3;否则返回继续遍历。
S6-3:遍历相关度矩阵W一侧的所有元素,选择与数据集dj之间计算相关度ωjh最大的数据集dh(dh可能不唯一)部署在数据中心Sk,矩阵Β对应位置元素βhk置为1。例如,k=1时,选择与数据集dj计算相关度ωjh最大的数据集dh(dh可能不唯一)部署在数据中心S1,矩阵Β对应位置元素βh1置为1。
如附图2中③,具体流程可设计为遍历计算相关度矩阵W一侧元素,当ωjh最大时对应数据集dh部署在数据中心Sk,βhk=1,然后进入S6-4;否则返回继续遍历。
S6-4:迭代进行:计算公式(3),选择与已部署的各数据集计算相关度之和最大的数据集dx(dx可能不唯一),并根据基本容量sk×δk计算剩余容量undep_sk
设选择出的所有的数据集dx大小之和为Σεx,判断容量判定公式
Σεx≤undep_sk (5)
参考该容量判定公式,部署数据集,直到超出当前数据中心Sk的基本容量。
可计算得到对应最大的dx,然后判断是否满足公式Σεx≤undep_sk,是则将dx部署在数据中心Sk,βxk=1,并返回迭代进行计算判断,即将此次部署的dx加入已部署的各数据集,用剩下的未部署的各数据集和新的已部署的各数据集再次根据公式(3)、(5)进行选择部署;直到判断为否,则部署到下一数据中心,即对应最大的dx部署在数据中心Sk+1,βx(k+1)=1,矩阵W中已部署数据集对应的元素置为0。特殊地,当dx不唯一且剩余容量不足以将所有的目标数据集dx都部署至该数据中心,此时是超出当前数据中心Sk的基本容量的情况,则根据剩余容量undep_sk和每个dx的大小,选择尽可能数量多的目标数据集dx部署在数据中心Sk,βxk=1,其它的dx部署在数据中心Sk+1,βx(k+1)=1。
如附图2中④,具体流程可设计为:
S6-4-1,执行计算公式(3),得到对应最大的dx后,计算判断dx是否唯一,是则进入S6-4-2,否则进入S6-4-3;
S6-4-2,判断是否满足容量判定公式(5),满足则将此唯一的dx部署至数据中心Sk,βxk=1,返回执行S6-4-1,不满足则部署在数据中心Sk+1,βx(k+1)=1,进入步骤S6-5;
S6-4-3,判断是否满足容量判定公式(5),满足则将所有dx部署至数据中心Sk,βxk=1,返回执行S6-4-1,不满足则根据剩余容量undep_sk和每个dx的大小,选择尽可能数量最多的dx部署在数据中心Sk,相应βxk=1,其他的dx部署在数据中心Sk+1,βx(k+1)=1,进入步骤S6-5。
S6-5:计算相关度矩阵W中已部署数据集对应元素置为0,令k=k+1,返回S6-2循环处理,使得所有的数据集全部部署在各数据中心,且各数据中心存储的数据量均不超过其基本容量sk×δk,即每个数据中心Sk(k=1,2,…,l)都满足公式(2)。如附图2中的⑤进行循环处理,直到所有的数据集布局完成。
分布式多数据中心存储系统是局部动态的,某些时刻会有新数据写入,在执行各种计算的过程中也会有中间数据产生。执行S1~S6后,可以实时监测这些数据,并完成动态部署。这样以复杂度较低、系统资源占用较少的方法实现布局优化,有助于减少跨数据中心数据调度,提高系统的访问性能。
实施例动态部署系统新数据集。分布式多数据中心存储系统是局部动态的,某些时刻会有新数据写入,在执行各种计算的过程中也会有中间数据产生。系统实时监测这些数据,并完成动态部署。当有写入系统的新数据集df时,包括以下步骤,
对写入分布式多数据中心存储系统的新数据集df,计算df与系统中每个数据中心Sk的动态计算相关度,Sk∈S,即数据集df与部署在数据中心Sk的所有数据集动态计算相关度之和,其公式为:
在不超出数据中心的基本容量限制下,选择最大的数据中心部署数据集df,并更新布局关联矩阵Β。
具体实施时,可采用以下方式实现:
对写入系统的新数据集df,按照步骤S2的方式更新矩阵Α,根据公式(6)计算df与系统中每个数据中心Sk的计算相关度将其部署在最大的数据中心Sk。若该数据中心存储数据容量已经逼近基本容量sk×δk,则将数据集df部署在次最大动态计算相关度的数据中心,以此类推,并按照步骤S5的定义更新布局关联矩阵Β。
对于执行计算产生的中间数据,先暂存在执行该计算的本地数据中心,一些中间数据经过一段时间之后即会删除,一些需要长期存储的中间数据则对相应数据集按照以上对新写入的数据集的布局方式,将其存储在合适的数据中心。
在长时间的进行局部动态部署后,可以重新执行步骤S1~S6,进行全局整理。具体实施是,可以预设时间间隔,每经过一段时期间隔则执行S1~S6,然后配合局部动态数据部署,实现高效率低复杂度低消耗的布局优化。
为便于说明本发明效果起见,图3是本发明实施例中固定数据中心个数,不同数据集数量所对应的跨数据中心调度次数示意图,对比了本发明方法、随机布局、计算布局三种情况;图4是本发明实施例中固定数据中心个数,发明方法在不同数据集数量的时间复杂度示意图;图5是本发明实施例中固定数据集个数,不同数据中心所对应的跨数据中心调度次数示意图,对比了本发明方法、随机布局、计算布局三种情况;图6是本发明实施例中固定数据集个数,发明方法在不同数据中心数量的时间复杂度示意图。本发明实施例在单位时间内随机执行30个测试计算1250次。首先在固定10个数据中心上运行,当数据集不断增加(从1000增加到5000),跨数据中心数据调度次数只是小幅度增加,相比随机布局和计算属性布局,数据调度次数的优势是明显的(附图3),且算法的时间复杂度也非常低,随数据集数量的增加,算法执行时间所表明的时间复杂度依然是可以接受的(附图4)。当实施例固定2000个数据集,改变数据中心的个数(从5增加到20),跨数据中心数据调度次数同样小幅度增加,相比随机布局和计算属性布局,优势同样明显(附图5),且算法的时间复杂度基本上稳定在1.8s左右(附图6)。因此本发明在海量数据布局优化中具有很好的实用性。
本文中所描述的具体实施例仅仅是对本发明精神作举例说明。本发明所属技术领域的技术人员可以对所描述的具体实施做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权利要求书所定义的范围。
Claims (4)
1.一种基于计算相关度的多数据中心数据布局优化方法,其特征在于,包括以下步骤:
步骤S1,对于分布式多数据中心存储系统,依据一定时期内系统日志的历史访问数据记录,分析得到系统所有计算单位时间内的执行频次及计算所处理的数据集集合;
步骤S2,根据执行计算处理数据集的情况,生成计算集C和数据集集合D的访问关联矩阵A如下,
设依据一定时期内分布式多数据中心存储系统中系统日志记录的历史访问数据信息,分析得到系统所有计算构成的计算集单位时间内的执行频次及计算所处理的数据集集合其中,Sk表示第k个数据中心,l为数据中心的总数;ci表示第i个计算,m为计算的总数,μi为计算ci的单位时间内的执行频次;dj表示第j个数据集,n为数据集的总数;
依据组合论定义计算与数据集的访问因子αij如下,
则构建计算集C与数据集集合D的访问关联矩阵Α,
Α=[αij]m×n
步骤S3,根据访问关联矩阵Α,计算出任意两个数据集之间的计算相关度并生成对应的计算相关度矩阵W=[ωjh]n×n;
步骤S4,设每个数据中心Sk的容量为sk,计算每个数据中心Sk的基本容量sk×δk,δk为比值参数;
步骤S5,定义布局关联矩阵Β如下,
依据组合论定义数据集dj与数据中心Sk的布局因子βjk如下,
则构建数据集集合D与数据中心S的布局关联矩阵Β,
Β=[βjk]n×l
步骤S6,根据计算相关度ωjh部署数据集,包括以下子步骤,
步骤S6-1,初始化,包括将所有数据中心Sk置空,布局关联矩阵Β为全0矩阵,令k=1;
步骤S6-2,遍历计算相关度矩阵W主对角线元素,将ωjj最大的数据集dj部署在数据中心Sk,布局关联矩阵Β对应位置元素βjk置为1;
步骤S6-3,遍历相关度矩阵W一侧的所有元素,选择与数据集dj之间计算相关度ωjh最大的数据集dh部署在数据中心Sk,布局关联矩阵Β对应位置元素βhk置为1;
步骤S6-4,迭代进行操作如下,直到超出当前数据中心Sk的基本容量,
计算选择与已部署的各数据集计算相关度之和最大的数据集dx,并根据基本容量sk×δk计算剩余容量undep_sk;设选择出的所有的数据集dx大小之和为Σεx,根据Σεx,在剩余容量undep_sk的限制内部署数据集dx至数据中心Sk,βxk=1,超出限制的数据集dx部署在数据中心Sk+1,βx(k+1)=1;
步骤S6-5,计算相关度矩阵W中已部署数据集对应元素置为0,令k=k+1,返回S6-2循环处理,直到所有的数据集布局完成。
2.根据权利要求1所述基于计算相关度的多数据中心数据布局优化方法,其特征在于:所述步骤S6-4包括以下子步骤,
步骤S6-4-1,执行计算公式得到对应最大的dx后,计算判断dx是否唯一,是则进入步骤S6-4-2,否则进入步骤S6-4-3;
步骤S6-4-2,判断是否满足容量判定公式Σεx≤undep_sk,满足则将此唯一的dx部署至数据中心Sk,βxk=1,返回执行S6-4-1,不满足则部署在数据中心Sk+1,βx(k+1)=1,进入步骤S6-5;
步骤S6-4-3,判断是否满足容量判定公式Σεx≤undep_sk,满足则将所有dx部署至数据中心Sk,βxk=1,返回执行S6-4-1,不满足则根据剩余容量undep_sk和每个dx的大小,选择尽可能数量最多的dx部署在数据中心Sk,相应βxk=1,其他的dx部署在数据中心Sk+1,βx(k+1)=1,进入步骤S6-5。
3.根据权利要求1或2所述基于计算相关度的多数据中心数据布局优化方法,其特征在于:对写入分布式多数据中心存储系统的新数据集df,更新访问关联矩阵Α,计算df与分布式多数据中心存储系统中每个数据中心Sk的计算相关度如下,
在不超出数据中心的基本容量限制下,选择最大的数据中心部署数据集df,并更新布局关联矩阵Β。
4.根据权利要求3所述基于计算相关度的多数据中心数据布局优化方法,其特征在于:对于执行计算产生的中间数据,先暂存在执行该计算的本地数据中心,如需要长期存储则将相应数据集则作为写入分布式多数据中心存储系统的新数据集df进行处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410218596.2A CN103984737B (zh) | 2014-05-22 | 2014-05-22 | 一种基于计算相关度的多数据中心数据布局优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410218596.2A CN103984737B (zh) | 2014-05-22 | 2014-05-22 | 一种基于计算相关度的多数据中心数据布局优化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103984737A true CN103984737A (zh) | 2014-08-13 |
CN103984737B CN103984737B (zh) | 2017-01-25 |
Family
ID=51276710
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410218596.2A Expired - Fee Related CN103984737B (zh) | 2014-05-22 | 2014-05-22 | 一种基于计算相关度的多数据中心数据布局优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103984737B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105430074A (zh) * | 2015-11-13 | 2016-03-23 | 厦门大学 | 基于数据依赖性和访问量云数据分配存储优化方法及系统 |
CN106933868A (zh) * | 2015-12-30 | 2017-07-07 | 阿里巴巴集团控股有限公司 | 一种调整数据分片分布的方法及数据服务器 |
CN112288904A (zh) * | 2020-11-23 | 2021-01-29 | 武汉大学 | 车载终端、分布式车载终端集成管理方法和系统 |
CN114817402A (zh) * | 2022-04-25 | 2022-07-29 | 山东浪潮科学研究院有限公司 | 分布式数据库于多region部署场景下的SQL执行优化方法 |
CN115453861A (zh) * | 2022-10-20 | 2022-12-09 | 湖南省通信产业服务有限公司科技培训分公司 | 一种基于大数据的控制系统及控制方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102289747A (zh) * | 2011-08-30 | 2011-12-21 | 中国科学院计算技术研究所 | 一种面向分布式工作流的数据流调度方法和系统 |
CN102646121A (zh) * | 2012-02-23 | 2012-08-22 | 武汉大学 | 结合RDBMS和Hadoop云存储的两级存储方法 |
CN102955987A (zh) * | 2011-08-30 | 2013-03-06 | 中国科学院计算技术研究所 | 一种面向分布式工作流的数据流初始调度方法和系统 |
CN103049559A (zh) * | 2012-12-29 | 2013-04-17 | 深圳先进技术研究院 | 一种海量数据自动放置方法和装置 |
US8676805B1 (en) * | 2008-08-08 | 2014-03-18 | The Research Foundation For The State University Of New York | System and method for probabilistic relational clustering |
-
2014
- 2014-05-22 CN CN201410218596.2A patent/CN103984737B/zh not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8676805B1 (en) * | 2008-08-08 | 2014-03-18 | The Research Foundation For The State University Of New York | System and method for probabilistic relational clustering |
CN102289747A (zh) * | 2011-08-30 | 2011-12-21 | 中国科学院计算技术研究所 | 一种面向分布式工作流的数据流调度方法和系统 |
CN102955987A (zh) * | 2011-08-30 | 2013-03-06 | 中国科学院计算技术研究所 | 一种面向分布式工作流的数据流初始调度方法和系统 |
CN102646121A (zh) * | 2012-02-23 | 2012-08-22 | 武汉大学 | 结合RDBMS和Hadoop云存储的两级存储方法 |
CN103049559A (zh) * | 2012-12-29 | 2013-04-17 | 深圳先进技术研究院 | 一种海量数据自动放置方法和装置 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105430074A (zh) * | 2015-11-13 | 2016-03-23 | 厦门大学 | 基于数据依赖性和访问量云数据分配存储优化方法及系统 |
CN105430074B (zh) * | 2015-11-13 | 2018-06-29 | 厦门大学 | 基于数据依赖性和访问量的云数据分配存储的优化方法及系统 |
CN106933868A (zh) * | 2015-12-30 | 2017-07-07 | 阿里巴巴集团控股有限公司 | 一种调整数据分片分布的方法及数据服务器 |
CN106933868B (zh) * | 2015-12-30 | 2020-04-24 | 阿里巴巴集团控股有限公司 | 一种调整数据分片分布的方法及数据服务器 |
CN112288904A (zh) * | 2020-11-23 | 2021-01-29 | 武汉大学 | 车载终端、分布式车载终端集成管理方法和系统 |
CN112288904B (zh) * | 2020-11-23 | 2022-04-01 | 武汉大学 | 车载终端、分布式车载终端集成管理方法和系统 |
CN114817402A (zh) * | 2022-04-25 | 2022-07-29 | 山东浪潮科学研究院有限公司 | 分布式数据库于多region部署场景下的SQL执行优化方法 |
CN115453861A (zh) * | 2022-10-20 | 2022-12-09 | 湖南省通信产业服务有限公司科技培训分公司 | 一种基于大数据的控制系统及控制方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103984737B (zh) | 2017-01-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11853677B2 (en) | Generating integrated circuit placements using neural networks | |
Grace et al. | Dynamic replica placement and selection strategies in data grids—a comprehensive survey | |
Dong et al. | An optimized approach for storing and accessing small files on cloud storage | |
Mansouri et al. | A dynamic replica management strategy in data grid | |
Li et al. | CBMR: An optimized MapReduce for item‐based collaborative filtering recommendation algorithm with empirical analysis | |
CN103595805A (zh) | 一种基于分布式集群的数据放置方法 | |
CN103188346A (zh) | 支持分布式决策的大规模高并发访问i/o服务器负载均衡系统 | |
CN103279505B (zh) | 一种基于语义的海量数据处理方法 | |
CN103984737A (zh) | 一种基于计算相关度的多数据中心数据布局优化方法 | |
Ma et al. | Multi-objective microservice deployment optimization via a knowledge-driven evolutionary algorithm | |
Park et al. | Dynamic group‐based fault tolerance technique for reliable resource management in mobile cloud computing | |
Xia et al. | Proactive and intelligent evaluation of big data queries in edge clouds with materialized views | |
Mohd. Zin et al. | Replication techniques in data grid environments | |
Fang et al. | Cost-effective stream join algorithm on cloud system | |
Kang et al. | An efficient scheme to ensure data availability for a cloud service provider | |
Beigrezaei et al. | A new fuzzy based dynamic data replication algorithm in data grids | |
Spivak et al. | Storage tier-aware replicative data reorganization with prioritization for efficient workload processing | |
Yang et al. | Energy saving strategy of cloud data computing based on convolutional neural network and policy gradient algorithm | |
Wang et al. | A Cloud‐Computing‐Based Data Placement Strategy in High‐Speed Railway | |
Park et al. | An efficient Hadoop data replication method design for heterogeneous clusters | |
Liu et al. | Study on replica strategy based on access pattern mining in smart city cloud storage system | |
Ma et al. | Energy Big Data Storage and Parallel Processing Method Based on ODPs | |
Yadav et al. | Throughput and delay analysis of database replication algorithm | |
Eom et al. | Multi-dimensional multiple query scheduling with distributed semantic caching framework | |
Saleh et al. | A four-phase data replication algorithm for data grid |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170125 Termination date: 20200522 |