一种通用流式数据分析模型及其构建方法与流程

文档序号:17264233发布日期:2019-03-30 09:53阅读:605来源:国知局
一种通用流式数据分析模型及其构建方法与流程

本发明涉及流式数据处理技术,具体涉及一种通用流式数据分析模型及其构建方法。



背景技术:

现阶段针对流式数据的处理,普遍将数据分析算法实例化于代码层面。如此方式,一则,可支持的分析算法有限,如需再加或者调整必须通过编码实现,消耗工作量较大;再则,与实际业务数据绑定,所实现的算法局限性较大。因此,该类实时数据的分析模型实现方式较为死板,无法应对灵活多变的业务需求,且如此创建的分析模型无法复用于其他业务不同的项目中。



技术实现要素:

本发明的目的在于针对在流式数据处理或实时数据分析场景,提供一种通用流式数据分析模型及其构建方法,将分析算法模型的创建与具体业务逻辑抽离,以达到分析模型灵活建立的目的,解决现阶段针对实时数据,采用将数据分析算法实例化于代码层面的实现方式所带来的工作量较大,需求变更应对不灵活的问题。

实现本发明目的的技术方案为:一种通用流式数据分析模型,数据分析模型由多步运算按序组成,从数据源流入,经数步运算后得出结果;将数据源和运算抽象为算子,所述数据分析模型包括:

开始算子,用于表明数据起始的开端;

数据源算子,用于选择所需进行数据分析的实时数据的类别;

过滤运算算子,该类下的算子主要针对实时数据过滤的逻辑;

中间库碰撞算子,该类算子针对需要与积累数据进行碰撞的场景;

流向算子,针对算法中流程描述,抽象出流向算子,用于标记数据处理的流向;

分支算子,用于标记根据上一步算子的运算结果下一步数据处理的流向;

告警算子,标记为该数据符合算法逻辑;

结束算子,数据行至该算子,即表示处理结束。

一种通用流式数据分析模型的构建方法,所述数据分析模型由多步运算按序组成,从数据源流入,经数步运算后得出结果,数据分析模型的构建方法包括以下步骤:

1)通过算子抽象,建立业务模型的基础构件;

2)通过数据源参数配置,实现与数据源解耦,对于不同场景中的不同数据源,均可通过参数配置,调整模型所用到的数据源;

3)通过配置算子的参数值,建立每个算子的计算规则;

4)将各个算子连接,将前一个算子的计算结果作为输出,传递给后一个算子作为输入数据源,供后一个算子进行计算;

5)重复步骤2)~4),直到完成算法模型构建。

与现有技术相比,本发明的显著优点为:(1)通过数据源配置方式实现与数据源解耦,对于不同场景中的不同数据源,均可通过配置的调整模型所用到的数据源;(2)通过算子抽象,实现业务模型的灵活建立;(3)通过参数设置,实现同一模型的灵活复用;对于现有分析模型的调整,或者新增模型,无需改动代码,且应对迅速;与具体业务场景解耦,可复用于其他不同业务创建的项目中;(4)分析模型的创建,无需通过硬编码实现,节省大量开发工作。

附图说明

图1是特定数据采集模型示意图。

图2是特定数据采集模型中特定值判断逻辑设置示意图。

具体实施方式

现阶段针对数据的处理的需求层出不穷,各类分析模型也应运而生,而就实现方式而言,考虑到业务场景不同,有些通过硬编码实现,而另一些通过建模实现。本发明属于后者,采用模型搭建的方式设计出分析模型。与本发明相类似的有ETL工具,其创建的分析任务,均通过各类职责单一的算子按流程连接而成,从而形成完整的数据分析流程。

本发明中,一方面,将数据源格式作为配置参数实现可配置;另一方面,将分析算法化整为零,拆分为多个单一职责的分析算子,通过不同职责的算子排列组合和参数设置,实现完整的分析算法。最后,针对模型中的条件采用参数的方式取代具体的值,使用时针对具体业务设置相应的值,以实现模型的灵活复用。

算法的实现非直接整体实现,将整体算法模型化整为零,用粒度单一的各类算子,按算法执行逻辑搭建而成。以此类推,其他分析模型也可通过算子组装生成,而无需硬编码。

模型的复用是通过参数设置实现,同一场景针对不同的对象,可通过赋予不同的参数值来实现模型复用。

下面对本发明内容进行详细说明。

本发明提供一种通用流式数据分析模型,数据分析模型由多步运算按序组成,从数据源流入,经数步运算后得出结果;将数据源和运算抽象为算子,所述算子是指能够根据输入独立完成完整计算的功能模块,所述数据分析模型包括:

开始算子,用于表明数据起始的开端;

数据源算子,用于选择所需进行数据分析的实时数据的类别;

过滤运算算子,该类下的算子主要针对实时数据过滤的逻辑;

中间库碰撞算子,该类算子针对需要与积累数据进行碰撞的场景;

流向算子,针对算法中流程描述,抽象出流向算子,用于标记数据处理的流向;

分支算子,用于标记根据上一步算子的运算结果确定下一步数据处理的流向;

告警算子,标记为该数据符合算法逻辑;

结束算子,数据行至该算子,即表示处理结束。

本发明还提供一种通用流式数据分析模型的构建方法,所述数据分析模型由多步运算按序组成,从数据源流入,经数步运算后得出结果,数据分析模型的构建方法包括以下步骤:

1)通过算子抽象,建立业务模型的基础构件;

2)通过数据源参数配置,实现与数据源解耦,对于不同场景中的不同数据源,均可通过参数配置,调整模型所用到的数据源;具体过程为;

各类数据源通过以下信息进行描述,包括:数据源名称、数据源格式、数据字段名称、数据字段类型、数据字段长度、数据字段分割方式、数据记录分割方式,均录入到配置表中,软件层面以加载配置表中信息取代直接写入代码中。

3)通过配置算子的参数值,建立每个算子的计算规则;

4)将各个算子连接,将前一个算子的计算结果作为输出,传递给后一个算子作为输入数据源,供后一个算子进行计算;

5)重复步骤2)~4),直到完成算法模型构建。

其中,算子抽象的具体过程为;

将每步运算均进行抽象,按不同的功能抽象为如下几类:

开始类算子,用于表示数据起始的开端;

数据源算子,用于选择所需进行数据分析的实时数据的类别;

过滤运算算子,该类下的算子用于表示实时数据过滤的逻辑;过滤运算算子包含以下算子:等于、不等于、属于、不属于、前模糊等于、后模糊等于和全模糊等于。

中间库碰撞算子,该类算子用于需要与积累数据进行碰撞的场景;中间库碰撞算子包括数据总数查询、数据条件查询、数据更新、数据插入、数据删除。

流向算子,针对算法中流程描述,抽象出流向算子,用于标记数据处理的流向;

分支算子,用于标记根据上一步算子的运算结果确定下一步数据处理的流向;

告警算子,标记为该数据符合算法逻辑;

结束算子,数据行至该算子,即表示处理结束。

下面通过具体实施例和附图对本发明进行详细说明。

实施例

针对【特定数据采集】这一算法,如图1、图2所示,模型执行逻辑如下:

①实时流数据接入后,系统按数据源算子的设定,过滤去未被指定的数据源数据,随后执行步骤②。

②数据流经运算算子,执行字段比对判断:该条数据中的待判断字段值是否“等于”设置的特定值。接着执行步骤③。

③根据步骤②的执行结果,数据在分支算子,按设定的执行路径继续向下执行。如数据满足步骤②的执行条件,则执行步骤④;否则执行步骤⑥。

④数据流经“数据入中间库”这一中间库碰撞算子,系统按该算子设置的数据字段和数据库字段的映射关系,将该条数据插入到指定的中间库中。随后执行步骤⑤。

⑤系统根据“告警”算子中所设定的展示内容模板,对结果数据进行组装以服务展现的需要,随后执行步骤⑥。

⑥模型执行完毕,终止对该条数据的处理。

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