System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 大数据分析算法库的构建系统及构建方法技术方案_技高网

大数据分析算法库的构建系统及构建方法技术方案

技术编号:41329514 阅读:5 留言:0更新日期:2024-05-13 15:07
本发明专利技术公开了大数据分析算法库的构建系统,包括:分析流程构建模块、算子平台选择模块、代码反向生成模块、用户代码校验模块、集群控制主机、集群计算主机。能实现跨平台、跨语言的算法融合,在一个完整且异构的数据分析流中实现数据分析。本发明专利技术还公开了大数据分析算法库的构建方法。

【技术实现步骤摘要】

本专利技术属于大数据分析方法,涉及大数据分析算法库的构建系统,本专利技术还涉及大数据分析算法库的构建方法。


技术介绍

1、随着大数据生态软件的发展,以大数据技术为基础,以数据处理及业务分析为核心的大数据分析算法也得到了广泛的应用,因此,构建面向行业大数据分析的算法库是促进大数据产业发展的必备要素之一。

2、传统的大数据算法库大多旨在提升平台算法的丰富性,而在跨平台算法的异构性、多语言兼容性、算法的选择及算法的灵活使用上无法完全满足上述需求。常用的数据分析算法都是基于统一的语言和环境开发,例如,以scikit-learn为代表的小规模数据分析算法库,以spark mllib为代表的大规模数据分析算法库,以matlab为代表的数据统计分析算法库,以pytorch和tensorflow为代表的深度学习算法框架,以h2o为代表的信号数据处理算法库等。然而,在实际的行业数据分析中,通常需要多个平台中的多个算法配合才能构建起完整的数据分析流程,这就需要用户先根据业务选平台,再根据平台选择算法,若流程所需的多个算法存在于多个平台中时,只能手动编码来实现这些算法的环境一致性。此外,传统企业在发展的过程中积累了大量的自研算法来解决本行业数据分析问题,这些面向行业的特殊算法可能基于任意编程环境,在融入算法库时需要重构代码来适配整个分析流程。以上都无疑给建立面向企业的大数据分析算法库带来了难点。

3、综上,现有的大数据分析算法库或大数据分析平台,在面向行业的数据分析场景中主要存在如下问题:

4、分析效率问题:传统的数据分析需要跨领域专家花费大量时间在业务沟通和算法调试上,门槛较高,这给分析建模及设计造成诸多不便。

5、算法选择问题:传统的数据分析中无法结合各开源平台算法自身的优势,自动的选择特定平台的算子,需要大量的人工介入来选择合适的平台并进一步选择合适的算法。

6、算法适配问题:传统数据分析平台提供完全界面配置的形式使用户无法完成代码的定制化修改,而接口调用的形式又难以供初学用户使用,缺乏了数据分析过程的灵活性。

7、算法融合问题:传统的分析算法平台无法支持新平台算法与企业历史算法的技术互通与无缝衔接,进而无法实现行业自有算法库的广泛兼容和可持续演进。


技术实现思路

1、本专利技术的目的是提供大数据分析算法库的构建系统,能实现跨平台、跨语言的算法融合,在一个完整且异构的数据分析流中实现数据分析。

2、本专利技术的另一目的是提供了大数据分析算法库的构建方法。

3、本专利技术所采用的技术方案是,大数据分析算法库的构建系统,包括:

4、分析流程构建模块,让用户可视化选择算法并将其首尾相接构建完整数据分析流程,并生成流程描述文件;

5、算子平台选择模块,给分析流程构建模块构建的数据分析流程中的每一个算法选择基准运行环境,并将每个算法对应的基准运行环境写入到流程描述文件中;

6、代码反向生成模块,生成每一个算法在其基准运行环境下的算法代码,使用户可手动编辑;

7、用户代码校验模块,校验用户手动编辑过的算法代码是否符合规则,若符合则产生原生代码;

8、集群控制主机,部署有流程执行引擎,流程执行引擎下发各算法原生代码到与其环境相匹配的集群计算主机;

9、集群计算主机,接收流程执行引擎下发的原生代码,完成数据的读取与输入,代码的编译与运行,数据的输出与缓存。

10、本专利技术的特征还在于:集群计算主机包括多类,每类集群计算主机只部署一种基准运行环境,集群控制主机根据算法的基准运行环境选择对应的集群计算主机下发原生代码。

11、本专利技术采用的另一种技术方案是,大数据分析算法库的构建方法,采用上述大数据分析算法库的构建系统,具体按照如下步骤实施:

12、步骤1,算法库初始囊括大数据分析中使用的各类算法;

13、步骤2,用户根据需求通过分析流程构建模块可视化编辑数据分析流程节点,形成数据分析流程,每个流程节点对应步骤1中的一个算法,生成流程描述文件;

14、步骤3,算子平台选择模块为本流程节点的算法选择合适的基准运行环境,并将每个算法对应的基准运行环境写入到流程描述文件中;

15、步骤4,代码反向生成模块获取算法所在的基准运行环境中的代码模板,并结合用户界面输入的对应算法的参数的输入,反向生成算法代码并展示在界面上供用户编辑,获得用户编辑后的算法代码;

16、步骤5,用户代码校验模块校验用户手动编辑过的算法代码并是否符合规则,若符合则产生原生代码;

17、步骤6,流程执行引擎下发各算法原生代码到与其环境相匹配的集群计算主机,完成数据的读取与输入,代码的编译与运行,数据的输出与缓存。

18、本专利技术第二种技术方案的特征还在于,步骤1中的每个算法来自于不同或相同的开源平台或自研平台且同一个算法在不同平台的实现过程都包含在算法库中;且每个算法在多个基准运行环境中的实现都有标准化的代码模板存储在本地git代码库中;

19、步骤2中数据分析流程中第一个流程节点算法的输入为待分析的数据源,其余各个流程节点算法的输入为前一个或多个流程节点算法执行后的输出;流程构建模块生成的流程描述文件中包括流程节点中每一个算法的id,以及数据分析流程中各个算法之间的输入输出端口连接关系。

20、步骤3中算子平台选择模块根据本流程节点算法输入数据规模、数据类型以及集群的硬件配置来选择合适的基准运行环境,并将每个算法对应的基准运行环境写入到流程描述文件中。

21、步骤4具体为:代码反向生成模块从本地git代码库中获取算法所在的基准运行环境中的代码模板,并结合用户界面输入的对应算法的参数的输入,反向生成算法对应其基准运行环境的算法代码并展示在界面上供用户编辑,且每一个算法代码的命名与其在流程节点中的id相同,用户编辑后获得用户编辑后的算法代码。

22、用户代码校验模块给每一个算法提供了标准的输入测试数据以及标准输出数据,将该标准的输入测试数据输入编辑后的算法代码,若输出数据的格式与标准的输出数据格式一致,则校验成功,则产生原生代码,即就是用户编辑后且经过效验的算法代码;若无法输出或格式不一致则校验失败。

23、步骤6具体为:流程执行引擎解析流程描述文件,循环遍历每一个流程节点,判断其是否满足执行条件,将满足条件的流程节点的算法代码下发到其基准运行环境所匹配的集群计算主机中执行;

24、集群计算主机接收到流程执行引擎下发的代码后,读取代码片段,并判断本地环境是否已满足代码的执行条件,若不满足则下载该算法依赖的镜像包到本地,集群计算主机本地编译代码,并从hbase缓存数据库中根据数据分析流程设定的节点关系读取设定的输入数据,集群计算主机本地执行代码,并将最终的输出数据再写入hbase缓存数据库,将执行状态写入redis缓存数据库中。

25、步骤6中,针对每一个流本文档来自技高网...

【技术保护点】

1.大数据分析算法库的构建系统,其特征在于,包括:分析流程构建模块,让用户可视化选择算法并将其首尾相接构建完整数据分析流程,并生成流程描述文件;算子平台选择模块,给分析流程构建模块构建的数据分析流程中的每一个算法选择基准运行环境,并将每个算法对应的基准运行环境写入到流程描述文件中;代码反向生成模块,生成每一个算法在其基准运行环境下的算法代码,使用户可手动编辑;户代码校验模块,校验用户手动编辑过的算法代码是否符合规则,若符合则产生原生代码;集群控制主机,部署有流程执行引擎,流程执行引擎下发各算法原生代码到与其环境相匹配的集群计算主机;集群计算主机,接收流程执行引擎下发的原生代码,完成数据的读取与输入,代码的编译与运行,数据的输出与缓存。

2.根据权利要求1所述的大数据分析算法库的构建系统,其特征在于,所述集群计算主机包括多类,每类集群计算主机只部署一种基准运行环境,集群控制主机根据算法的基准运行环境选择对应的集群计算主机下发原生代码。

3.大数据分析算法库的构建方法,其特征在于,采用权利要求2所述的大数据分析算法库的构建系统,具体按照如下步骤实施:

<p>4.根据权利要求3所述的大数据分析算法库的构建方法,其特征在于,所述步骤1中的每个算法来自于不同或相同的开源平台或自研平台且同一个算法在不同平台的实现过程都包含在算法库中;且每个算法在多个基准运行环境中的实现都有标准化的代码模板存储在本地Git代码库中;

5.根据权利要求4所述的大数据分析算法库的构建方法,其特征在于,所述步骤3中算子平台选择模块根据本流程节点算法输入数据规模、数据类型以及集群的硬件配置来选择合适的基准运行环境,并将每个算法对应的基准运行环境写入到流程描述文件中。

6.根据权利要求5所述的大数据分析算法库的构建方法,其特征在于,所述步骤4具体为:代码反向生成模块从本地Git代码库中获取算法所在的基准运行环境中的代码模板,并结合用户界面输入的对应算法的参数的输入,反向生成算法对应其基准运行环境的算法代码并展示在界面上供用户编辑,且每一个算法代码的命名与其在流程节点中的ID相同,用户编辑后获得用户编辑后的算法代码。

7.根据权利要求6所述的大数据分析算法库的构建方法,其特征在于,所述用户代码校验模块给每一个算法提供了标准的输入测试数据以及标准输出数据,将该标准的输入测试数据输入编辑后的算法代码,若输出数据的格式与标准的输出数据格式一致,则校验成功,则产生原生代码,即就是用户编辑后且经过效验的算法代码;若无法输出或格式不一致则校验失败。

8.根据权利要求7所述的大数据分析算法库的构建方法,其特征在于,所述步骤6具体为:

9.根据权利要求8所述的大数据分析算法库的构建方法,其特征在于,所述步骤6中,针对每一个流程描述文件,流程执行引擎循环直到流程描述文件中所有的算法节点都执行成功,流程执行引擎通过读取Redis缓存数据库中集群计算主机写入的算法执行状态来判断每个算法是否执行成功,流程执行引擎通过读取HBase缓存数据库中算法节点写入的算法执行结果来获取每一个算法执行后的数据。

10.根据权利要求9所述的大数据分析算法库的构建方法,其特征在于,所述步骤6中流程执行引擎解析流程描述文件,每隔n秒遍历一遍流程执行文件中的算法节点,如果某个算法的前置接节点都已经执行成功,则本次遍历就会执行该算法,即就是将该流程节点的算法代码下发到其基准运行环境所匹配的集群计算主机中执行;如果某个算法存在前置节点尚未执行成功,则本次遍历不执行该算法,等待下次遍历再判断是否执行;如果流程中存在节点执行出错,则整个分析流程标记为出错状态,并结束遍历;如果流程中所有节点都执行成功,则整个分析流程标记为成功状态,并结束遍历。

...

【技术特征摘要】

1.大数据分析算法库的构建系统,其特征在于,包括:分析流程构建模块,让用户可视化选择算法并将其首尾相接构建完整数据分析流程,并生成流程描述文件;算子平台选择模块,给分析流程构建模块构建的数据分析流程中的每一个算法选择基准运行环境,并将每个算法对应的基准运行环境写入到流程描述文件中;代码反向生成模块,生成每一个算法在其基准运行环境下的算法代码,使用户可手动编辑;户代码校验模块,校验用户手动编辑过的算法代码是否符合规则,若符合则产生原生代码;集群控制主机,部署有流程执行引擎,流程执行引擎下发各算法原生代码到与其环境相匹配的集群计算主机;集群计算主机,接收流程执行引擎下发的原生代码,完成数据的读取与输入,代码的编译与运行,数据的输出与缓存。

2.根据权利要求1所述的大数据分析算法库的构建系统,其特征在于,所述集群计算主机包括多类,每类集群计算主机只部署一种基准运行环境,集群控制主机根据算法的基准运行环境选择对应的集群计算主机下发原生代码。

3.大数据分析算法库的构建方法,其特征在于,采用权利要求2所述的大数据分析算法库的构建系统,具体按照如下步骤实施:

4.根据权利要求3所述的大数据分析算法库的构建方法,其特征在于,所述步骤1中的每个算法来自于不同或相同的开源平台或自研平台且同一个算法在不同平台的实现过程都包含在算法库中;且每个算法在多个基准运行环境中的实现都有标准化的代码模板存储在本地git代码库中;

5.根据权利要求4所述的大数据分析算法库的构建方法,其特征在于,所述步骤3中算子平台选择模块根据本流程节点算法输入数据规模、数据类型以及集群的硬件配置来选择合适的基准运行环境,并将每个算法对应的基准运行环境写入到流程描述文件中。

6.根据权利要求5所述的大数据分析算法库的构建方法,其特征在于,所述步骤4具体为:代码反向生成模...

【专利技术属性】
技术研发人员:许鑫刘欢孙丽娜岳广德李星靖稳峰
申请(专利权)人:西安交通大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1