[发明专利]一种流数据合并处理方法及装置在审
| 申请号: | 202011490871.8 | 申请日: | 2020-12-17 |
| 公开(公告)号: | CN112527841A | 公开(公告)日: | 2021-03-19 |
| 发明(设计)人: | 段普宇 | 申请(专利权)人: | 上海数依数据科技有限公司 |
| 主分类号: | G06F16/2455 | 分类号: | G06F16/2455;G06F9/54 |
| 代理公司: | 苏州尚为知识产权代理事务所(普通合伙) 32483 | 代理人: | 陈钢 |
| 地址: | 200082 上海市*** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 数据 合并 处理 方法 装置 | ||
本发明涉及一种流数据合并处理方法及装置,包括如下步骤:消息队列接收到流数据;读取消息队列中查询数据流主题的数据,并提取公共身份识别,同时将查询事件主体作为一组键值对应存放在类数据库中;接收消息队列中的主数据流;基于主数据流中的待合并数据流事件,获取对应的主键信息及主键的状态;将查询数据流与主数据流合并。本发明的技术方案对于流数据的实时分析大大降低了延迟;也解决了传统流数据处理对于多个流合并的情况,较难解决的各个流之间时间关系不满足处理要求的问题。系统中多采用列式键值对的存储模型,通过主数据流和查询数据流的关联ID即可快速获取相关数据,也解决了部分数据在数据库存储时读取性能低的问题。
技术领域
本发明涉及计算机技术领域,尤其涉及一种流数据合并处理方法及装置。
背景技术
目前信息数据处理领域中,流数据是较为常见的一种应用场景,一组顺序、大量、快速、连续到达的数据序列通常被定义为流数据。流数据是一种动态的实时数据,相对于静态批数据而言,每次处理的数据量少但是对于处理系统的稳定性、可靠性要求高,系统短时间内的故障就会导致数据的丢失或错误。对处理性能的时延要求高,基本在秒级、毫秒级之内;而批处理的性能要求可以在分钟或小时的数量级范围。
而对于流数据中多个数据流之间的合并处理,目前常见的一些方法包括将不同流的数据分别存入数据库后在通过批处理的方法将关联的数据进行合并,这种方法的效率较为低下,存在较高的时延,不能满足一些要求时效性较高的应用场景;传统的流数据处理方法是直接对于不同流的数据在接收到时就做对应处理,但是这种方法要求数据流到达的时间相近,如果时间相差较大,需要在消息队列中缓存较多的数据,且通过消息队列作为缓存处理性能较低,时间间隔越大、数据量越大就越为明显。
发明内容
本发明为解决现有的数据流合并处理效率低、时延高的问题,所采用的技术方案是:一方面,发明提供了一种流数据合并处理方法,包括如下步骤:
消息队列接收到流数据;
读取消息队列中查询数据流主题的数据,并提取公共身份识别,同时将查询事件主体作为一组键值对应存放在类数据库中;
接收消息队列中的主数据流;
基于主数据流中的待合并数据流事件,获取对应的主键信息及主键的状态;
将查询数据流与主数据流合并。
进一步改进为,所述主键的状态包括:阻塞、完成、未知、失败和正常;
如果获取到的主键的状态为阻塞状态,那么表示有其他的状态管理模块正在处理这条请求,直接跳过该请求处理下一条;
如果获取到的主键的状态为完成状态,那么表示该事件已经有其他模块处理完成,将完成的状态写回;
其他状态情况下,将该主键的状态修改为阻塞后写入状态存储,并继续后续流程;
对于返回错误的情况,将该事件推回到消息队列中的重试队列中,等待一定事件后再重新处理。
进一步改进为,所述将查询数据流与主数据流合并,包括:
对于正常的主键状态,数据流会进行合并处理,如果合并成功,得到已合并的数据流,将其写入到消息队列中的已合并的主题中,待对其进行存储,并把该消息的状态写为完成;
如果合并失败,将该消息也写入消息队列中的重试队列,消息的状态修改为失败,重试次数加一,重试次数超过一定数量之后就不再进行写回处理。
另一方面,本发明提供了一种流数据合并处理方法装置,包括:
消息队列模块,用于接收到流数据;
数据流读取模块,用于读取消息队列中查询数据流主题的数据,并提取公共身份识别,同时将查询事件主体作为一组键值对应存放在类数据库中;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海数依数据科技有限公司,未经上海数依数据科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202011490871.8/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置





