【sjj】[论文笔记]适用于云计算的面向查询数据库数据分布策略
《适用于云计算的面向查询数据库数据分布策略》
文明波、丁治明 计算机科学(Computer Science) 第37卷,第9期 Vol-37 No.9 Sep 2010
摘要:文章介绍了几种云环境下的数据分布策略以及各自的特点,包括水平分布,垂直分布,混合分布。由于当今主流的关系型数据库在设计之初就要求小的冗余度,表的属性集较小,导致垂直分布代价较高,因此目前实际应用的多是水平分布,主要有以下几种:轮转划分,范围划分,散列划分,由于这三种划分都存在一些不足,作者提出了一种新的数据分布策略,即面向查询的数据分布策略(SOD)。
1、 分析影响数据查询效率的因素,提出解决方案:
T=TTUS+EST+MAX[TTSN+ENTi+max(TTNi,j)+max(TTNj,i)+TTNC]+ECT+r_CU
式中,TTUS,TTCU是由查询时网络速度决定的,很难减小;EST中SQL解析时间是常数量,等待时间则由服务器负载决定。节点i所用时间中丁TTSN,TTNC基本不可控,但ENT,TTNi,j和TTNj,i主要由节点问交换的数据量决定,因此可通过减少甚至消除节点间数据交换量来减小TTNi,j和TTNj,i。这样也使各节点间TTNG较为均匀,从而减少最终响应时间T。对汇总器而言,若要进行连接汇总,ECT将是一大项,因此汇总器最好仅执行非连接汇总,将连接操作交由各节点执行。通过上述分析可知,总响应时间T中可调部分
TM为
MAX[TTSN+ENTi+max(TTNi,j)+max(TTNj,i)+TTNC]
2、SOD的主要思想:减少节点间数据交换量能减小TM,从而提高系统查询性能。但由于每个表的元组会分布到多个节点上。因此进行连接时必须将可能的连接元组进行集中。若其
不在同一节点上,则必须进行数据传输。由此若能根据两表的连接属性将两表联合分布,即将可能的连接元组分布在相同节点上,就能大幅减少甚至消除节点间的数据传输量。
2、 实现数据分布涉及的算法:
算法1统计表的查询频率和相关属性。
算法2根据表之间的关联度函数计算表之间的关联度。
算法3根据前两步的结果生成分布方案。
算法4数据分布后的查询算法。
根据云环境下数据分布式存储的特点以及对造成数据处理效率低下的原因,分析出问题所在,找出解决问题的方法,对云计算环境下得数据存储提出了一种新的解决方案。个人感觉这篇论文的思路值得借鉴。