用于分布式计算的资源分配方法、计算加速方法以及装置的制造方法_3

文档序号:8319209阅读:来源:国知局
的计算资源单位的数目小于所述计算资源单位的预期值,则采用所述计算平台可提供的计算资源单位的数目作为所述计算资源单位的预期值。
[0099]这样,在计算资源充足的情况下,可以为所述数据文件分配与其计算规模相匹配的计算资源;在计算资源不足的情况下,可以为所述数据文件分配计算平台可提供的计算资源单位,从而保证计算作业得以执行。
[0100]在本实施例的一个具体的例子中,步骤2)根据所述元数据文件的计算规模估算计算资源单位的预期值为100,步骤3)中获取的计算平台可提供的计算资源单位的数目是1000,说明当前计算平台的计算资源是充足的,因此所述计算资源单位的预期值仍然为100,不用根据计算平台可提供的计算资源单位的数目进行重置。
[0101]5)根据所述计算资源单位的预期值获取与之对应的计算资源可处理的数据文件长度。
[0102]上述步骤2)中,根据所述待执行计算作业的数据文件的计算规模估算出了为所述数据文件分配计算资源单位的预期值,用所述计算资源单位的预期值乘以一个计算资源单位可以处理的数据文件的长度,就可以获取与所述计算资源单位的预期值对应的计算资源可处理的数据文件长度。
[0103]所述一个计算资源单位可以处理的数据文件的长度,可以采用固定的经验值,也可以根据待执行计算作业的数据文件所涉及的计算复杂程度,进行动态调整。具体设置方法和取值,本申请不作限定。
[0104]在本实施例的一个具体的例子中,为所述元数据文件分配计算资源单位的预期值为100,一个计算资源单位可以处理的数据文件长度为320MB,两者相乘,估算出预期分配的100个计算资源单位可处理的元数据文件长度为320MB xl00=31.25GB。
[0105]6)计算所述可处理的数据文件长度与所述待执行计算作业的数据文件的实际长度的比值,作为调整因子。
[0106]通过上述步骤5),已经获取了预计分配给所述待执行计算作业的数据文件的计算资源单位可处理的数据文件长度,在本步骤中,计算所述数据文件长度与所述待执行计算作业的数据文件的实际长度的比值,即得到对所述待执行计算作业的数据文件的文件长度进行调整的调整因子。
[0107]在本实施例的一个具体的例子中,预计分配给所述元数据文件的100个计算资源单位可处理的元数据文件长度为31.25GB,在步骤101中,获取待执行计算作业的元数据文件的实际长度为300MB,因此,对所述待执行计算作业的元数据文件的文件长度进行调整的调整因子为:31.25GB/300MB=106.7。
[0108]步骤103:根据所述调整因子调整所述待执行计算作业的数据文件的长度。
[0109]首先要判断所述调整因子大小。调整因子是一个比值,即:预计分配给所述待执行计算作业的数据文件的计算资源单位可处理的数据文件长度,与待执行计算作业的数据文件的实际长度的比值。因此调整因子的取值可能有三种情况:大于1,等于I和小于1,针对这三种情况,后续要进行不同的处理。
[0110]如果所述调整因子小于或者等于1,说明根据待执行计算作业的数据文件的实际长度,采用常规的计算资源分配方法,就可以为其分配足够的计算资源,因此这两种情况下不需要调整所述数据文件的长度。
[0111]如果所述调整因子大于1,说明待执行计算作业的数据文件是一个相对大当量级的数据文件,如果根据所述数据文件的实际长度为其分配计算资源单位,分配的结果与其计算规模是不匹配的,该计算作业将耗时较长。因此,采用本申请提供的方法,当调整因子大于I时,要对所述数据文件实施膨胀操作,使所述数据文件的长度增大到预计为其分配的计算资源可处理的数据文件长度。
[0112]在本实施例中,根据计算得到的调整因子,采用增加伪列并拼接冗余字段的方式对所述元数据文件实施膨胀操作,使所述元数据文件的长度增大到所述计算资源可处理的数据文件的长度。
[0113]首先估算需拼接的冗余字段的长度。
[0114]在本实施例的一个具体例子中,调整因子是106.7,所述元数据文件长度为300MB,总共有10万条数据记录,每条数据记录的长度为300MB/10万=3.1KB,如果膨胀106.7倍,每条数据记录需要拼接一个长度为(3.1KB xl06.7) -3.1KB=327.7KB的冗余字段。
[0115]然后,在所述待执行计算作业的数据文件中增加可增删的伪列并拼接所述长度的冗余字段。
[0116]在本实施例的一个具体例子中,采用自定义SQL的方法在所述元数据文件增加伪列并拼接所述长度的冗余字段。具体采用“alter table[table_name]add[column_name]type...”这样的SQL语句在所述元数据文件中增加一个伪列,然后为每个数据记录拼接一个长度为327.7KB的冗余字段,在执行上述增加伪列的操作时,要设置所述伪列是可增可删的,这样便于在完成计算资源的分配后,还原原始数据文件。
[0117]对数据文件实施膨胀操作,除了可以采用上述增加伪列并拼接冗余字段的方式,还可以采用数据库的关联Join方法来实现。
[0118]通过数据库的关联操作,可以将数据库中的两个表通过关联键建立联系,从表中的列按照关联规则拼接到主表中,从而增大主表数据文件的长度。
[0119]采用关联方法,要首先根据所述调整因子估算关联文件的长度;然后根据所述关联文件的长度,选择满足下述条件的关联文件:该关联文件通过外键与所述待执行计算作业的数据文件进行关联后,所述待执行计算作业的数据文件的长度增大到所述计算资源可处理的数据文件长度;最后,采用数据库的关联方法,将所述待执行计算作业的数据文件作为主文件与所述关联文件进行关联拼接。
[0120]当然在其他的实施方式中,并不局限于采用上述自定义SQL的方法或者是关联方法实现待执行计算作业的数据文件的膨胀操作,也可以采用其他能实现所述功能的方法,本申请对此不做限定。
[0121]步骤104:根据调整后的待执行计算作业的数据文件的长度,分配计算资源。
[0122]首先,计算为待执行计算作业的数据文件分配资源单位的数目。
[0123]步骤103中,已经对待执行计算作业的数据文件执行了必要的膨胀操作,完成了调整所述数据文件长度的操作,在本步骤中获取所述调整后的数据文件的长度与一个计算资源单位可处理的数据文件的长度的比值,以大于或等于该比值的最小整数作为需要分配的计算资源单位的数目。
[0124]在本实施例的一个具体的例子中,执行完步骤103所述的字段拼接操作后,所述调整后的元数据文件的长度为31.25GB,而预先设置的一个计算资源单位可以处理的数据文件的长度为320MB,那么需要为本实施例中的元数据文件分配的计算资源单位的数目为:31.25GB/320MB=100。
[0125]然后,为所述数据文件分配相应数目的计算资源单位。
[0126]在本实施例的一个具体的例子中,按照分布式计算平台的计算资源分配方法,为所述待执行计算作业的元数据文件分配100个计算资源单位。
[0127]本申请提供的用于分布式计算的资源分配方法,一方面考虑到数据文件的长度,并作为分配计算资源的依据之一,而且,进一步的,要估算数据文件涉及的计算规模,并根据计算规模调整数据文件的长度,从而实现为数据文件分配与其计算规模相匹配的计算资源的目的。从而使得分配的计算资源不但能够满足数据文件长度方面的需求,而且能够满足数据文件计算规模方面的需求,在充分合理利用计算资源的同时,还能保证更为有效的对数据文件进行处理。
[0128]在上述的实施例中,提供了一种用于分布式计算的资源分配方法,与之相对应的,本申请还提供一种用于分布式计算的资源分配装置。请参看图2,其为本申请一种用于分布式计算的资源分配装置的实施例示意图。由于装置实施例基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。下述描述的装置实施例仅仅是示意性的。
[0129]本实施例的一种用于分布式计算的资源分配装置,包括:文件长度获取单元201,用于获取待执行计算作业的数据文件的实际长度;调整因子获取单元202,用于根据所述待执行计算作业的数据文件的计算规模以及数据文件的实际长度获取所述数据文件的文件长度的调整因子;文件长度调整单元203,用于根据所述调整因子调整所述待执行计算作业的数据文件的长度;计算资源分配单元204,用于根据调整后的待执行计算作业的数据文件的长度,分配计算资源。
[0130]可选的,所述文件长度获取单元,具体用于通过读取所述数据文件头中的文件长度字段获取所述数据文件的实际长度;或者通过读取计算平台的元数据库中的用于记录所述数据文件长度的字段获取所述数据文件的实际长度。
[0131]可选的,所述调整因子获取单元包括:计算规模估算子单元,用于估算所述待执行计算作业的数据文件的计算规模;计算资源估算子单元,用于根据所述待执行计算作业的数据文件的计算规模估算为所述数据文件分配计算资源单位的预期值;可处理文件长度获取子单元,用于根据计算资源单位的预期值获取与之对应的计算资源可处理的数据文件长度;调整因子计算子单元,用于计算所述可处理的数据文件长度与所述待执行计算作业的数据文件的实际长度的比值,作为所述的调整因子。
[0132]可选的,所述调整因子获取单元包括:计算规模估算子单元,用于估算所述待执行计算作业的数据文件的计算规模;计算资源估算子单元,用于根据所述待执行计算作业的数据文件的计算规模估算为所述数据文件分配计算资源单位的预期值;可用资源获取子单元,用于获取计算平台可提供的计算资源单位的数目;资源判断子单元,用于判断所述计算平台可提供的计算资源单位的数目与所述计算资源单位的预期值的大小;如果所述计算平台可提供的计算资源单位的数目小于所述计算资源单位的预期值,则采用所述计算平台可提供的计算资源单位的数目作为所述计算资源单位的预期值;可处理文件
当前第3页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1