[发明专利]一种基于文件的索引数据失败补偿的方法有效
申请号: | 201911097508.7 | 申请日: | 2019-11-12 |
公开(公告)号: | CN110764946B | 公开(公告)日: | 2021-04-02 |
发明(设计)人: | 储明;姜平 | 申请(专利权)人: | 焦点科技股份有限公司 |
主分类号: | G06F11/07 | 分类号: | G06F11/07;G06F11/30;G06F11/32 |
代理公司: | 南京瑞弘专利商标事务所(普通合伙) 32249 | 代理人: | 陈建和 |
地址: | 210032 江苏省南京*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 文件 索引 数据 失败 补偿 方法 | ||
本发明公开了一种基于文件的索引数据失败补偿的方法,其特征在于:嵌入在日终调度的数据提交应用中使用,支持更新和删除两种数据提交类型,包括失败数据实时收集、失败数据文件存储、失败数据文件读取、失败数据过滤清洗、失败数据提交索引和失败数据预警的步骤。本发明旨在解决一般搜索平台索引更新失败导致数据丢失的问题,能够做到无需人为干预,自动将失败数据重新补偿进索引,保证索引数据完整性。
技术领域
本发明涉及电子商务搜索技术领域,特别是涉及一种基于文件的索引数据失败补偿的方法。
背景技术
随着电商平台的发展,平台上的产品数量也会越来越多,直至百万级、千万级、甚至亿级。为了提供高效、高质量的查询功能,一般都会采用建立一份独立索引的方式来实现数据整合和快速检索,业界最常用的底层技术就是Lucene。
那么如何保证数据在任何情况都能完整的提交到索引中,就是不得不考虑的一个问题。一般电商平台会独立开发一个日终数据提交应用,其中大致会涉及到如下几个功能:
1.定期的全量数据提交索引(周期较长,一般以天、周、月为单位);
2.定期的增量更新数据提交索引(周期较短,一般以秒、分、时为单位);
3.定期的增量删除数据提交索引(周期较短,一般以秒、分、时为单位);
4.能够从多种数据来源拉取数据提交索引(数据库、文件、HBase等);
5.定制业务对应的数据处理逻辑;
当任务提交过程中出现数据处理出错且短期重试无法解决的问题时,我们一般都是通知到对应运维人员,明确错误日志,然后会按如下几种方式进行处理:
1.指定报错时间点,重新执行一遍任务,但会包含很多成功的数据,造成额外开销;
2.指定数据ID,手动触发对应数据的更新或删除操作,对应用有一定功能要求;
3.通知DBA手动更新下对应数据的触发时间,等日终任务下次增量时提交索引;
可以看到,虽然有解决方法,但是不可避免的需要人力支持和再次拉取数据的额外开销,极端情况下,比如人为不方便时,可能会导致数据长时间无法提交入索引。
发明内容
本发明所要解决的技术问题是克服现有技术的不足,提供一种基于文件的索引数据失败补偿的方法。
为解决上述技术问题,本发明提供一种基于文件的索引数据失败补偿的方法,其特征在于,嵌入在日终调度的数据提交应用中使用,支持更新和删除两种数据提交类型,包括失败数据实时收集、失败数据文件存储、失败数据文件读取、失败数据过滤清洗、失败数据提交索引和失败数据预警的步骤,具体为:
S1,失败数据实时收集:实时监控数据从读取到业务逻辑处理再到数据提交索引的全部流程,若发现数据处理异常,则将失败数据和其对应的主键ID提交到失败数据中心(failed-data-center)中,根据数据提交类型(更新或删除)分别进行处理;
S2,失败数据文件存储:失败数据中心(failed-data-center)在收集失败数据的过程中,调用失败数据序列化器(failed-data-serializer)将失败数据以键值对的形式,逐条输出到磁盘指定文件中进行存储;当失败数据收集完毕后,会将失败数据的ID信息单独输出到磁盘指定文件中进行存储;
S3,失败数据文件读取:在数据提交应用日终执行正常数据提交任务之前,失败数据中心(failed-data-center)会通过失败数据序列化器(failed-data-serializer)读取上次数据提交任务中更新失败和删除失败的ID集合,加载进应用内存中;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于焦点科技股份有限公司,未经焦点科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911097508.7/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置