一种基于云计算的大规模热连轧数据主题定制系统的制作方法

文档序号:6402062阅读:166来源:国知局
专利名称:一种基于云计算的大规模热连轧数据主题定制系统的制作方法
技术领域
本发明涉及钢铁冶金行业中大规模数据处理技术领域,尤其涉及热连轧数据挖掘的预处理领域。
背景技术
在带钢热连轧生产线日常的生产过程中,产生了海量的实时数据,这些数据中蕴含着丰富的科研价值。长期以来,由于对海量数据的重视程度不够,管理不善,导致数据长时间零散存放,没有得到有效的利用,从数据挖掘的角度上讲,是一种很大的浪费。这也在一定程度上,极大的影响了热连轧工艺的发展。随着计算机技术的发展,目前基本上所有热轧带钢厂,都实现了电子化信息化的管理。但是,这些仅仅是对现有数据的一些存储、统计与展示,如温度、厚度、板形和一些参数的直接展示。在工艺要求越来越高的今天,已经很难通过这种直接的展示来达到带钢质量上的进步。因此,对热轧数据进行更深一步的探索,发掘其内在的联系与规律,就显得愈发重要。原有的数据挖掘预处理的模式是先定主题,由主题规定一些需要的数据表构建对应主题的云数据仓库,而云数据仓库根据对应的主题从数据库中选取部分相关数据表来抽取主题所需要的数据。然而热轧钢原有系统制作工艺复杂,数据类型繁重,而且没有现在技术的良好设计结构,加上年代久远,传统的数据库建表组织抽取模式是先定义数据持久层的结构来抽取的信息的方式无法满足对未知需求下的设计,而且面对海量数据集,数据库的存储、拓展和分析能力也十分有限。此外,由于热轧钢系统实时数据数据类型复杂,加上专业人士也无法对系统及领域知识所面面俱到,很难针对系统改造提出确切的需求,这使得传统的“合作应用程序开发模式”,即通过信息技术人员与业务部门协同工作内容,在进行归类的基础上,标识出不同数据的主题区域成为了十分困难的事情。

发明内容
本发明所要解决的技术问题是为原有的热轧钢系统构建一个可用于分析挖掘的云数据仓库,并提供一个可拓展的主题定制功能,用于对未知需求条件下的复杂数据集进行灵活的主题定制,以便于进一步对数据进行挖掘和分析。本发明第一目的在于提出一种基于云计算的热连轧数据主题定制系统,其特征在于,所述系统包括ETL (信息抽取)模块、数据持久层模块和主题定制模块;
ETL (信息抽取)模块,用于解析热连轧系统数据结构,生成数据字典文件和表头文件,将数据字典文件和表头文件发送至数据持久层模块,并定时对热连轧系统采集文本数据进行格式化;
数据持久层模块,数据持久层模块用于根据从ETL模块接收的所述数据字典文件和表头文件为云数据仓库构建数据字典和数据表,并定时将格式化后的采集文本数据归并入云数据仓库; 主题定制模块,基于云数据仓库进行主题定制。优选地,ETL模块包括:
数据结构解析单元,用于解析热连轧系统数据结构生成数据字典文件和表头文件;
结构化模板库生成单元,用于对数据结构解析单元生成的表头文件进行格式化生成结构化模板库的模版文件;
文本数据格式化单元,用于将结构化模板库里的模版文件定时加载入数据解析模板库,对热连轧系统采集文本数据进行格式化,并发送到数据持久层模块。优选地,主题定制模块包括:
主题库查询单元,用于根据关键字查询主题库,确定主题库是否存在用户所需主题
项;
经验库推荐单元,用于当主题库中不存在所需主题项时,提供数据表的数据字典的属性选择,并将用户所选属性作为所需主题项属性,并基于用户所选属性在经验库中获取推荐主题项;
主题库注册单元,用于当所述推荐主题项中存在所需主题项时,将所需主题项注册入主题库;当所述推荐主题项中不存在所需主题项时,接受用户自定义的新主题项,并将所述新主题项注册入主题库;
通信单元,在操作数据时,用于向云数据仓库发送主题项的数据请求。本发明另一目的在于提出一种基于云计算的热连轧数据主题定制方法,其特征在于,该定制方法包括以下步骤:
步骤一、ETL模块对热连轧系统数据结构进行解析,生成数据字典文件和表头文件,将数据字典文件和表头文件发送至数据持久层模块,并定时对热连轧系统采集文本数据进行格式化;
步骤二,数据持久层模块根据接收的数据字典文件和表头文件,为云数据仓库创建数据字典和数据表,并定时归并ETL模块格式化后的采集文本数据;
步骤三,主题定制模块基于云数据仓库进行主题定制。优选地,步骤一具体包括以下步骤:
步骤1.1,ETL模块解析热连轧系统数据结构生成数据字典文件和表头文件;
步骤1.2,ETL模块对表头文件进行格式化生成结构化模板库的模版文件;
步骤1.3,ETL模块将结构化模板库里的模版文件定时加载入数据解析模板库,对热连轧系统采集文本数据进行格式化,并发送到数据持久层模块。优选地,步骤三具体包括以下步骤:
步骤3.1,主题定制模块根据关键字查询主题库,确定主题库是否存在用户所需的主题
项;
步骤3.2,当主题库中不存在所需主题项时,主题定制模块提供数据表的数据字典的属性选择,接收用户对数据字典中的属性选择,并基于用户所选属性在经验库中获取推荐主题项;
步骤3.3,当经验库推荐主题项中存在所需主题项时,将所需主题项注册入主题库;当经验库推荐主题项中不存在所需主题项时,经验库接受用户自定义的新主题项,并将所述新主题项注册入主题库; 步骤3.4,操作数据时,主题库向云数据仓库发送主题项的数据请求。优选地,步骤3.3中用户自定义新主题项的方式为:从经验库推荐主题项中获得最大匹配主题项,修改最大匹配主题项的属性,形成新主题项。本发明优点在于,它运用了区别于原数据挖掘预处理的正常过程,利用原有系统的数据结构,从数据抽取过程中动态生成云数据仓库,再利用云数据仓库的大规模并行化特点动态生成数据主题区域反向实现数据预处理过程,充分体现了系统的可拓展性和灵活性。而且系统具有允许用户自由灵活地定义和拓展主题项的特点,极大便利在未知需求下根据实际情况自定义主题项,并可以基于此系统拓展其他业务主题的数据挖掘和分析,这种方式是由一个不完备集向一个完备集转变的过程,且基于云计算存储的可自由扩展性,接近于无限的存储量也为这种拓展主题集提供极大的优势,让用户可以更好的利用系统发现更多潜在数据内部的规律。本发明可以对复杂的热轧钢系统有效的自解析,将全部数据集作为数据资源构建云数据仓库,大大减少了专业人士和程序开发人士在处理需求过程中的不协调性;特别是为未知需求的热轧钢系统提供自由的主题的定制功能,使得系统更灵活多用,方便的主题定制也给热轧钢领域提供更大的数据控制空间,更容易从数据中发现规律,指导生产。


图1本发明热连轧数据主题定制系统的结构示意图。图2本发明热连轧数据主题定制系统中ETL模块的数据处理流程。图3本发明热连轧数据主题定制系统的部分数据结构树。图4本发明热连轧数据主题定制系统数据持久层模块构建的字典文件和表头文件。图5本发明热连轧数据主题定制系统数据持久层模块的云数据仓库模型。图6本发明热连轧数据主题定制系统的可拓展主题定制模块与其他模块交互操作的流程图。图7本发明热连轧数据主题定制系统主题项定制实例图。图8本发明热连轧数据主题定制系统不完全匹配的主题项定制实例图。
具体实施例方式本发明提供一种构建在云计算基础上、旨在处理未知需求下的复杂热连轧数据集主题定制的系统。如图1所示,热连轧数据集主题定制系统包括:ETL (信息抽取)模块、数据持久层模块和可拓展主题定制模块,完成从数据采集、数据解析、数据入库、主题定制的数据预处理过程。系统通过ETL模块解析原有热连轧系统,并根据解析出的数据结构在数据持久层模块中动态构建数据表;可将热轧钢生产线上的实时采集数据和历史数据抽取到ETL模块临时文件夹;数据持久层模块每天定时将ETL模块采集的数据归并入云数据仓库中的表里;可拓展主题定制模块是通过经验库对已构建好的数据集定制主题,并通过其MapReduce模板容器为公共数据挖掘方法库提供支持,由用户根据经验为已拥有的数据集定制分析挖掘主题。
其中,ETL模块具有自动解析系统数据结构,构建云数据仓库表结构,定时结构化采集的文本数据三部分功能构成。ETL模块根据系统自身结构,通过解析热轧钢原系统头文件,生成系统数据的结构树,其中结构树节点包括字段名称和字段解释。例如在对C语言开发的热轧钢系统头文件(后缀为.h的文件)解析时,将头文件.h中以struct为关键词的结构体内容取出,将结构体名作为顶层节点,结构体内容作为次层节点,以此方式迭代即可构建成系统数据的结构树。获得结构树后,ETL模块递归遍历整棵数据结构树,拆分树中节点项,生成用于构建云数据仓库数据字典文件和用于存储数据的表头文件。ETL模块将解析完成的数据字典文件和表头文件发送到数据持久层模块,数据持久层模块根据这2个文件为云数据仓库生成数据字典和数据表。ETL模块将表头文件进行格式化变成结构化模板库的模版文件,方便将采集数据存入数据持久层的云数据仓库中;ETL模块将结构化模板库里的模版文件定时加载入数据解析模板库,并基于模板文件将生产线和历史数据里的文本数据进行格式化,以便将格式化的文本数据抽取到数据持久层模块的云数据仓库中。数据持久层模块主要由基于云存储的云数据仓库组成。云数据仓库用于结构化存储原轧钢系统的数据,其表结构和数据字典由ETL模块在解析系统构成中生成,它主要是定时归并ETL模块解析的数据到云数据仓库中并存储。本系统的云数据仓库设计构架于Hadoop云计算模型的分布式文件系统(HDFS)Hadoop Distributed File System上,它利用HDFS的多节点分布式特点存储数据资源,从而同时解决了数据处理的并行化和存储容量的动态扩展问题。在云数据仓库中,构建好的数据表通过云数据仓库的语句操作(类似于一般的sql语句),从ETL模块将格式化好的采集文本数据直接加载进云数据仓库的数据表中,在数据表的数据字典和数据项之间通过位置的一一映射方式,在操作数据时,通过数据字典的位置映射数据的位置来操作数据,这被称为数据操作的“读时模式”。通过这个模式给云数据仓库使用者提供类似于传统数据库的操作方式,给他们开发带来更大的便利。云数据仓库中的数据字典是定制主题的主要依据。它是主题项属性和数据表之间的主要联系,主题项属性通过数据字典访问到数据表中的数据,从而对数据进行相关的语句操作。可拓展主题定制模块包括主题库、经验库、MapReduce模板容器和公共数据挖掘方法库,主题定制模块主要是在构建好的云数据仓库上,根据用户自己的经验和知识,参考数据字典的说明和经验库的导向指定一些用户需要数据项构建主题,由于云数据仓库是对整个系统数据的存储,主题构建就是对系统结构表的一个动态划分过程。主题库是定制好的具有多个主题(如:质量主题、参数主题等)的归档主题集,每个主题包括若干主题项,包含表名、列名以及主题名等相关数据,主题其实是一个表区域(此区域可以重叠),这是为云计算并行分析划分的区域,而主题定制也只是一个区域划分的过程,它表示这个主题可控的数据大小。主题区域还负责管理数据集的并行化,MapReduce模板容器就是为数据挖掘公共方法库提供并行化支持设计的。它可以在一次并行化过程对多个主题进行挖掘和分析。归档好的主题集即为经验库,是以数据表的形式存放于数据库中,经验库是通过已有的一些相关领域的数据挖掘系统,继承他们已定制的归档好的比较完善的主题库,来为本系统的未知需求作导向,采用最大匹配度的算法来尽可能从经验库给用户提供帮助。经验库需要配置相关的领域同义词词表来匹配不同系统之间的语义误差,将系统之间的误差减少到最小。具体可扩展主题定制流程如下:用户根据查询主题库了解是否有自己所要的主题项存在于主题库;如果没有,用户申请查看云数据仓库中的数据表的数据字典,当用户选定一个数据表的数据项时,系统会自动给出经验库中存在的此属性的相关主题项推荐,不让用户盲目选择,然后用户通过实际需求选择使用或是不使用推荐主题项;当用户定制的需求在经验库中不存在时,用户自定义的主题项会注册入经验库,作为自学习的一个过程,并且经验库会定期统计主题库的属性表,将出现频率较高的属性作为敏感属性,它们作为用户开始定制主题的关键属性推荐给用户;新主题项注册入主题库,并在字典中划分出这个主题项所需要的区域和范围;当主题区域划定后,MapReduce模板容器可以为公共数据挖掘分析方法提供MapReduce的并行算法支持;它是一个并行化集成器,对同一数据集的多个主题项采用同一种挖掘算法时可以一次性处理,大大提高数据分析挖掘的速度和效率。公共数据挖掘方法库是用MapReduce实现的一些数据挖掘的公共方法,如:关联规则、神经网络、遗传算法和决策树方法等等,使用时动态加载到MapReduce模板容器,大大减少了数据挖掘人员的工作量,同时,利用MapReduce模板容器,数据管理人员可以轻松使用容器提供的API编写一些主题分析的程序,更方便的契合系统,发挥并行挖掘的效率。基于上述热连轧数据集主题定制系统,对热连轧工业领域复杂数据集的数据进行采集、分类、建库,进而达到有效的主题定制,其中具体方法流程如下:
步骤一、ETL模块对热轧钢系统数据结构进行解析,生成数据字典文件和表头文件,将数据字典文件和表头文件发送至数据持久层模块,并定时对热连轧系统采集文本数据进行格式化。ETL模块的流程如图2所示:
步骤1.1,ETL模块解析热轧钢系统数据结构生成数据字典文件和表头文件。该步骤为初始化步骤,ETL模块分析热轧钢原系统头文件,生成热轧钢原系统数据的结构树(结构树节点包括字段名称和字段解释),ETL模块递归遍历整棵数据结构树,拆分树中节点项,生成用于构建云数据仓库数据字典文件和用于存储数据的表头文件;之后,ETL模块将解析完成的数据字典文件和表头文件发送到数据持久层模块,以便数据持久层模块根据上述2个文件为云数据仓库生成数据字典和数据表。上述结构树是由多层节点构成的多层树状结构,鉴于结构树的复杂度,以其中的一个分支“轧线数据”的子结构树为例,如图3所示,顶层节点表示的含义是轧线数据结构体的名字,同样也是云数据仓库构建轧线数据表的名字;第二层节点表示轧线数据所包含的属性,同样它们作为轧线数据表中的字段。第三层节点类似于第二层节点与第一层节点的关系,它们是对第二层节点的说明,同样也是构建第二层节点表的字段。结构树生成后,ETL模块以广度遍历的方式递归遍历整棵数据结构树,拆分树中节点项,生成数据字典文件和表头文件,用于构建云数据仓库表头。以图3的“轧线数据”子结构树为例,将节点“轧线数据”作为大标签“〈轧线数据 >”,然后遍历到它的子节点,分别
是“钢卷属性”、“粗轧预设定结果数据”.....等,将它们作为xml中“〈轧线数据 >”的子标
签“<1>钢卷属性</1>”,“<2>粗轧预设定结果数据</2>”,...,后续节点以此类推完成数据字典文件和表头文件的生成。数据字典文件和表头文件的样例以如下XML文件生成。数据字典文件样例:< xml version=, .0〃T>
< xml-stylesheet type = ^text/xsl ^ 二〃configuration.xsl〃T>
<轧线参数>
〈1>钢卷号</l>
<2> 钢种 </2>
<3>板还号</3>
<4>材质代码</4>
</轧线参数>
<粗轧参数>
</粗轧参数>。表头文件样例:
< xml version=, .0"T>
< xml-stylesheet type = ^text/xsl ^ 二〃configuration.xsl〃T>
<轧线参数>
<l>p.mill.pr1.Matld〈/1>
<2>p.mill.pr1.SteelGrade</2>
<3>p.mill.pr1.SlabNo</3>
</轧线参数>
<粗轧参数>
</粗轧参数>
..0在完成了原始轧钢系统的分析和生产线热连轧数据集主题定制系统的初始化后,需要将生产线上采集的文本数据写入云数据仓库中,为了便于采集数据的写入,需要进行采集文本数据的格式化。步骤1.2,ETL模块对表头文件进行格式化生成结构化模板库的模板文件。为了便于采集数据存入数据持久层的云数据仓库中。ETL模块根据上述的数据字典的字典项和表头文件的表头项方式进行排版生成对应格式化的结构化模板库的模板文件,模板库形式同上述XML格式,以数字表示位置的来抽取非结构化的文件或采集的二进制文件。 结构化模板库的模版文件是提取文件数据时用的代码格式,它用于将采集文本数据(包括生产线和历史数据里的文本数据)格式化成云数据仓库抽取顺序格式的文件,以便云数据仓库将数据存入对应的合理位置。步骤1.3,ETL模块根据结构化模板库里的模版文件定时加载入数据解析模板库,将采集文本数据(包括生产线和历史数据里的文本数据)格式化,并发送到数据持久层模块。
在形成结构化模板库后,ETL模块中的数据解析模板库会定时对采集数据进行格式化,具体步骤为:首先,数据解析模板库实时或定时获取采集数据和数据样本集的文本数据;其次,在规定的时间,数据解析模板库中加载入结构化模板库;最后,数据解析模板库根据加载的结构化模板库对采集数据数据样本集的文本数据进行格式化。步骤二,数据持久层模块根据接收的数据字典文件和表头文件,构建云数据仓库创建数据字典和数据表,数据持久层模块中的云数据仓库定时归并ETL模块格式化后的采集文本数据。数据持久层模块从ETL模块获取数据字典文件和表头文件,并为云数据仓库创建数据字典和数据表, 以步骤1.1中的“轧线数据”为例具体为:轧线数据的数据字典表将“<1>钢卷号</1>”作为第一字段,“〈2>钢种</2>”作为第二字段,“〈3>板坯号</3>”作为第三字段以此类推;而与该数字字典相关的数据表中则把对应的“<1>P.mill.pr1.Matld〈/1>”作为第一字段,“<2>p.mill.pr1.SteelGrade〈/2>”作为第二字段,“<3>p.mill,pr1.SlabNo〈/3>”作为第三字段,使它们各自生成的表在云数据仓库中形成字段位置一一对应关系,如图4所示。云数据仓库模型如图5,它建于hadoop云计算模型的分布式文件系统HDFS(Hadoop Distributed File System)之上,由 MapReduce 实现了云数据仓库的操作方法。在云数据仓库中,构建好的数据表通过云数据仓库的语句操作(类似于一般的sql语句),从ETL模块将格式化好的采集文本数据直接加载进云数据仓库的数据表中,在数据表中数据字典和数据项之间通过位置的一一映射方式,在操作数据时,通过字典的位置映射数据的位置来操作数据,称为数据操作的“读时模式”。下面是一个数据表的例子,表I是云数据仓库中存储的从ETL模块获取数据,它们是一种流式的非结构化的数据,对于数据分析和主题定制都无法通过这样数据进行操作。云数据仓库是通过数据映射建立的数据模型,它是根据数据库的模型设计的一种位置读取映射关系,将数据文件、表头文件和数据字典文件通过位置映射成一个整体,然后通过类似于传统数据库的操作方式sql语句(非标准的sql语句)来操作数据并行存取,表2是解析后的数据,它是通过云数据仓库的数据查询操作(select * from product)从云数据仓库中查询出的部分数据行,以便在后的数据分析和主题定制处理。云数据仓库中存储的数据:
表I
权利要求
1.一种基于云计算的热连轧数据主题定制系统,其特征在于,所述系统包括ETL (信息抽取)模块、数据持久层模块和主题定制模块; ETL (信息抽取)模块,用于解析热连轧系统数据结构,生成数据字典文件和表头文件,将数据字典文件和表头文件发送至数据持久层模块,并定时对热连轧系统采集文本数据进行格式化; 数据持久层模块,数据持久层模块用于根据从ETL模块接收的所述数据字典文件和表头文件为云数据仓库构建数据字典和数据表,并定时将格式化后的采集文本数据归并入云数据仓库; 主题定制模块,基于云数据仓库进行主题定制。
2.如权利要求1所述的热连轧数据主题定制系统,其特征在于,ETL模块包括: 数据结构解析单元,用于解析热连轧系统数据结构生成数据字典文件和表头文件; 结构化模板库生成单元,用于对数据结构解析单元生成的表头文件进行格式化生成结构化模板库的模版文件; 文本数据格式化单元,用于将结构化模板库里的模版文件定时加载入数据解析模板库,对热连轧系统采集文本数据进行格式化,并发送到数据持久层模块。
3.如权利要求1所述的热连轧数据主题定制系统,其特征在于,主题定制模块包括: 主题库查询单元,用于根据关键字查询主题库,确定主题库是否存在用户所需主题项; 经验库推荐单元,用于当主题库中不存在所需主题项时,提供数据表的数据字典的属性选择,并将用户所选属性作为所需主题项属性,并基于用户所选属性在经验库中获取推荐主题项; 主题库注册单元,用于当所述推荐主题项中存在所需主题项时,将所需主题项注册入主题库;当所述推荐主题项中不存在所需主题项时,接受用户自定义的新主题项,并将所述新主题项注册入主题库; 通信单元,在操作数据时,用于向云数据仓库发送主题项的数据请求。
4.一种基于云计算的热连轧数据主题定制方法,其特征在于,该定制方法包括以下步骤: 步骤一、ETL模块对热连轧系统数据结构进行解析,生成数据字典文件和表头文件,将数据字典文件和表头文件发送至数据持久层模块,并定时对热连轧系统采集文本数据进行格式化; 步骤二,数据持久层模块根据接收的数据字典文件和表头文件,为云数据仓库创建数据字典和数据表,并定时归并ETL模块格式化后的采集文本数据; 步骤三,主题定制模块基于云数据仓库进行主题定制。
5.一种如权利要求4所述的热连轧数据主题定制方法,其特征在于,步骤一具体包括以下步骤: 步骤1.1,ETL模块解析热连轧系统数据结构生成数据字典文件和表头文件; 步骤1.2,ETL模块对表头文件进行格式化生成结构化模板库的模版文件; 步骤1.3,ETL模块将结构化模板库里的模版文件定时加载入数据解析模板库,对热连轧系统采集文本数据进行格式化,并发送到数据持久层模块。
6.一种如权利要求4所述的热连轧数据主题定制方法,其特征在于,步骤三具体包括以下步骤: 步骤3.1,主题定制模块根据关键字查询主题库,确定主题库是否存在用户所需的主题项; 步骤3.2,当主题库中不存在所需主题项时,主题定制模块提供数据表的数据字典的属性选择,接收用户对数据字典中的属性选择,并基于用户所选属性在经验库中获取推荐主题项; 步骤3.3,当经验库推荐主题项中存在所需主题项时,将所需主题项注册入主题库;当经验库推荐主题项中不存在所需主题项时,经验库接受用户自定义的新主题项,并将所述新主题项注册入主题库; 步骤3.4,操作数据时,主题库向云数据仓库发送主题项的数据请求。
7.—种如权利要求6所述的热连轧数据主题定制方法,其特征在于,步骤3.3中用户自定义新主题项的方式为:从经验库推荐主题项中获得最大匹配主题项,修改最大匹配主题项的属性,形成 新主题项。
全文摘要
本发明提供一种基于云计算的大规模热连轧数据主题定制系统,包括ETL模块、数据持久层模块和主题定制模块。ETL模块用于实现原始热轧钢系统数据解析、云数据仓库数据表构建和数据抽取功能;数据持久层模块利用云数据仓库组织和存储ETL模块抽取的结构化数据;针对云数据仓库中数据主题分析问题,主题定制模块通过主题库、经验库为用户提供合理的主题定制方案,并通过公共数据挖掘方法库和MapReduce模版容器提供通用的数据分析功能,提高数据管理人员的工作效率。本发明提供的主题定制系统具有灵活的可扩展性,可集成于任意原始热连轧数据系统,处理用户在实际需求不明确时对复杂数据的主题分类问题,为热轧钢数据挖掘分析提供可靠的数据集保障。
文档编号G06F17/30GK103198138SQ20131013044
公开日2013年7月10日 申请日期2013年4月16日 优先权日2013年4月16日
发明者邹丽晖, 张德政, 华镇, 阿孜古丽, 孙义, 谢永红, 刘宏岚, 杜鑫 申请人:北京科技大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1