一种知识挖掘系统及方法与流程

文档序号:23500230发布日期:2021-01-01 18:04阅读:178来源:国知局
一种知识挖掘系统及方法与流程

本申请涉及数据挖掘技术领域,尤其涉及一种知识挖掘系统及方法。



背景技术:

实际工作中,当我们面对海量数据时,很难将各种大数据框架进行融合。不同来源的数据,存储方式、查询方式都不相同,需要在不同的系统中使用不同的方式将其查询出来,再使用一些跨领域数据的变换才能做进一步的统一数据分析,这些操作一般针对都是有数据库知识及编程知识的人员,对无数据库知识和编程知识的人员则无法操作,除此之外,对大量非结构化数据进行分析,则需要专业人员操作,普通人员更是无法实现分析。

目前还没有统一的方法把各种海量异构数据进行融合,在对这些海量数据进行分析时,首先需要许多不同技术领域的专业人员互相配合,耗费人力;其次是没有统一的分析工具,需要从各种数据源把数据抽取出来,进行格式转换和复杂处理后,才能进行需求处理或者分析,效率低下。



技术实现要素:

本申请提供了一种知识挖掘系统及方法,用于解决现有技术针对海量数据的联合分析缺乏有效的统一处理手段,导致跨领域数据的知识挖掘费时费力且效率低下的技术问题。

有鉴于此,本申请第一方面提供了一种知识挖掘系统,包括:算子仓库、建模平台和云擎服务模块;

所述算子仓库用于为资源数据的建模提供算子工具,通过所述算子工具实现不同的逻辑功能,所述算子工具包括公共算子和自定义算子;

所述建模平台用于根据所述算子工具和所述资源数据进行数据分析模型的构建,并将得到的所述数据分析模型封装成特定协议;

所述云擎服务模块用于解析各种不同的所述特定协议,根据解析得到的特定协议内容调用底层大数据组件功能接口,并执行预置数据处理任务,得到目标数据,所述目标数据为屏蔽访问差异后的同构数据。

可选的,所述建模平台具体用于:

对所述资源数据进行数据质量验证操作,所述数据质量验证操作包括:缺失验证、错误验证、精度验证、编码验证和元数据验证;

对验证后的资源数据进行建模准备相关操作,所述建模准备相关操作包括:源数据选择、数据子集抽取、属性管理、数据排序和数据集划分;

对所述算子工具进行组合以及参数设置,并根据所述建模准备相关操作后的资源数据进行数据分析模型的构建;

将所述数据分析模型封装为特定协议。

可选的,还包括:资源接入模块;

所述资源接入模块用于为异构资源提供不同的接口,对所述异构资源进行差异化处理,得到屏蔽差异的所述资源数据。

可选的,还包括:数据开发平台;

所述数据开发平台用于通过预置脚本、预置程序和调试环境对所述资源数据进行数据查询需求分析,得到新资源数据,通过所述新资源数据触发所述建模平台构建所述数据分析模型。

可选的,还包括:运维部署模块;

所述运维部署模块用于通过定时调度器定时对所述特定协议进行调度部署管理,并将所述特定协议发送至所述云擎服务模块,为用户提供终止、暂停和重启的服务。

可选的,所述运维部署模块还用于:

对系统中支持任务调度策略设置一键运行机制,所述支持任务调度策略包括系统脚本和系统spark程序。

可选的,还包括:知识仓库;

所述知识仓库用于采用不同的存储形态存储所述特定协议和所述目标数据,所述存储形态包括主题库、标签库和样本库。

可选的,还包括:模型评估模块:

所述模型评估模块用于对所述数据分析模型进行综合评估,所述综合评估包括逻辑评估、正确及错误率评估、运算节点评估和星级评估。

可选的,还包括:模型发布模块;

所述模型发布模块用于将所述数据分析模型以预置级别进行发布,所述预置级别包括系统级别和用户级别。

本申请第二方面提供了一种知识挖掘方法,包括:

将异构资源数据进行差异化处理,得到资源数据;

根据所述资源数据和预置算子工具进行数据分析模型的构建,所述预置算子工具包括公共算子和自定义算子;

将所述数据分析模型进行封装处理,得到特定协议;

根据所述特定协议进行解析后得到的特定协议内容调用底层大数据组件功能接口,并执行预置数据处理任务,得到目标数据,所述目标数据为屏蔽访问差异后的同构数据。

从以上技术方案可以看出,本申请实施例具有以下优点:

本申请中,提供了一种知识挖掘系统,包括:算子仓库用于为资源数据的建模提供算子工具,通过算子工具实现不同的逻辑功能,算子工具包括公共算子和自定义算子;建模平台用于根据算子工具和资源数据进行数据分析模型的构建,并将得到的数据分析模型封装成特定协议;云擎服务模块用于解析各种不同的特定协议,根据解析得到的特定协议内容调用底层大数据组件功能接口,并执行预置数据处理任务,得到目标数据,目标数据为屏蔽访问差异后的同构数据。

本申请提供的一种知识挖掘系统,提供了大量的各不相同的算子工具,这些算子工具不仅能够满足建模中需要的逻辑计算,还可以根据不同的建模需求进行不同的组合,从而实现多种数据的跨领域运算和统一处理,完成多种数据的联合建模任务;通过云擎服务模块对数据分析模型进行解析后,将各种异构数据的查询访问转换为相同的协议请求方式,屏蔽掉数据访问方式的差异,使目标数据便于根据需要进行联合分析。因此,本申请能够解决现有技术针对海量数据的联合分析缺乏有效的统一处理手段,导致跨领域数据的知识挖掘费时费力且效率低下的技术问题。

附图说明

图1为本申请实施例提供的一种知识挖掘系统的一个结构示意图;

图2为本申请实施例提供的一种知识挖掘方法的一个流程示意图;

图3为本申请实施例提供的模型定义算子流程图;

图4为本申请实施例提供的sql定义算子流程图;

图5为本申请实施例提供的微服务定义算子流程图;

图6为本申请实施例提供的统一访问xml接口关系示意图;

图7为本申请实施例提供的整体知识挖掘系统结构示意图。

具体实施方式

为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

术语解释:

主题:随着社会上各行业数据的增长和大数据应用的发展,积累了非常多的原始数据,本申请可以对数据按业务进行重构,这种重构可以分为多层进行,不断的对数据进行提炼和分类,最终形成一个数据到知识的金字塔结构,即主题要素库。

sql:结构化查询语言(structuredquerylanguage),是一种特殊目的的编程语言,实现数据库查询,用于存取数据以及查询、更新和管理关系数据库系统。

xml:扩展标记语言,标准通用标记语言的子集,是一种用于标记电子文件使其具有结构性的标记语言。

hbase:一种分布式的、面向列的开源数据库,它不同于一般的关系数据库,它适合非结构化数据的存储。

hive:一种数据仓库工具,用来进行数据提取、转化、加载,用于存储、查询和分析大规模数据的机制。

es:分布式全文检索引擎,基于全文检索框架设计而来。

oracle:甲骨文公司的一款关系数据库管理系统,它是一种高效率、可靠性好的、适应高吞吐量的数据库方案,在数据库领域一直处于领先地位。

为了便于理解,请参阅图1,本申请提供的一种知识挖掘系统的实施例,包括:算子仓库101、建模平台102和云擎服务模块103。

算子仓库101用于为资源数据的建模提供算子工具,通过算子工具实现不同的逻辑功能,算子工具包括公共算子和自定义算子。

需要说明的是,算子即为能力组件,将各种能力组件封装成可以互相拼接的算子工具,为数据建模搭建逻辑计算支撑;算子工具包括公共算子和自定义算子,公共算子即为系统算子,系统算子为模型构建提供已经经过算法封装的算子,提供建模所需的固化能力算子组件,包括过滤、统计、提取、字段处理和集合运算等能力算子;而自定义算子可以利用各种工具对算子逻辑进行编排,例如,利用历程模型进行定义,采用sql模板进行定义,利用微服务进行定义等,用户除了定义逻辑之外,还需要对算子的出参、入参、算子表单等进行定义。根据不同的方法进行算子的定义过程稍微不同,以下具体说明,请参阅图3,通过历程模型构建一个新算子的流程为:首先新建一个空白的模型画布,然后在画布中通过对资源和算子进行编排,构成模型的运行逻辑,接着定义模型的输入输出参数,最后保存参数模型,通过模型创建自定义算子。请参阅图4,通过sql模板构建一个新算子的过程为:首先编写目标sql脚本,然后定义输入输出,输入参数可以与sql中预留的占位符进行关联绑定,输出参数则与sql脚本中的最后输出数据表的字段进行关联绑定,最后把sql脚本保存为模板,创建自定义算子。请参阅图5,通过微服务构建一个新算子的过程为:首先在系统中部署服务,然后将即将新建的算子与此服务进行绑定,接着定义输入输出,输入参数可以与服务的输入关联绑定,输出参数则与服务的输出字段进行关联绑定,最后创建为自定义算子。

建模平台102用于根据算子工具和资源数据进行数据分析模型的构建,并将得到的数据分析模型封装成特定协议。

需要说明的是,资源数据为通过基本处理后得到多种异构数据,在数据的来源、存储和查询等方面均不尽相同,需要经过差异化的处理,使得上层数据的应用者可以屏蔽底层的这些差异。构建模型需要对资源数据进行各种不同的逻辑计算处理,这一过程通过拼接不同的算子工具实现。构建的模型是一种工作流模型,既可以数据模型,也可以是主题分析数据表。模型的输出形式是封装后的协议,便于后续的传输处理。

进一步地,建模平台102具体用于:

对资源数据进行数据质量验证操作,数据质量验证操作包括:缺失验证、错误验证、精度验证、编码验证和元数据验证;

对验证后的资源数据进行建模准备相关操作,建模准备相关操作包括:源数据选择、数据子集抽取、属性管理、数据排序和数据集划分;

对算子工具进行组合以及参数设置,并根据建模准备相关操作后的资源数据进行数据分析模型的构建;

将数据分析模型封装为特定协议。

需要说明的是,构建模型的过程是可视化过程,可以对已接入数据工厂中的且在分析历程资源工具栏里已展现的数据进行探索。通过数据档案或元数据信息,用户可查看该数据的表字段名称、类型、长度、描述信息、索引信息、表类型、分区、数据总量、数据最早时间、最晚时间、部分字段字典值等信息,用户在该界面还可以对数据进行简单的数据预览。如果是专题数据,则还需要在描述信息里面查看该专题的生成的逻辑结构描述信息、专题执行周期、专题数据总量、专题数据增量等相关信息。在进行建模之前需要进行一些预处理操作,例如数据质量验证操作和建模准备相关操作。

数据质量验证操作包括缺失验证、错误验证、精度验证、编码验证和元数据验证。缺失验证是验证数据是否存在缺失,例如某些关键字段存在空白值或者编码为异常值,或者乱码,数字型字段出现英文符号等;错误验证是验证在导入数据时的字段与实际上的值不一致的问题;精度验证可以举例说明,例如,对经纬度进行网格转换后的7级网格和6级网格精度差的验证;编码验证,例如,不同的数据资源使用不同的编码表示性别;元数据验证,包括字段的表面意思和字段名称或者定义中陈述的意思不匹配。

建模准备相关包括包括源数据选择、数据子集抽取、属性管理、数据排序和数据集划分。源数据选择是在导入所需数据集或者从数据工厂中获取合适的数据进行建模,本实施例中是指资源数据,还可以是利用专题建模等;数据子集抽取是对选取的源数据进行简单的过滤或关联,形成数据子集,有时是专题,例如可以对多个时空的数据进行抽取,形成时空现场专题库,对抽取的数据子集可以进行记录汇总,合并为一个结果集;属性管理是对所有数据新增一些新属性,例如,将有经纬度信息的字段转为网格,并在原来的基础上新增一列来储存转化后的网格信息;数据排序是将数据按照时间倒序排列,便于管理获取;数据集划分是将数据集划分为训练数据集和测试数据集。

接下来是数据分析模型的构建过程,用户利用分析历程工具进行模型的编排,编排工具提供不同类型的算子工具,按照定义角度而言,算子工具包括公共算子和自定义算子,按照功能定义而言,算子工具包括离线算子、实时算子、在线算子、机器学习算子、输入算子、输出算子、业务算子、自定义算子等,通过各种算子的拼接组合,然后设置其中的相关参数,就可以对处理后的资源数据进行建模操作,得到数据分析模型。为了便于模型的解读和移植,在建模过程中,可以对关键的操作步骤或者整个模型进行注释操作。构建的模型其实就是一个工作流模型,是由算子组件和资源数据共同构成的。建模完成后会被封装为一个协议,后续访问和获取均是对协议进行解析处理。

进一步地,还包括:模型评估模块104:

模型评估模块用于对数据分析模型进行综合评估,综合评估包括逻辑评估、正确及错误率评估、运算节点评估和星级评估。

需要说明的是,模型的综合评估中逻辑评估是为了确保模型具备清晰的逻辑框架;正确及错误率评估在此不作赘述;运算节点评估除了评估节点是否过多或者过少,多一般是指超过200个节点,少一般是指仅为1个节点,另外,还需要判断是否存在孤立的节点,或者相对独立的分支;星级评估是指任何使用一个模型的用户都可以对该模型的可用性、准确性进行星级评价和打分,通过星级评估,星级高的模型排名靠前,将会优先推广给用户使用。除了以上评估方法,可以对输入的数据和经过模型得到的结果求产出比进行模型评估,或者利用历史数据的测试样本对模型进行结果验证,得到评估模型的准确性,进而对模型进行评估打分,实现模型的评估。

进一步地,还包括:模型发布模块105;

模型发布模块用于将数据分析模型以预置级别进行发布,预置级别包括系统级别和用户级别。

需要说明的是,在建立一个模型后,经过一段时间的模型修改和参数调整稳定后,可以进行模型发布,发布时可指定发布成系统级模型,或者用户级模型,另外还可以进行发布共享;如果发布时定为系统级专题模型,则需要进行审批,生成模型发布审批任务,待审批通过后才能进行模型发布,如果是用户级模型,则可以在发布时指定共享给其他人。

云擎服务模块103用于解析各种不同的特定协议,根据解析得到的特定协议内容调用底层大数据组件功能接口,并执行预置数据处理任务,得到目标数据,目标数据为屏蔽访问差异后的同构数据。

需要说明的是,云擎服务模块主要用于解析特定协议,统一不同数据的访问接口,也就是数据的访问接口统一化处理模块,使得各种异构数据的查询访问以相同的协议请求方式实现。通过封装标注服务机制以及接口,以统一的查询接口向上层呈现服务,使业务规则算子化,业务流程可定制化,便于访问数据的联合分析。大数据领域存在不同的数据源,例如hive、hbase、es等,如果按照传统的方式每类数据源都进行处理,会出现计算效率低,计算资源重复使用,业务过于关注数据获取细节等问题,为了实现数据的高效处理,必须实现多源异构数据的统一访问和调用,本实施例中采用统一的访问接口xml解决统一访问方式的问题。举例说明,请参阅图6,如果存在向下对接的oracle、mpp、hive、es等数据库,向上对接采用统一访问xml接口技术,只需要一种标准的接口技术就可以访问到不同的异构数据源,可以实现跨集群访问。

本申请提供的一种知识挖掘系统,提供了大量的各不相同的算子工具,这些算子工具不仅能够满足建模中需要的逻辑计算,还可以根据不同的建模需求进行不同的组合,从而实现多种数据的跨领域运算和统一处理,完成多种数据的联合建模任务;通过云擎服务模块对数据分析模型进行解析后,将各种异构数据的查询访问转换为相同的协议请求方式,屏蔽掉数据访问方式的差异,使目标数据便于根据需要进行联合分析。因此,本申请能够解决现有技术针对海量数据的联合分析缺乏有效的统一处理手段,导致跨领域数据的知识挖掘费时费力且效率低下的技术问题。

进一步地,还包括资源接入模块106;

资源接入模块用于为异构资源提供不同的接口,对异构资源进行差异化处理,得到屏蔽差异的资源数据。

需要说明的是,异构资源的来源、存储和访问方式都是不一样的,因此需要通过资源接入模型进行接口配置处理,然后通过数据接入层的差异化处理使得上层数据的应用者可以屏蔽掉底层数据的差异,得到的资源数据即为屏蔽差异后的异构数据。

进一步地,数据开发平台107;

数据开发平台用于通过预置脚本、预置程序和调试环境对资源数据进行数据查询需求分析,得到新资源数据,通过新资源数据触发建模平台构建数据分析模型。

需要说明的是,数据开发平台除了对资源数据可以进行数据分析,还可以对模型输出数据进行分析,可以灵活使用数据开发平台进行数据处理,得到新的资源数据,在此不作赘述。数据开发平台提供一站式集成开发环境,可满足大数据环境下的数据查询需求分析,提供webide编程和调试环境,可在编辑器上编写sql脚本。

进一步地,还包括:运维部署模块108;

运维部署模块用于通过定时调度器定时对特定协议进行调度部署管理,并将特定协议发送至云擎服务模块,为用户提供终止、暂停和重启的服务。

需要说明的是,系统中除了特定协议需要进行部署,还有建模平台以及数据开发得到的模型或者脚本需要进行部署,部署后的这个数据可以实现周期性执行,用户可以监控任务的执行状态、执行日志等信息,可以根据需求进行任务终止、暂停以及重启操作。运维部署模块108还用于:

对系统中支持任务调度策略设置一键运行机制,支持任务调度策略包括系统脚本和系统spark程序。

进一步地,还包括:知识仓库109;

知识仓库用于采用不同的存储形态存储特定协议和目标数据,存储形态包括主题库、标签库和样本库。

需要说明的是,存储和管理各种数据分析后的价值信息,例如特定协议、目标数据等,除此之外,还可以存储其他重要的有价值的信息。根据需要可以有不同的实现技术,同样的信息也可以有不同的存储形态,用于满足各种问题求解,本实施例中的存储形态包括主题库、标签库和样本库。其中,主题库主要存储各种按行业视角来划分的各种主题库,例如某行业的人、事、地、物、组织五个维度;用户可以对数据按业务进行的重构,这种重构可以分为多层进行,不断的对数据进行提炼和分类,最终形成一个从数据到知识的金字塔结构。标签库是一种较特殊的数据库,主要实现针对特定实体标签属性的存储,该库为标签数据提供了最优的存储形态,同时向上层提供高速的标签组合分析服务;系统支持把模型挖掘出来的数据转成标签形态进行存储,通过这样实现用户的自定义标签制作。样本库汇聚行业内许多有价值的最新样本信息,样本信息按照这个领域细分品类划分,便于专业模型开发用户通过关键词搜索、数据目录、行业分类栏目快速检索样本信息,针对其感兴趣的样本进行下载使用;样本库使用户没有获取真实数据的情况就能了解相关行业相关数据特点,并进行模型开发。

整个知识挖掘系统模型可以参照图7,其中包括资源经过资源接入模块后,结合算子仓库进行模型构建,再到模型的运行以及得到有价值的知识,并存储至知识仓库中。

为了便于理解,请参阅图2,本申请提供了一种知识挖掘方法的实施例,包括:

步骤201、将异构资源数据进行差异化处理,得到资源数据;

步骤202、根据资源数据和预置算子工具进行数据分析模型的构建,预置算子工具包括公共算子和自定义算子;

步骤203、将数据分析模型进行封装处理,得到特定协议;

步骤204、根据特定协议进行解析后得到的特定协议内容调用底层大数据组件功能接口,并执行预置数据处理任务,得到目标数据,目标数据为屏蔽访问差异后的同构数据。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以通过一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(英文全称:read-onlymemory,英文缩写:rom)、随机存取存储器(英文全称:randomaccessmemory,英文缩写:ram)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1