定义3.2 在单位时间内,访问读操作副本的次数ntotal与读副本数量nread的比,记作读副本的访问频率,表示为fread。
如果fread大于系统的给定阈值γ,则该读副本为热点数据源。
定义3.3读副本的平均响应时间为单位时间内所有读副本被访问的响应时间之和与相应的访问频率比。
在数据副本存放的所有节点集合R内,设数据具有的副本数量最小值为M',需要增加副本数为M",则M"需满足:
其中,为系统设定的阈值,通常取值为2Tmin,Tmin为最小响应时间。
在云计算系统中,对于副本放置的节点的选择以及数据副本的建立,应充分考虑节点的状态:节点的负载、节点的空间大小、通信状态以及特定时间段的访问率及通信失败率等。结合3.3.1节对于节点分域的设置,因为放置副本节点并不一定拥有分区所有节点的相关信息,所以此处副本位置的计算由分区负责节点完成,以保证避免单点失效造成的损失。同时,分区负责节点根据数据资源放置在每个待选节点上的复制调整参数,选择M'个具有最大复制调整参数的节点作为副本创建数量的最少地点。提出的DRA算法则根据副本的信息确定副本创建域、副本数量、放置位置,并随着信息参数,动态地进行副本数量、位置调整,保证云计算系统数据的可用性、可靠性。
算法 DRA算法
步骤1:初始化副本状态(L1或者L2)。
步骤2:放置副本节点计算数据资源Dneed的访问频率fread,如果fread大于预先给定的阈值γ,则数据资源Dneed就是热点资源,热点资源表示该数据资源Dneed的单位副本在过去的一段时间内被频繁访问,可能需要创建更多的副本并更新。(www.xing528.com)
步骤3:对于每个热点资源,计算其,如果热点资源的大于预先给定的阈值γ',则需要对数据资源创建副本,将此类资源存放在集合副本创建域Ylack中。
步骤4:对于每个Ylack中的数据,节点记录单位时间内对数据资源Dneed的所有访问请求。如果副本创建区Ylack内节点访问资源的平均响应时间大于数据资源Dneed的平均响应时间,则需要在Ylack内创建副本。用于分割热点数据的阈值γ,其取值设置Ylack内临近该节点的fread的平均值,用于分割是否需要创建副本的阈值γ',其取值设置为Ylack内临近该节点的取值的平均值。
步骤5:对于每一个Ylack内的数据和节点,依次按照步骤循环执行①、②,确定需要所有适合放置副本的节点和创建的副本数量。
①放置副本节点根据域首节点中记录的数据资源Dneed的所有副本的访问情况,根据公式(3-5)统计单位时间内数据资源Dneed的副本在区Ylack内的平均响应时间,根据公式(3-6)计算区Ylack内所需副本数量M"。
②Ylack的负责节点确定M"个适合放置副本的节点。若Ylack内没有资源Dneed的节点可以作为创建副本的备选地点,负责节点根据公式(3-2)计算数据资源Dneed放置在每个待选节点上的复制调整参数ς,选择M"个具有最小复制调整参数的节点作为副本创建地点,并将节点位置信息传递给放置副本节点。
步骤6:在计算所得节点上创建数据副本。
步骤7:所有数据都按照由公式(3-3)计算的权值进行排序,然后在权值高的数据中选取特定范围的数据进行复制,并且复制到负载小的节点上去,完成数据副本更新操作。
步骤8:求得副本数量及副本放置位置。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。