一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种基于KAFKA与NIFI的离线+实时发货单费用计提方法及系统与流程

2022-12-06 22:30:02 来源:中国专利 TAG:

一种基于kafka与nifi的离线 实时发货单费用计提方法及系统
技术领域
1.本发明涉及大数据技术领域,具体为一种基于kafka与nifi的离线 实时发货单费用计提方法及系统。


背景技术:

2.目前快消行业品牌商的费用控制管理普遍处于混乱状态,严重影响了企业的收益、运营、发展和企业形象。
3.现有技术中,由于费用控制管理涉及的部门和环节多,每个环节都容易出现漏洞,存在大量违规套费的现象,而每个岗位通常只局限于自己的视角来处理,缺乏费用全生命周期和全局化管控手段,无法有效核算产品的底价,也无法按照预定的费用结构进行有效业务引导。
4.但是,费用管控不利的最直接结果就是导致市场乱价,乱价对快消行业属于致命性的风险。其中费用管理控制中费用计算不透明,处理周期长,兑付满意度差问题十分显著,费用从申请到核销完成需要3-6个月以上,账单计算结果不一致,需要大量的时间对账和调账,客户和一线员工对此反应强烈,对品牌商的满意度变差。


技术实现要素:

5.本发明的目的在于提供一种基于kafka与nifi的离线 实时发货单费用计提方法及系统,以解决上述背景技术中提出的问题。
6.为实现上述目的,本发明提供如下技术方案:一种基于kafka与nifi的离线 实时发货单费用计提方法,所述基于kafka与nifi的离线 实时发货单费用计提方法包括以下步骤:
7.实时、离线的获取发货单数据;
8.通过开发自定义校验组件以及nifi的脚本组件executescript实现数据质量检测;
9.根据配置生成计提http接口;通过nifi的invokehttp组件调用计提接口实现发货单费用计提;
10.通过nifi的定时调度功能以及sql查询组件executesql等组件,定时从计提错误库获取发货单进行补偿计提操作。
11.优选的,实时、离线的获取发货单数据时,
12.业务系统将发货单实时推送至kafka的shipment_order主题中,利用nifi的consumekafka组件监听shipment_order主题,实时获取发货单数据,获取到的数据一方面直接入库,另一方面走后续的计提流程。
13.优选的,实时、离线的获取发货单数据时,
14.除了通过kafka获取实时发货单数据外,还可以通过nifi的executesql组件自定
义查询sql获取想要计提的离线导入的发货单数据。
15.优选的,实现数据质量检测时,包括是否重复计提校验、非空校验、日期格式校验、金额格式校验、枚举校验、客户编码校验、费用列支规则校验;
16.标准有效的发货单数据继续走后面的计提流程;无效有质量问题的发货单数据入质量问题库,同时展示在前台由客户补充完善,完善后的数据可通过离线或定时获取的方式来进行计提。
17.优选的,对计提接口返回结果进行解析,计提成功的数据入计提成功库并更新发货单计提状态,同时将成功计提数据展示到前台用于客户查询;计提失败的数据入计提失败库,用于后续数据补偿计提。其中,可通过配置invokehttp组件的并发数量来控制计提的效率问题,实际操作时应根据数据量大小,服务接口配置、服务器资源配置等权衡设置。
18.一种基于kafka与nifi的离线 实时发货单费用计提系统,所述该系统包括数据获取模块、数据质量检测模块、数据计提模块以及数据补偿模块;
19.数据获取模块,用于实时、离线的获取发货单数据;
20.数据质量检测模块,用于通过开发自定义校验组件以及nifi的脚本组件executescript实现数据质量检测;
21.数据计提模块,用于根据配置生成计提http接口;通过nifi的invokehttp组件调用计提接口实现发货单费用计提;
22.数据补偿模块,用于通过nifi的定时调度功能以及sql查询组件executesql等组件,定时从计提错误库获取发货单进行补偿计提操作。
23.优选的,所述数据获取模块中,业务系统将发货单实时推送至kafka的shipment_order主题中,利用nifi的consumekafka组件监听shipment_order主题,实时获取发货单数据,获取到的数据一方面直接入库,另一方面走后续的计提流程。
24.优选的,所述数据获取模块中,除了通过kafka获取实时发货单数据外,还可以通过nifi的executesql组件自定义查询sql获取想要计提的离线导入的发货单数据。
25.优选的,所述数据质量检测模块中,包括是否重复计提校验、非空校验、日期格式校验、金额格式校验、枚举校验、客户编码校验、费用列支规则校验;
26.标准有效的发货单数据继续走后面的计提流程;无效有质量问题的发货单数据入质量问题库,同时展示在前台由客户补充完善,完善后的数据可通过离线或定时获取的方式来进行计提。
27.优选的,所述数据计提模块中,对计提接口返回结果进行解析,计提成功的数据入计提成功库并更新发货单计提状态,同时将成功计提数据展示到前台用于客户查询;计提失败的数据入计提失败库,用于后续数据补偿计提。其中,可通过配置invokehttp组件的并发数量来控制计提的效率问题,实际操作时应根据数据量大小,服务接口配置、服务器资源配置等权衡设置。
28.与现有技术相比,本发明的有益效果是:
29.本发明提出的基于kafka与nifi的离线 实时发货单费用计提方法及系统具有高性能、高扩展性、高可靠的优点,同时支持实时、离线运行。
附图说明
30.图1为本发明数据获取流程图;
31.图2为本发明数据质量检测流程图;
32.图3为本发明数据计提流程图;
33.图4为本发明数据补偿流程图。
具体实施方式
34.为了使本发明的目的、技术方案进行清楚、完整地描述,及优点更加清楚明白,以下结合附图对本发明实施例进行进一步详细说明。应当理解,此处所描述的具体实施例是本发明一部分实施例,而不是全部的实施例,仅仅用以解释本发明实施例,并不用于限定本发明实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
35.在本发明的描述中,需要说明的是,术语“中心”、“中”、“上”、“下”、“左”、“右”、“内”、“外”、“顶”、“底”、“侧”、“竖直”、“水平”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“一”、“第一”、“第二”、“第三”、“第四”、“第五”、“第六”仅用于描述目的,而不能理解为指示或暗示相对重要性。
36.在本发明的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本发明中的具体含义。
37.出于简明和说明的目的,实施例的原理主要通过参考例子来描述。在以下描述中,很多具体细节被提出用以提供对实施例的彻底理解。然而明显的是,对于本领域普通技术人员,这些实施例在实践中可以不限于这些具体细节。在一些实例中,没有详细地描述公知方法和结构,以避免无必要地使这些实施例变得难以理解。另外,所有实施例可以互相结合使用。
38.实施例一
39.请参阅图1至图4,本发明提供一种技术方案:一种基于kafka与nifi的离线 实时发货单费用计提方法,所述基于kafka与nifi的离线 实时发货单费用计提方法包括以下步骤:
40.实时、离线的获取发货单数据;业务系统将发货单实时推送至kafka的shipment_order主题中,利用nifi的consumekafka组件监听shipment_order主题,实时获取发货单数据,获取到的数据一方面直接入库,另一方面走后续的计提流程;除了通过kafka获取实时发货单数据外,还可以通过nifi的executesql组件自定义查询sql获取想要计提的离线导入的发货单数据;
41.通过开发自定义校验组件以及nifi的脚本组件executescript实现数据质量检测;,包括是否重复计提校验、非空校验、日期格式校验、金额格式校验、枚举校验、客户编码
校验、费用列支规则校验;标准有效的发货单数据继续走后面的计提流程;无效有质量问题的发货单数据入质量问题库,同时展示在前台由客户补充完善,完善后的数据可通过离线或定时获取的方式来进行计提;
42.根据配置生成计提http接口;通过nifi的invokehttp组件调用计提接口实现发货单费用计提;对计提接口返回结果进行解析,计提成功的数据入计提成功库并更新发货单计提状态,同时将成功计提数据展示到前台用于客户查询;计提失败的数据入计提失败库,用于后续数据补偿计提。其中,可通过配置invokehttp组件的并发数量来控制计提的效率问题,实际操作时应根据数据量大小,服务接口配置、服务器资源配置等权衡设置;
43.通过nifi的定时调度功能以及sql查询组件executesql等组件,定时从计提错误库获取发货单进行补偿计提操作。
44.实施例二
45.一种基于kafka与nifi的离线 实时发货单费用计提系统,其特征在于:所述该系统包括数据获取模块、数据质量检测模块、数据计提模块以及数据补偿模块;
46.数据获取模块,主要用于实时、离线的获取发货单数据,包括kafka实时获取组件、sql离线自定义获取组件。业务系统将发货单实时推送至kafka的shipment_order主题中,利用nifi的consumekafka组件监听shipment_order主题,实时获取发货单数据,获取到的数据一方面直接入库,另一方面走后续的计提流程;除了通过kafka获取实时发货单数据外,还可以通过nifi的executesql组件自定义查询sql获取想要计提的离线导入的发货单数据;
47.数据质量检测模块,主要用于对发货单数据进行必要的数据质量检测,包括是否重复计提校验、非空校验、日期格式校验、金额格式校验、枚举校验、客户编码校验、费用列支规则校验等,通过开发自定义校验组件以及nifi的脚本组件executescript实现数据质量检测。标准有效的发货单数据继续走后面的计提流程;无效有质量问题的发货单数据入质量问题库,同时展示在前台由客户补充完善,完善后的数据可通过离线或定时获取的方式来进行计提;
48.数据计提模块,主要用于对标准有效的发货单数据进行计提金额,包括费用管理后台计提规则配置;根据配置生成计提http接口;通过nifi的invokehttp组件调用计提接口实现发货单费用计提。对计提接口返回结果进行解析,计提成功的数据入计提成功库并更新发货单计提状态,同时将成功计提数据展示到前台用于客户查询;计提失败的数据入计提失败库,用于后续数据补偿计提。其中,可通过配置invokehttp组件的并发数量来控制计提的效率问题,实际操作时应根据数据量大小,服务接口配置、服务器资源配置等权衡设置;
49.数据补偿模块,用于对计提错误的发货单数据进行补偿操作,通过nifi的定时调度功能以及sql查询组件executesql等组件,定时从计提错误库获取发货单进行补偿计提操作。
50.尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
再多了解一些

本文用于创业者技术爱好者查询,仅供学习研究,如用于商业用途,请联系技术所有人。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献