1.一种第一数据中心和第二数据中心之间的数据复制方法,其中,所述第一数据中心具有要复制的数据集,所述方法包括:
通过以下步骤确定(501)从所述第一数据中心到所述第二数据中心的第一路径是否适于要复制的数据集:
沿着所述第一路径发送(502)测试数据;
沿着所述第一路径进行(503)对所述测试数据的时延测量;以及
使用所述时延测量来确定所述第一路径的时延参数;以及
确定(504)所述测试数据的所述时延参数是否小于最大时延阈值;
其中,如果确定所述时延参数小于所述最大时延阈值,则所述方法使用所述第一路径执行(505)所述数据集的复制。
2.根据权利要求1所述的数据复制方法,还包括:如果确定所述第一路径的所述时延参数大于所述最大时延阈值,则:
识别(601)所述第一数据中心和所述第二数据中心之间的第二路径;
通过以下步骤确定(602)从所述第一数据中心到所述第二数据中心的所述第二路径是否适于要复制的数据集:
沿着所述第二路径发送(603)测试数据;
沿着所述第二路径进行(604)对所述测试数据的时延测量;以及
使用所述时延测量来确定所述第二路径的时延参数;以及
确定(605)所述测试数据的所述时延参数是否小于所述最大时延阈值;
其中,如果所述时延参数小于所述最大时延阈值,则所述方法使用所述第二路径执行(606)所述数据集的复制。
3.根据权利要求1或2所述的数据复制方法,还包括:
识别(701)所述第一数据中心和所述第二数据中心之间的一组路径;以及
如果所述组(702)中所有路径的相应时延参数都大于所述最大时延阈值,则识别所述第二数据中心不能用于同步复制;以及
如果不能使用所述第二数据中心(703),则:
识别具有到所述第一数据中心的路径的第三数据中心(704),所述路径的时延参数小于所述最大时延阈值;以及
在所述第三数据中心处执行所述数据集的复制(705)。
4.根据前述任一项权利要求所述的方法,其中,执行复制的步骤还包括,在所述第一数据中心中运行的应用处:
接收(901)复制等待时间;
将所述数据发送(902)给所述复制数据中心;
在发送时:暂停(903)所述应用的进程的至少一部分;
在等于所述复制等待时间的时段流逝后:恢复(904)所述应用的所述进程的所述至少一部分。
5.根据权利要求4所述的方法,还包括:从所述复制数据中心接收(905)确认。
6.根据权利要求1至3所述的方法,其中,执行复制的步骤还包括:在用于所述第一数据中心的控制器处:
从应用接收(1001)所述数据集;
向所述复制数据中心发送(1002)数据;以及
在复制等待时段之后,向所述应用发送(1003)所述数据已经被复制的指示,其中,使用被选择用于复制的所述路径的时延参数来计算所述复制等待时段。
7.根据权利要求6所述的方法,还包括:从所述复制数据中心接收(905)确认。
8.根据权利要求4至7中任一项所述的方法,其中,所述复制等待时段是使用所选择路径的时延参数和目的地数据中心处的估计写入时段来计算的时段。
9.根据前述任一项权利要求所述的方法,其中,估计路径的时延参数包括以下步骤:
确定所述时延测量的平均值;
确定所述时延测量的标准偏差;
设置所需概率,所述所需概率是所述数据集将会经历的时延小于所述时延参数的概率;以及
使用所述平均值、所述标准偏差和所述所需概率来设置所述时延参数。
10.根据前述任一项权利要求所述的方法,其中,在数据复制期间周期性地执行时延估计。
11.一种用于数据中心网络的控制器(1100),包括:
处理器(1103);
存储器(1104),用于存储数据和指令;
发送器(1101),用于向通信网络发送数据;以及
接收器(1102),用于从所述通信网络接收数据;
其中,所述控制器被配置为:
沿着第一路径发送测试数据;
沿着所述第一路径进行对所述测试数据的时延测量;以及
使用所述时延测量来确定所述第一路径的时延参数;以及
确定所述测试数据的所述时延参数是否小于最大时延阈值;
其中,如果所述时延参数小于所述最大时延阈值,则所述方法使用所述第一路径执行所述数据集的复制。
12.根据权利要求11所述的控制器,其中,所述处理器还被配置为:
如果所述第一路径的所述时延参数大于所述最大时延阈值,则:
识别所述第一数据中心和所述第二数据中心之间的第二路径;
沿着所述第二路径发送测试数据;
沿着所述第二路径进行对所述测试数据的时延测量;以及
使用所述时延测量来确定所述第二路径的时延参数;以及
确定所述测试数据的所述时延参数是否小于最大时延阈值,
其中,如果所述时延参数小于所述最大时延阈值,则所述方法使用所述第二路径执行所述数据集的复制。
13.根据权利要求11或12所述的控制器,其中,所述处理器还被配置为:
识别所述第一数据中心和所述第二数据中心之间的一组路径;以及
如果所述组中所有路径的相应时延参数都大于所述最大时延阈值,则识别所述第二数据中心不能用于同步复制;以及
如果不能使用所述第二数据中心,则:
识别具有到所述第一数据中心的路径的第三数据中心,所述路径的时延参数小于所述最大时延阈值;以及
在所述第三数据中心处执行所述数据集的复制。
14.根据权利要求11至13中任一项所述的控制器,其中,所述处理器还被配置为通过以下步骤来执行复制:
从应用接收所述数据集;
向所述复制数据中心发送数据;以及
在复制等待时段之后,向所述应用发送所述数据已经被复制的指示,其中,使用所选择路径的时延参数来计算所述复制等待时段。
15.根据权利要求14所述的控制器,还被配置为将所述数据集存储在所述第一数据中心内的本地存储设备处。
16.根据权利要求11至15中任一项所述的控制器,其中,所述处理器还被配置为:
确定所述时延测量的平均值;
确定所述时延测量的标准偏差;以及
使用所需概率、所述平均值和所述标准偏差来确定所述时延参数,所述所需概率是所述数据集将会经历的时延小于所述时延参数的概率。
17.根据权利要求11至16中任一项所述的控制器,包括准确度至少为最小时延的0.1的时钟。
18.一种数据中心,包括根据权利要求11至17中任一项所述的控制器。
19.一种计算机程序,包括指令,所述指令当在至少一个处理器上执行时,使所述至少一个处理器执行根据权利要求1至10中任一项所述的方法。
20.一种计算机程序产品,包括根据权利要求19所述的计算机程序。
21.一种包含根据权利要求20所述的计算机程序产品的载体,其中,所述载体可选地包括电信号、光信号、无线电信号、磁带或磁盘、光盘或存储器棒。