System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本申请实施例涉及数据处理,尤其涉及一种数据分区方法、装置、计算机存储介质及加速卡。
技术介绍
1、数据分区是大数据应用中的一个重要策略,通过对数据进行数据分区,可以便于提高用户进行数据查询的效率以及优化数据存储。
2、现有技术中通常是通过主计算设备执行数据处理函数实现数据分区功能,而由于主计算设备的算力有限,并且需要执行多个数据处理任务,从而导致主计算设备的算力不足,从而使得针对数据分区的处理效率低。
技术实现思路
1、有鉴于此,本申请实施例提供一种数据分区方法、装置、计算机存储介质及电子设备,以至少部分解决上述问题。
2、根据本申请实施例的第一方面,提供了一种数据分区方法,用于与主计算设备连接的加速卡,加速卡中包括存储区和加速核,存储区包括第一存储区和第二缓存区,该数据分区方法包括:接收主计算设备发送的多个待分区数据、多个分区基准数据和分区参数,并存入第一存储区,其中,多个待分区数据和多个分区基准数据一一对应,分区参数包括分区数量和对应的区域位宽;通过加速核,从第一存储区中读取待分区数据、分区基准数据和分区参数,根据分区数量和分区基准数据,确定每个待分区数据对应的区域信息,并按照每个待分区数据对应的区域信息,将待分区数据分别写入第二缓存区中的各子缓存区,得到子缓存区对应的子分区结果,其中,各子缓存区是根据分区数量和对应的区域位宽确定的;通过加速核,从各子缓存区中读取子分区结果进行合并,得到分区结果,以使主计算设备读取分区结果。
3、根据本申请实
4、根据本申请实施例的第三方面,提供了一种加速卡,包括存储区和加速核,其中,存储区包括第一存储区和第二缓存区,第一存储区用于存储从主计算设备接收的多个待分区数据、多个分区基准数据和分区参数,其中,多个待分区数据和多个分区基准数据一一对应,分区参数包括分区数量和对应的区域位宽;加速核用于从第一存储区中读取待分区数据、分区基准数据和分区参数,根据分区数量和分区基准数据,确定每个待分区数据对应的区域信息,并按照每个待分区数据对应的区域信息,将待分区数据分别写入第二缓存区中的各子缓存区,得到子缓存区对应的子分区结果,其中,各子缓存区是根据分区数量和对应的区域位宽确定的;以及从各子缓存区中读取子分区结果进行合并,得到分区结果,以使主计算设备读取分区结果。
5、根据本申请实施例的第四方面,提供了一种计算机存储介质,其上存储有计算机程序,该程序被处理器执行时实现如第一方面所述的方法。
6、本申请实施例的数据分区方法、装置、计算机存储介质及加速卡,其中,数据分区方法用于与主计算设备连接的加速卡,加速卡中包括存储区和加速核,存储区包括第一存储区和第二缓存区,该数据分区方法包括:接收主计算设备发送的多个待分区数据、多个分区基准数据和分区参数,并存入第一存储区,其中,多个待分区数据和多个分区基准数据一一对应,分区参数包括分区数量和对应的区域位宽;通过加速核,从第一存储区中读取待分区数据、分区基准数据和分区参数,根据分区数量和分区基准数据,确定每个待分区数据对应的区域信息,并按照每个待分区数据对应的区域信息,将待分区数据分别写入第二缓存区中的各子缓存区,得到子缓存区对应的子分区结果,其中,各子缓存区是根据分区数量和对应的区域位宽确定的;通过加速核,从各子缓存区中读取子分区结果进行合并,得到分区结果,以使主计算设备读取分区结果。本实施例的整个数据分区过程是在加速卡中完成的,而主计算设备只需发送数据以及读取处理结果即可,从而减少了数据分区处理对主计算设备的算力的占用,且避免了主计算设备中执行的其他任务影响数据分区处理的效率,从而提高了处理效率。另外,由于子分区结果的数据量小于或等于子缓存区的区域位宽,即第二缓存区中的各子分区结果是分散存储的,不利于主计算设备直接读取处理结果,因此,将分布在各子缓存区的子分区结果重新读取进行合并得到分区结果,以便于主计算设备可以直接读取分区结果,进一步提高了整个处理过程的效率。
本文档来自技高网...【技术保护点】
1.一种数据分区方法,其特征在于,用于与主计算设备连接的加速卡,所述加速卡中包括存储区和加速核,所述存储区包括第一存储区和第二缓存区,所述数据分区方法包括:
2.根据权利要求1所述的数据分区方法,其特征在于,所述通过所述加速核,从所述第一存储区中读取所述待分区数据、所述分区基准数据和所述分区参数,包括:
3.根据权利要求2所述的数据分区方法,其特征在于,所述根据所述分区数量和所述分区基准数据,确定每个所述待分区数据对应的区域信息,并按照每个所述待分区数据对应的所述区域信息,将所述待分区数据分别写入所述第二缓存区中的各子缓存区,得到所述子缓存区对应的子分区结果,包括:
4.根据权利要求1所述的数据分区方法,其特征在于,所述加速核还包括第三缓存区,所述按照每个所述待分区数据对应的所述区域信息,将所述待分区数据分别写入所述第二缓存区中的各子缓存区,得到所述子缓存区对应的子分区结果,包括:
5.根据权利要求4所述的数据分区方法,其特征在于,所述将所述初步分区结果依次缓存至所述第三缓存区,若所述第三缓存区中缓存的所述初步分区结果达到预设缓存数
6.根据权利要求1所述的数据分区方法,其特征在于,通过所述加速核,从各所述子缓存区中读取所述子分区结果进行合并,得到分区结果,包括:
7.根据权利要求1-5中任一项所述的数据分区方法,其特征在于,所述方法还包括:
8.一种数据分区装置,其特征在于,用于与主计算设备连接的加速卡,所述加速卡中包括存储区和加速核,所述存储区包括第一存储区和第二缓存区,所述数据分区装置包括:
9.一种加速卡,其特征在于,包括:
10.一种计算机存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-7中任一所述的方法。
...【技术特征摘要】
1.一种数据分区方法,其特征在于,用于与主计算设备连接的加速卡,所述加速卡中包括存储区和加速核,所述存储区包括第一存储区和第二缓存区,所述数据分区方法包括:
2.根据权利要求1所述的数据分区方法,其特征在于,所述通过所述加速核,从所述第一存储区中读取所述待分区数据、所述分区基准数据和所述分区参数,包括:
3.根据权利要求2所述的数据分区方法,其特征在于,所述根据所述分区数量和所述分区基准数据,确定每个所述待分区数据对应的区域信息,并按照每个所述待分区数据对应的所述区域信息,将所述待分区数据分别写入所述第二缓存区中的各子缓存区,得到所述子缓存区对应的子分区结果,包括:
4.根据权利要求1所述的数据分区方法,其特征在于,所述加速核还包括第三缓存区,所述按照每个所述待分区数据对应的所述区域信息,将所述待分区数据分别写入所述第二缓存区中的各子缓存区,得到所述子缓存区对应的子分区结果,包括:
【专利技术属性】
技术研发人员:张宏,李晟,耿嘉,陈岩,张宇,鄢贵海,
申请(专利权)人:中科驭数北京科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。