一种大数据处理流程的执行计划生成方法
技术领域
本发明实施例涉及大数据技术领域,具体涉及一种大数据处理流程的执行计划生成方法。
背景技术
现在的社会是一个高速发展的社会,科技发达,信息流通,人们之间的交流越来越密切,生活也越来越方便,大数据就是这个高科技时代的产物。大数据为进行趋势预测与商业决策带来便利的同时,也给我们带来巨大的挑战,特别是在大数据的处理过程中出现一系列亟待解决的问题。
一般来说大数据处理流程具体包括四个环节:1、数据收集,原始数据种类多样,格式、位置、存储、时效性等迥异;2、数据预处理,数据收集从异构数据源中收集数据并转换成相应的格式方便处理;3、数据存储,收集好的数据需要根据成本、格式、查询、业务逻辑等需求,存放在合适的存储中,方便进一步的分析;4、数据处理分析,通过整理好的数据分析帮助企业决策,将海量的来自前端的数据快速导入到一个集中的大型分布式数据库或者分布式存储集群,利用分布式技术来对存储于其内的集中的海量数据进行普通的查询和分类汇总等,以此满足大多数常见的分析需求。
但是现有的数据处理流程中,每一个环节均具有重大的挑战和难度,其中对于数据处理分析来说,主要的难度如下:
(1)导入数据量大,查询涉及的数据量大,查询请求多,而且无法只能对所有数据进行统一查询,无法将所有数据分类查询,导致查询分析受到限制,并不能实现进一步的数据挖掘,无法分类对比分析;
(2)同时对数据去重的难度大,重复数据占用数据库内存,同时导致数据处理分析的精度低;
(3)预处理环节没有规范,数据处理任务之间在数据没有关联关系,数据预处理效果不显著,导致后续的数据处理分析精度低。
发明内容
为此,本发明实施例提供一种大数据处理流程的执行计划生成方法,采用每个数据采集终端与分配的唯一数据传输路径一一对应,因此将数据流发送到数据仓库时,每个数据采集终端的数据流将形成一个独立且唯一的传输路径,通过查询传输路径,即可筛选出对应传输路径的数据采集终端所有数据,有效解决现有技术中数据仓库无法快速筛选出同一个数据采集端口的数据流的问题。
为了实现上述目的,本发明的实施方式提供如下技术方案:一种大数据处理流程的执行计划生成方法,包括如下步骤:
步骤100、对每个数据采集终端匹配独立且唯一的数据传输路径,区别定义每个数据传输路径的名称,生成每个数据流的不同传输路径,并且在每个数据流上新增表示传输路径的Port_ID属性;
步骤200、数据流以队列方式顺次通过数据传输路径进行数据预处理,定义字符串Data_ID参数统计通过数据传输路径的数据流数量,并且在顺序传输的每个数据流上新增表示队列序号的Data_ID属性;
步骤300、数据流传输至数据仓库后进行预处理,定义每个预处理流程的序号Manage_ID,数据流每通过一个处理流程,则数据流上新增表示处理流程序号的Manage_ID属性;
步骤400、数据流按序进行下一步处理流程时,对数据流的Manage_ID检测,判断数据处理的正确流程;
步骤500、预处理后的数据流传输路径Port_ID参数和队列序号Data_ID参数映射到数据流包含的单个独立数据上,每个数据流的独立数据上新增传输路径Port_ID属性和队列序号Data_ID属性。
作为本发明的一种优选方案,在步骤100中,利用数据传输路径区分不同数据采集终端的数据,保证可以实现整体数据采集终端的大数据统计处理分析,同时也可以实现单个数据采集终端的部分数据处理分析,当数据采集终端数量大于单个数据传输路径数量时,可采用树状结构分层采集数据,具体步骤如下:
对比数据采集终端的数量和原始数据传输路径的数量,如果数据采集终端的数量小于原始数据传输路径的数量,则直接将数据采集终端与原始数据传输路径对应匹配进行数据传输;
如果数据采集终端的数量大于数据传输路径的数量,则在原始数据传输路径的每个端口连接第二层传输路径,以及在第二层传输路径的每个端口连接第三层传输路径,以此类推,直至数据采集终端的数量与数据传输路径的端口数量相同;
第三层传输路径将数据传输到第二层数据端口,第二层数据端口将数据集中归位到原始数据传输路径,实现多个数据采集终端的数据统一分析处理;
通过第三层传输路径、第二层数据端口和原始数据传输路径之间的端口传输名称,可以对每个数据采集终端的数据单独分析处理。
作为本发明的一种优选方案,在步骤100中,利用名称字符串Port_ID对数据采集终端的传输路径进行定义,从而保证每个数据采集终端具有独立唯一的传输路径,方便统一管理,名称字符串Port_ID定义传输路径的具体方式为:
字符串Port_ID定义原始数据传输路径的名称为A1、A2……;
字符串Port_ID定义原始第二层数据端口的名称为B1、B2、B3……;
字符串Port_ID定义原始第三层数据端口的名称为C1、C2、C3、C4、C5……;
以此类推,则数据采集终端的传输路径为C1B1A1、C2B1A1、C3B2A1、C5B3A2……。
作为本发明的一种优选方案,所述传输路径具体为传输路径Port_ID参数,所述传输路径Port_ID参数作为每个数据流的特征属性,每个所述数据采集终端的数据流可通过Port_ID特征属性分类,通过传输路径Port_ID参数查询独立的单个所述数据采集终端的数据,对数据独立处理分析。
作为本发明的一种优选方案,在步骤200中,数据流以队列方式等待传输,利用计数法对队列序号Data_ID参数顺次增加,在数据仓库内实现数据重复剔除功能的主要步骤为:
首先,通过查询传输路径Port_ID,筛选出同一传输路径,代表同一数据采集终端的数据流集合,;
然后,在每个独立的数据流集合中,通过对比数据流的队列序号Data_ID属性,筛选出数据重合的数据流;
最后,剔除重复多余的数据流,只保留一个数据流。
作为本发明的一种优选方案,在步骤300中,所述数据预处理过程顺序包括数据清理、数据集成、数据归约和数据转换四个环节,并且所述处理流程序号Manage_ID分别对四个环节定义特征参数。
作为本发明的一种优选方案,所述处理流程序号Manage_ID具有四个分别对应数据预处理过程的字符串,当数据流经过数据预处理过程的数据清理后,在对应字符串的位置上赋值,当数据流经过数据预处理过程的数据集成后,在对应字符串的位置上赋值,以此类推。
作为本发明的一种优选方案,在步骤400中,通过数据流的Manage_ID检测,可确保每个数据流均进行了数据预处理,并且按照预处理的标准顺序进行数据处理,从而提高数据处理分析的准确性,减少噪声干扰,判断数据处理的正确流程的具体步骤为:
步骤401、在数据流经过数据预处理过程的数据清理完成后,对处理流程序号Manage_ID的第一个字符串赋值;
步骤402、在数据流经过数据预处理过程的数据集成开始之前,对数据流的处理流程序号Manage_ID的第一个字符串检测;
步骤403、当第一个字符串存在数值,则该数据流顺利开始数据预处理过程的数据集成,当第一个字符串不存在数值,则该数据流重新返回数据预处理过程的数据清理进行处理;
步骤404、当在数据流经过数据预处理过程的数据集成完成后,同样的对数据流的处理流程序号Manage_ID的第二个字符串赋值;
步骤405、重复步骤402的操作,对数据流的处理流程序号Manage_ID的第二个字符串检测,以此类推。
作为本发明的一种优选方案,在步骤300中,数据采集终端的数据流新增了传输路径Port_ID参数、队列序号Data_ID参数和处理流程序号Manage_ID参数,在步骤500中,单个独立数据新增了传输路径Port_ID参数和队列序号Data_ID参数。
作为本发明的一种优选方案,所述单个独立数据和数据流上的传输路径Port_ID参数、队列序号Data_ID参数和处理流程序号Manage_ID参数均可以设置为隐藏特征,在数据仓库内只显示数据采集终端的初始数据参数。
本发明的实施方式具有如下优点:
(1)本发明的每个数据采集终端的数据流对应一个独立且唯一的传输路径,这个独立且唯一的传输路径可作为每个数据采集终端的数据流属性,通过查询传输路径,即可筛选出对应传输路径的数据采集终端所有数据,即能完成所有数据采集终端的海量数据处理,同时还可针对每个数据采集终端进行独立的数据处理分析,既保证大数据处理过程中的统一性,又提供了大数据处理过程中的对比关联性;
(2)本发明将数据流的传输路径和队列序号两个属性结合,可单独对每个数据采集终端的数据流进行去重处理,去重效率高,并且处理维度相对整个数据仓库的去重维度小,查询请求少,提高去重操作的稳定性和快速性;
(3)本发明保证数据流按照数据预处理的标准环节顺序进行处理,避免出现预处理环节遗漏的情况,提高数据预处理的有效标准性,将数据预处理的每个环节关联起来,以规则的形式强化了分析任务之间在数据上的关联关系,提高了大数据分析的效率,提高后续数据处理分析挖掘的准确性。
附图说明
为了更清楚地说明本发明的实施方式或现有技术中的技术方案,下面将对实施方式或现有技术描述中所需要使用的附图作简单地介绍。显而易见地,下面描述中的附图仅仅是示例性的,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图引伸获得其它的实施附图。
本说明书所绘示的结构、比例、大小等,均仅用以配合说明书所揭示的内容,以供熟悉此技术的人士了解与阅读,并非用以限定本发明可实施的限定条件,故不具技术上的实质意义,任何结构的修饰、比例关系的改变或大小的调整,在不影响本发明所能产生的功效及所能达成的目的下,均应仍落在本发明所揭示的技术内容得能涵盖的范围内。
图1为本发明实施方式中执行计划生成方法的流程示意图;
具体实施方式
以下由特定的具体实施例说明本发明的实施方式,熟悉此技术的人士可由本说明书所揭露的内容轻易地了解本发明的其他优点及功效,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明提供了一种大数据处理流程的执行计划生成方法,大数据处理流程一般来说顺序包括数据收集、数据预处理、数据存储、数据处理与分析以及数据展示,由于数据采集终端通过各类传感器或前端埋点收集数据,并且将数据统一传输发送到搭建好的数据仓库内进行集中管理,并且按序数据预处理,但是由于数据采集终端的数量比较多,将会产生海量的来自前端的数据。
为了保证数据库内的数据可以快速的查询,可将不同数据采集终端的数据分类汇总,并且及时的删除数据库中的重复数据,避免重复无效数据占据数据库的内存空间,本发明特在数据采集终端的传输和预处理过程中,对每个数据增加特定且唯一的组合属性,保证每个数据流的属性差异化,便于数据查询和分类汇总。
具体包括如下步骤:
步骤100、对每个数据采集终端匹配独立且唯一的数据传输路径,区别定义每个数据传输路径的名称,生成每个数据流的不同传输路径,并且在每个数据流上新增表示传输路径的Port_ID属性。
需要补充说明的是,现有技术中,多个数据采集端口的数据传输到数据仓库后,根据传输的时间前后,在数据仓库中呈分布式按序排列,因此同一个数据采集端口的数据并不是集中存储的,而是呈现多个数据采集端口的分布式交叉存储,因此在数据仓库中,只能对所有数据流进行处理分析,并不能快速筛选出同一个数据采集端口的数据流,只能从数据采集端口传输处理和分析结果,大数据处理的执行过程不便,数据分析效率低。
步骤100的具体意义是多个数据采集终端在将数据发送到数据仓库时,在数据仓库与数据采集终端之间设置多个数据传输路径,每个数据采集终端与分配的唯一数据传输路径一一对应,因此将数据流发送到数据仓库时,每个数据采集终端的数据流将形成一个独立且唯一的传输路径,这个独立且唯一的传输路径可作为每个数据采集终端的数据流属性,通过查询传输路径,即可筛选出对应传输路径的数据采集终端所有数据,可有效解决现有技术中数据仓库无法快速筛选出同一个数据采集端口的数据流的问题。
在步骤100中,利用数据传输路径区分不同数据采集终端的数据,保证可以实现整体数据采集终端的大数据统计处理分析,同时也可以实现单个数据采集终端的部分数据处理分析,当数据采集终端数量大于单个数据传输路径数量时,可采用树状结构分层采集数据,具体步骤如下:
对比数据采集终端的数量和原始数据传输路径的数量,如果数据采集终端的数量小于原始数据传输路径的数量,则直接将数据采集终端与原始数据传输路径对应匹配进行数据传输。
如果数据采集终端的数量大于数据传输路径的数量,则在原始数据传输路径的每个端口连接第二层传输路径,以及在第二层传输路径的每个端口连接第三层传输路径,以此类推,直至数据采集终端的数量与数据传输路径的端口数量相同。
第三层传输路径将数据传输到第二层数据端口,第二层数据端口将数据集中归位到原始数据传输路径,实现多个数据采集终端的数据统一分析处理。
通过第三层传输路径、第二层数据端口和原始数据传输路径之间的端口传输名称,可以对每个数据采集终端的数据单独分析处理。
需要补充说明的是,原始数据传输路径即表示数据仓库自带的数据传输路径,而第二层数据端口、第三层传输路径……则为虚拟的端口,目的是为每个数据采集终端提供独立且唯一的传输路径。
原始数据传输路径、第二层传输路径和第三层数据端口形成树状分层结构,树状分层结构的底层分支代表多个数据采集终端的数量,树状分层结构的底层与顶层之间的路线代表每个数据采集终端的数据流传输路线,因此通过虚拟端口构造树状分层结构,可确保在原始数据传输路径不足的情况下,数据采集终端的数据流也具有唯一的传输路径,作为数据流的可以查询筛选的属性。
另外构造树状分层结构传输数据还存在一个优势,多个数据采集终端共用一个原始数据传输路径,不仅每个数据采集终端的数据流具有唯一的传输路径,同时多个数据采集终端的传输路径不同,因此数据在传输的过程中互不干扰,可减少干扰产生的数据损坏情况。
在确定数据传输路径的层数后,利用字符串Port_ID对数据采集终端的传输路径进行定义,从而保证每个数据采集终端具有独立唯一的传输路径,方便统一管理,名称字符串Port_ID定义传输路径的具体方式为:
字符串Port_ID定义原始数据传输路径的名称为A1、A2……;
字符串Port_ID定义原始第二层数据端口的名称为B1、B2、B3……;
字符串Port_ID定义原始第三层数据端口的名称为C1、C2、C3、C4、C5……;
以此类推,则数据采集终端的传输路径为C1B1A1、C2B1A1、C3B2A1、C5B3A2……。
由此可见,通过构建第二层数据端口、第三层数据端口……的虚拟端口,组成原始数据传输路径、第二层数据端口、第三层数据端口……的树状分层结构,则每个数据采集终端的数据传输路径各不相同。
传输路径具体为传输路径Port_ID参数,所述传输路径Port_ID参数作为每个数据流的特征属性,每个所述数据采集终端的数据流可通过Port_ID特征属性分类,通过传输路径Port_ID参数查询独立的单个所述数据采集终端的数据,对数据独立处理分析。
因此本发明将传输路径作为数据流的Port_ID属性,只要在数据仓库中搜索Port_ID属性,即可快速查询到每个数据采集终端的所有分类数据,因此可实现在数据仓库的快速查询工作,在数据仓库中,不仅可以进行所有数据采集终端的海量数据处理,同时还可针对每个数据采集终端进行独立的数据处理分析,既保证大数据处理过程中的统一性,又提供了大数据处理过程中的对比关联性。
步骤200、数据流以队列方式顺次通过数据传输路径传输至数据仓库内,进行数据预处理,定义字符串Data_ID参数统计通过每个数据传输路径的数据流数量,并且在顺序传输的每个数据流上新增表示队列序号的Data_ID属性。
众所周知,数据流以队列方式等待传输,利用计数法对队列序号Data_ID参数顺次增加,在数据仓库内实现数据重复剔除功能的主要步骤为:
首先,通过查询传输路径Port_ID,筛选出同一传输路径,代表同一数据采集终端的数据流集合,;
然后,在每个独立的数据流集合中,通过对比数据流的队列序号Data_ID属性,筛选出数据重合的数据流;
最后,剔除重复多余的数据流,只保留一个数据流。
重复数据删除是大数据处理流程的预处理操作之一,它是指通过去除掉数据集中重复的部分,以达到减少存储数据所占用空间的目标,同时提高数据处理分析结果的准确性。
因此本发明将数据流的传输路径Port_ID和队列序号Data_ID两个属性结合,可单独对每个数据采集终端的数据流进行去重处理,去重效率高,并且处理维度相对整个数据仓库的去重维度小,查询请求少,提高去重操作的稳定性和快速性。
步骤300、数据流传输至数据仓库后进行预处理,定义每个预处理流程的序号Manage_ID,数据流每通过一个处理流程,则数据流上新增表示处理流程序号的Manage_ID属性。
数据采集终端的数据流进行预处理时,在数据流上已存在传输路径Port_ID属性和队列序号Data_ID属性,并且数据采集终端在创建原始的数据流时,即在数据流上增加处理流程序号属性,只是在预处理之前,每个数据流的处理流程序号属性为空值。
数据预处理过程顺序包括数据清理、数据集成、数据归约和数据转换四个环节,并且所述处理流程序号Manage_ID分别对四个环节定义特征参数。
数据流分别经过数据清理、数据集成、数据归约和数据转换四个环节存储在数据仓库中,其中,每完成一个处理环节,则Manage_ID对数据流上的对应属性赋值,从而在进行下一个处理环节之前,通过检测处理流程序号上的赋值字符是否存在,保证数据流按照四个环节的顺序处理,提高预处理的有效性。
处理流程序号Manage_ID具有四个分别对应数据预处理过程的字符串,当数据流经过数据预处理过程的数据清理后,在对应字符串的位置上赋值,当数据流经过数据预处理过程的数据集成后,在对应字符串的位置上赋值,以此类推。
需要补充说明的是,本实施方式只是提供具有四个环节的数据预处理实施例,具体的环节视数据采集终端的数据类型自定义,对于只有一个环节的数据预处理则不需要在数据流上增加Manage_ID属性。
步骤400、数据流按序进行下一步处理流程时,对数据流的Manage_ID检测,判断数据处理的正确流程。
在步骤400中,通过数据流的Manage_ID检测,可确保每个数据流均进行了数据预处理,并且按照预处理的标准顺序进行数据处理,从而提高数据处理分析的准确性,减少噪声干扰,判断数据处理的正确流程的具体步骤为:
步骤401、在数据流经过数据预处理过程的数据清理完成后,对处理流程序号Manage_ID的第一个字符串赋值;
步骤402、在数据流经过数据预处理过程的数据集成开始之前,对数据流的处理流程序号Manage_ID的第一个字符串检测;
步骤403、当第一个字符串存在数值,则该数据流顺利开始数据预处理过程的数据集成,当第一个字符串不存在数值,则该数据流重新返回数据预处理过程的数据清理进行处理;
步骤404、当在数据流经过数据预处理过程的数据集成完成后,同样的对数据流的处理流程序号Manage_ID的第二个字符串赋值;
步骤405、重复步骤402的操作,对数据流的处理流程序号Manage_ID的第二个字符串检测,以此类推。
步骤400的主要功能意义是,保证数据流按照数据预处理的标准环节顺序进行处理,避免出现预处理环节遗漏的情况,提高数据预处理的有效标准性,将数据预处理的每个环节关联起来,以规则的形式强化了分析任务之间在数据上的关联关系,提高了大数据分析的效率,提高后续数据处理分析挖掘的准确性。
因此在预处理的数据集成(第二环节)开始之前,先检测数据流的Manage_ID第一个字符串,如果该数据流的第一个字符串为空值,则代表该数据流遗漏数据清理(第一环节),则需要重新进行数据清理(第一环节)处理操作,如果该数据流的第二个字符串有赋值时,则代表该数据流已经完成数据清理(第一环节),则开始数据集成(第二环节)处理操作,以此类推,保证所有的数据流按序完成四个环节的处理操作。
根据上述,当数据流经过上述步骤100至步骤400的处理后,数据采集终端的数据流新增了传输路径Port_ID参数、队列序号Data_ID参数和处理流程序号Manage_ID参数,实现数据去重,数据按序预处理,以及方便后续的单个数据采集终端的数据处理分析操作。
步骤500、预处理后的数据流传输路径Port_ID参数和队列序号Data_ID参数映射到数据流包含的单个独立数据上,每个数据流的独立数据上新增传输路径Port_ID属性和队列序号Data_ID属性。
当一个数据流包含两个或者两个以上的独立数据,且每个数据具有不同的属性时,数据处理分析不仅是对数据流,同时还对独立数据的处理和分析,比如说一个数据流其实是文件压缩包,那么文件压缩包内的独立文件对应本发明的独立数据,如果说一个数据流就是一个独立的文件,则无需步骤500的操作。
本实施方式具体举例为数据流代表一个文件压缩包的情况,在步骤500中,单个独立数据新增了传输路径Port_ID参数和队列序号Data_ID参数,因此不仅数据流上需要增加传输路径Port_ID属性和队列序号Data_ID属性,独立数据上也要增加传输路径Port_ID属性和队列序号Data_ID属性,便于对独立数据的处理分析和去重工作。
在步骤500之后,单个独立数据和数据流上的传输路径Port_ID参数、队列序号Data_ID参数和处理流程序号Manage_ID参数均可以设置为隐藏特征,在数据仓库内只显示数据采集终端的初始数据参数。
因此只有需要使用到传输路径Port_ID参数、队列序号Data_ID参数和处理流程序号Manage_ID参数时,将其显示,即可完成上述功能操作。
虽然,上文中已经用一般性说明及具体实施例对本发明作了详尽的描述,但在本发明基础上,可以对之作一些修改或改进,这对本领域技术人员而言是显而易见的。因此,在不偏离本发明精神的基础上所做的这些修改或改进,均属于本发明要求保护的范围。