CN110633302A - 一种海量结构化数据的处理方法及装置 - Google Patents

一种海量结构化数据的处理方法及装置 Download PDF

Info

Publication number
CN110633302A
CN110633302A CN201910887944.8A CN201910887944A CN110633302A CN 110633302 A CN110633302 A CN 110633302A CN 201910887944 A CN201910887944 A CN 201910887944A CN 110633302 A CN110633302 A CN 110633302A
Authority
CN
China
Prior art keywords
data
processed
message middleware
processing
kafka message
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201910887944.8A
Other languages
English (en)
Other versions
CN110633302B (zh
Inventor
崔粉霞
张立新
井长军
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
State Grid Corp of China SGCC
Beijing China Power Information Technology Co Ltd
National Network Information and Communication Industry Group Co Ltd
Original Assignee
State Grid Corp of China SGCC
Beijing China Power Information Technology Co Ltd
National Network Information and Communication Industry Group Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by State Grid Corp of China SGCC, Beijing China Power Information Technology Co Ltd, National Network Information and Communication Industry Group Co Ltd filed Critical State Grid Corp of China SGCC
Priority to CN201910887944.8A priority Critical patent/CN110633302B/zh
Publication of CN110633302A publication Critical patent/CN110633302A/zh
Application granted granted Critical
Publication of CN110633302B publication Critical patent/CN110633302B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24552Database cache management
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种海量结构化数据的处理方法,包括:采用kafka消息中间件获取数据库中的各个待处理数据;将每一个待处理数据与多级缓存中的已存储数据进行对比;当存在与其对应的第一已处理数据时,将所述第一已处理数据存入所述kafka消息中间件中,或,当不存在与其对应的第一已处理数据时,将其分配对应的处理单元进行处理,得到第二已处理数据,将所述第二已处理数据存入所述kafka消息中间件中;当所述各个待处理数据处理完成时,将所述kafka消息中间件中的数据存储至数据库中。上述方法,采用kafka消息中间件获取和存储对应数据,依据多级缓存和处理单元处理对应数据,不受CPU核数和占用限制,数据处理效率高。

Description

一种海量结构化数据的处理方法及装置
技术领域
本发明涉及数据处理技术领域,尤其涉及一种海量结构化数据的处理方法及装置。
背景技术
随着社会信息化程度的不断提高,传统的企业的业务流程逐渐转向更加高效的信息化业务办理,而在各类业务的信息化应用处理中,海量结构化数据的处理是很多信息化系统的难题,海量结构化数据的处理性能问题引起关注。
现有技术中采用的处理方式主要有多线程处理或者数据库函数调用软件包的形式,其中,针对多线程,会优先选择不需要等待的异步多线程方式。但是在解决海量结构化数据问题时,仅仅使用异步线程还是不能满足处理海量结构化数据的性能要求,因为线程的个数受服务的CPU核数的限制,不能无限增加,二采用数据库函数调用加软件包的方式,CPU成线性每次递增2%,字段较多时,占用CPU较高,令系统不可用,导致数据的处理效率低。
发明内容
有鉴于此,本发明提供了一种海量结构化数据的处理方法及装置,用以解决现有技术中使用异步线程时线程的个数受服务的CPU核数的限制,不能无限增加,而采用数据库函数调用加软件包的方式,CPU成线性每次递增2%,字段较多时,占用CPU较高,令系统不可用,导致数据的处理效率低的问题,具体方案如下:
一种海量结构化数据的处理方法,包括:
采用kafka消息中间件获取数据库中的各个待处理数据;
将每一个待处理数据与多级缓存中的已存储数据进行对比;
当存在与其对应的第一已处理数据时,将所述第一已处理数据存入所述kafka消息中间件中,或,当不存在与其对应的第一已处理数据时,将其分配对应的处理单元进行处理,得到第二已处理数据,将所述第二已处理数据存入所述kafka消息中间件中;
当所述各个待处理数据处理完成时,将所述kafka消息中间件中的数据存储至数据库中。
上述的方法,可选的,采用kafka消息中间件获取数据库中的各个待处理数据,包括:
采用异步线程池在数据库中分批读取待处理数据,存入kafka消息中间件;
每间隔预设时长,对所述kafka消息中间件中的数据量进行统计;
当所述数据量达到预设的数据量阈值时,触发处理单元获取各个待处理数据。
上述的方法,可选的,将每一个待处理数据与多级缓存中的已存储数据进行对比,包括:
针对每一个待处理数据,在本地缓存中查找与其对应的第一已处理数据当所述本地缓存中不存在所述第一已处理数据时,在远程分布式缓存中查找是否存在与其对应的第一已处理数据。
上述的方法,可选的,还包括:
当所述本地缓存中的数据量超出其对应的存储阈值时,采用软引用方式实现缓存回收。
上述的方法,可选的,还包括:
将所述第二已处理数据存储至所述多级缓存中。
一种海量结构化数据的处理装置,包括:
获取模块,用于采用kafka消息中间件获取数据库中的各个待处理数据;
对比模块,用于将每一个待处理数据与多级缓存中的已存储数据进行对比;
第一存储模块,用于当存在与其对应的第一已处理数据时,将所述第一已处理数据存入所述kafka消息中间件中,或,当不存在与其对应的第一已处理数据时,将其分配对应的处理单元进行处理,得到第二已处理数据,将所述第二已处理数据存入所述kafka消息中间件中;
第二存储模块,用于当所述各个待处理数据处理完成时,将所述kafka消息中间件中的数据存储至数据库中。
上述的装置,可选的,所述获取模块包括:
读取和存入单元,用于采用异步线程池在数据库中分批读取待处理数据,存入kafka消息中间件;
统计单元,用于每间隔预设时长,对所述kafka消息中间件中的数据量进行统计;
获取单元,用于当所述数据量达到预设的数据量阈值时,触发处理单元获取各个待处理数据。
上述的装置可选的,所述对比模块包括:
第一查找单元,用于针对每一个待处理数据,在本地缓存中查找与其对应的第一已处理数据
第二查找单元,用于当所述本地缓存中不存在所述第一已处理数据时,在远程分布式缓存中查找是否存在与其对应的第一已处理数据。
上述的装置,可选的,还包括:
缓存回收单元,用于当所述本地缓存中的数据量超出其对应的存储阈值时,采用软引用方式实现缓存回收。
上述的装置,可选的,还包括:
第三存储模块,用于将所述第二已处理数据存储至所述多级缓存中。
与现有技术相比,本发明包括以下优点:
本发明公开了一种海量结构化数据的处理方法,包括:采用kafka消息中间件获取数据库中的各个待处理数据;将每一个待处理数据与多级缓存中的已存储数据进行对比;当存在与其对应的第一已处理数据时,将所述第一已处理数据存入所述kafka消息中间件中,或,当不存在与其对应的第一已处理数据时,将其分配对应的处理单元进行处理,得到第二已处理数据,将所述第二已处理数据存入所述kafka消息中间件中;当所述各个待处理数据处理完成时,将所述kafka消息中间件中的数据存储至数据库中。上述方法,采用kafka消息中间件获取和存储对应数据,依据多级缓存和处理单元处理对应数据,不受CPU核数和占用限制,数据处理效率高。
当然,实施本发明的任一产品并不一定需要同时达到以上所述的所有优点。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例公开的一种海量结构化数据的处理方法流程图;
图2为本申请实施例公开的一种海量结构化数据的解密过程示意图;
图3为本申请实施例公开的一种多级缓存处理过程示意图;
图4为本申请实施例公开的一种海量结构化数据的处理装置结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明公开了一种海量结构化数据的处理方法,应用在对海量结构化数据的处理过程中,其中,处理过程可以为解密过程、加密过程和查询过程等,海量结构化数据指数据库中数据量在100万条以上的结构化数据。所述处理方法综合利用了微服务框架、异步线程池、多级缓存和kafka集群部署技术。所述处理方法的执行流程如图1所示,包括步骤:
S101、采用kafka消息中间件获取数据库中的各个待处理数据;
本发明实施例中,采用异步线程池在数据库中分批读取待处理数据,存入kafka消息中间件,kafka设置Listen监听消息队列,设置每间隔4s监听一次,对所述kafka消息中间件中的数据量进行统计,当所述数据量达到5000条时,获取各个待处理数据,其中,本发明实施例中对监听的间隔时长4s和数据量阈值5000只是举例说明,不进行限定。
S102、将每一个待处理数据与多级缓存中的已存储数据进行对比;
本发明实施例中,所述处理方法采用多级缓存,其中,所述多级缓存包括本地缓存和远程分布式缓存,其中,本地缓存和远程分布式缓存中存储有历史处理数据,首先从本地缓存中查询并获取需要的数据,本地缓存没有,再从远程分布式缓存中获取,其中,所述远程分布式缓存可以为redis缓存。其中,本地缓存效率更高,远程分布式缓存可以解决分布式部署系统的缓存问题。分别将每一个待处理数据与本地缓存、本地缓存和远程分布式缓存中的数据进行对比。
S103、当存在与其对应的第一已处理数据时,将所述第一已处理数据存入所述kafka消息中间件中,或,当不存在与其对应的第一已处理数据时,将其分配对应的处理单元进行处理,得到第二已处理数据,将所述第二已处理数据存入所述kafka消息中间件中;
本发明实施例中,首先在本地缓存中查找与当前待处理数据相同的第一已处理数据,查找过程如下,获取所述当前待处理数据的标识,依据所述标识在所述本地缓存中查找与标识相同的第一已处理数据,其中,所述标识可以为编号、字母等,本发明实施例中,对标识的具体形式不进行限定,当所述本地缓存中不存在与其对应的第一已处理数据时,继续在所述远程分布式缓存中查找与所述当前待处理数据对应的第一已处理数据,查找的方法与本地缓存中相同,当所述远程分布式缓存中也不存在所述第一已处理数据时,将所述当前待处理数据分配给对应的处理单元进行处理,得到第二已处理数据,将所述第二已处理数据存储在所述kafka消息中间件中。
进一步的,现有的处理过程中对应用程序的任意部分进行更改,需要重建和部署整个程序。随着时间的推移,它通常很难保持良好的模块化结构,因此,本发明实施例中,首先处理单元以微服务的形式存在,不收CPU内核的限制,可以依据需要进行增加或者删除的操作,其次,使用多节点集群部署方式,提高海量结构化数据的处理性能和系统的稳定性。
S104、当所述各个待处理数据处理完成时,将所述kafka消息中间件中的数据存储至数据库中。
本发明实施例中,当所述各个待处理数据处理完成时,同在在所述kafka消息中间件中获取已经处理完的数据,并将其存储至数据库中,其中,存储待处理数据的数据库和已完成处理的数据库两者可以相同也可以不同。
本发明公开了一种海量结构化数据的处理方法,包括:采用kafka消息中间件获取数据库中的各个待处理数据;将每一个待处理数据与多级缓存中的已存储数据进行对比;当存在与其对应的第一已处理数据时,将所述第一已处理数据存入所述kafka消息中间件中,或,当不存在与其对应的第一已处理数据时,将其分配对应的处理单元进行处理,得到第二已处理数据,将所述第二已处理数据存入所述kafka消息中间件中;当所述各个待处理数据处理完成时,将所述kafka消息中间件中的数据存储至数据库中。上述方法,采用kafka消息中间件获取和存储对应数据,依据多级缓存和处理单元处理对应数据,不受CPU核数和占用限制,数据处理效率高。
在大多业务数据中,很多待处理数据的字段是一样的,如:所属单位、籍贯等数据出现重复性的几率很高,针对同样的数据重复进行处理,花费很长时间。为了提高海量结构化数据的性能采用多级缓存方式,通过将处理后的数据分别存入本地缓存和远程分布式缓存中,后续有相同数据需要解密的,直接从对应的缓存中获取就可以,整体缩短了处理待处理数据的时间。由于每次调用远程分布式缓存,涉及磁盘读写,将消耗I/0。如果使用本地缓存,本地缓存是在内存中读取缓存数据的,减少了操作I/O的消耗。因此,获取的原则:优先在本地缓存中获取,当本地缓存中不存在时,在远程分布式缓存中获取。
进一步的,由于本地缓存的存储空间有限,当所述本地缓存中存储的数据量超出其存储阈值时,采用软引用的方式实现缓存回收,回收的原则是删除缓存中使用频次少于预设的频次阈值的数据,其中,所述预设频次阈值可以依据经验或者实际情况进行设定,本发明实施例中,对所述预设的频次阈值不进行限定。
本发明实施例中,以数据处理过程为解密过程为例对上述过程进行说明,解密的示意图如图2所示,首先采用异步线程池从数据库中分批次读取待解密数据,存入kafka消息中间件中,设置Listen监听kafka消息中间件中的消息队列,每间隔4秒监听一次,当数据大于5000条时。解密微服务集群作为kafka消费者从kafka中获取5000条待解密数据,到对应的解密微服务中进行解密。解密微服务中采用异步线程池和多级缓存方式,其中,所述异步线程池中包含多个解密线程,每一个解密线程代表一个解密微服务,首先将5000条待解密数据分到多个解密线程中分别进行解密,解密可以采用国密算法进行解密,处理过程如图3所示,每个解密线程中先从本地缓存中获取解密后的明文数据,如果没有数据再从redis远程缓存中获取解密后的明文数据,如果有直接获取,如果两级缓存都没有,则调用对应的解密接口,在对应的解密微服务进行解密,解密后明文数据存入两级缓存中。采用Listen监听kafka消息中间中的消息队列,当处理完成或者达到预设的数据量阈值时,将解密后的明文数据存入kafka消息中间件中,最后将所述kafka中间件中的所有数据一次存入数据库中。
其中,本地缓存采用软应用方式存储数据,因为海量结构化数据缓存占用大量内存,不进行内存回收,系统不能自动回收,可能导致系统不可用;如果进行手动回收会导致系统其它缓存丢失,同样令系统不可用。所以采用软应用的方式,占用的缓存系统会自动回收缓存。对于软引用关联的对象,在内存不足的时候系统会回收该对象,不会内存溢出,软引用是实现缓存回收的重要方式。
上述的解密方法中,Kafka消息中间件的作用是批量读取和存储数据库数据,延迟修改的原理是通过减少对数据库操作的次数来提高效率,如果使用得恰当,效率将会呈数量级提升。批量读取是将多次查询合并到一次中进行。如果不采用kafka消息中间件对于海量结构化数据每次读取或写入数据库需要对数据库建立连接,对数据库性能消耗很大。同时Kafka消息中间件可以集群部署方式,解决了数据处理的稳定性,避免单个服务出现问题,影响系统功能使用。
基于上述的一种海量结构化数据的处理方法,本发明实施例中,还提供了一种海量结构化数据的处理装置,所述处理装置的机构框图如图4所示,包括:
获取模块201、对比模块202、第一存储模块203和第二存储模块204。
其中,
所述获取模块201,用于采用kafka消息中间件获取数据库中的各个待处理数据;
所述对比模块202,用于将每一个待处理数据与多级缓存中的已存储数据进行对比;
所述第一存储模块203,用于当存在与其对应的第一已处理数据时,将所述第一已处理数据存入所述kafka消息中间件中,或,当不存在与其对应的第一已处理数据时,将其分配对应的处理单元进行处理,得到第二已处理数据,将所述第二已处理数据存入所述kafka消息中间件中;
所述第二存储模块204,用于当所述各个待处理数据处理完成时,将所述kafka消息中间件中的数据存储至数据库中。
本发明公开了一种海量结构化数据的处理装置,包括:采用kafka消息中间件获取数据库中的各个待处理数据;将每一个待处理数据与多级缓存中的已存储数据进行对比;当存在与其对应的第一已处理数据时,将所述第一已处理数据存入所述kafka消息中间件中,或,当不存在与其对应的第一已处理数据时,将其分配对应的处理单元进行处理,得到第二已处理数据,将所述第二已处理数据存入所述kafka消息中间件中;当所述各个待处理数据处理完成时,将所述kafka消息中间件中的数据存储至数据库中。上述装置,采用kafka消息中间件获取和存储对应数据,依据多级缓存和处理单元处理对应数据,不受CPU核数和占用限制,数据处理效率高。
本发明实施例中,所述获取模块201包括:
读取和存入单元205、统计单元206和获取单元207。
其中,
所述读取和存入单元205,用于采用异步线程池在数据库中分批读取待处理数据,存入kafka消息中间件;
所述统计单元206,用于每间隔预设时长,对所述kafka消息中间件中的数据量进行统计;
所述获取单元207,用于当所述数据量达到预设的数据量阈值时,触发处理单元获取各个待处理数据。
本发明实施例中,所述对比模块202包括
第一查找单元208和第二查找单元209。
其中,
所述第一查找单元208,用于针对每一个待处理数据,在本地缓存中查找与其对应的第一已处理数据
所述第二查找单元209,用于当所述本地缓存中不存在所述第一已处理数据时,在远程分布式缓存中查找是否存在与其对应的第一已处理数据。
本发明实施例中,所述处理装置还包括:缓存回收单元210。
其中,
所述缓存回收单元210,用于当所述本地缓存中的数据量超出其对应的存储阈值时,采用软引用方式实现缓存回收。
本发明实施例中,所述处理装置还包括:第三处理模块211。
其中,
所述第三存储模块211,用于将所述第二已处理数据存储至所述多级缓存中。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本发明时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例或者实施例的某些部分所述的方法。
以上对本发明所提供的一种海量结构化数据的处理方法及装置进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。

Claims (10)

1.一种海量结构化数据的处理方法,其特征在于,包括:
采用kafka消息中间件获取数据库中的各个待处理数据;
将每一个待处理数据与多级缓存中的已存储数据进行对比;
当存在与其对应的第一已处理数据时,将所述第一已处理数据存入所述kafka消息中间件中,或,当不存在与其对应的第一已处理数据时,将其分配对应的处理单元进行处理,得到第二已处理数据,将所述第二已处理数据存入所述kafka消息中间件中;
当所述各个待处理数据处理完成时,将所述kafka消息中间件中的数据存储至数据库中。
2.根据权利要求1所述的方法,其特征在于,采用kafka消息中间件获取数据库中的各个待处理数据,包括:
采用异步线程池在数据库中分批读取待处理数据,存入kafka消息中间件;
每间隔预设时长,对所述kafka消息中间件中的数据量进行统计;
当所述数据量达到预设的数据量阈值时,触发处理单元获取各个待处理数据。
3.根据权利要求1所述的方法,其特征在于,将每一个待处理数据与多级缓存中的已存储数据进行对比,包括:
针对每一个待处理数据,在本地缓存中查找与其对应的第一已处理数据当所述本地缓存中不存在所述第一已处理数据时,在远程分布式缓存中查找是否存在与其对应的第一已处理数据。
4.根据权利要求3所述的方法,其特征在于,还包括:
当所述本地缓存中的数据量超出其对应的存储阈值时,采用软引用方式实现缓存回收。
5.根据权利要求1所述的方法,其特征在于,还包括:
将所述第二已处理数据存储至所述多级缓存中。
6.一种海量结构化数据的处理装置,其特征在于,包括:
获取模块,用于采用kafka消息中间件获取数据库中的各个待处理数据;
对比模块,用于将每一个待处理数据与多级缓存中的已存储数据进行对比;
第一存储模块,用于当存在与其对应的第一已处理数据时,将所述第一已处理数据存入所述kafka消息中间件中,或,当不存在与其对应的第一已处理数据时,将其分配对应的处理单元进行处理,得到第二已处理数据,将所述第二已处理数据存入所述kafka消息中间件中;
第二存储模块,用于当所述各个待处理数据处理完成时,将所述kafka消息中间件中的数据存储至数据库中。
7.根据权利要求6所述的装置,其特征在于,所述获取模块包括:
读取和存入单元,用于采用异步线程池在数据库中分批读取待处理数据,存入kafka消息中间件;
统计单元,用于每间隔预设时长,对所述kafka消息中间件中的数据量进行统计;
获取单元,用于当所述数据量达到预设的数据量阈值时,触发处理单元获取各个待处理数据。
8.根据权利要求6所述的装置,其特征在于,所述对比模块包括:
第一查找单元,用于针对每一个待处理数据,在本地缓存中查找与其对应的第一已处理数据
第二查找单元,用于当所述本地缓存中不存在所述第一已处理数据时,在远程分布式缓存中查找是否存在与其对应的第一已处理数据。
9.根据权利要求8所述的装置,其特征在于,还包括:
缓存回收单元,用于当所述本地缓存中的数据量超出其对应的存储阈值时,采用软引用方式实现缓存回收。
10.根据权利要求6所述的装置,其特征在于,还包括:
第三存储模块,用于将所述第二已处理数据存储至所述多级缓存中。
CN201910887944.8A 2019-09-19 2019-09-19 一种海量结构化数据的处理方法及装置 Active CN110633302B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910887944.8A CN110633302B (zh) 2019-09-19 2019-09-19 一种海量结构化数据的处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910887944.8A CN110633302B (zh) 2019-09-19 2019-09-19 一种海量结构化数据的处理方法及装置

Publications (2)

Publication Number Publication Date
CN110633302A true CN110633302A (zh) 2019-12-31
CN110633302B CN110633302B (zh) 2023-08-11

Family

ID=68971839

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910887944.8A Active CN110633302B (zh) 2019-09-19 2019-09-19 一种海量结构化数据的处理方法及装置

Country Status (1)

Country Link
CN (1) CN110633302B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112000969A (zh) * 2020-08-19 2020-11-27 银盛支付服务股份有限公司 大数据高效异同步解密处理方法、模块及系统
CN112486707A (zh) * 2020-12-14 2021-03-12 中国人民银行清算总中心 基于Redis的消息异步消费方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180060364A1 (en) * 2016-08-24 2018-03-01 Sap Se Database scheme for storing generic data
CN109857738A (zh) * 2019-01-07 2019-06-07 平安科技(深圳)有限公司 数据存储方法、装置、计算机设备及存储介质

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180060364A1 (en) * 2016-08-24 2018-03-01 Sap Se Database scheme for storing generic data
CN109857738A (zh) * 2019-01-07 2019-06-07 平安科技(深圳)有限公司 数据存储方法、装置、计算机设备及存储介质

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112000969A (zh) * 2020-08-19 2020-11-27 银盛支付服务股份有限公司 大数据高效异同步解密处理方法、模块及系统
CN112486707A (zh) * 2020-12-14 2021-03-12 中国人民银行清算总中心 基于Redis的消息异步消费方法及装置

Also Published As

Publication number Publication date
CN110633302B (zh) 2023-08-11

Similar Documents

Publication Publication Date Title
US8380680B2 (en) Piecemeal list prefetch
CN112437916A (zh) 数据库表的增量群集
CN106649869B (zh) 数据库大数据的统计方法及装置
CN110647512B (zh) 一种数据存储和分析方法、装置、设备和可读介质
CN105608117A (zh) 一种信息推荐方法及装置
CN107346270B (zh) 基于实时计算的基数估计的方法和系统
CN110633302A (zh) 一种海量结构化数据的处理方法及装置
CN107357794B (zh) 优化键值数据库的数据存储结构的方法和装置
CN110032578B (zh) 一种海量数据查询缓存的方法及装置
CN111461583B (zh) 一种库存盘点方法和装置
CN107562810A (zh) 视频大数据分级存储方法
CN105653556B (zh) 一种数据老化方法及装置
CN112052259A (zh) 数据处理方法、装置、设备及计算机存储介质
CN112445833A (zh) 一种分布式数据库的数据分页查询方法、装置和系统
CN109669919B (zh) 文件来源识别方法及装置
CN112579633A (zh) 一种数据检索方法、装置、设备及存储介质
CN114372071A (zh) 一种表数据删除方法、装置、计算机设备及存储介质
US11681680B2 (en) Method, device and computer program product for managing index tables
US9928274B2 (en) Dynamically adjust duplicate skipping method for increased performance
CN112835932A (zh) 业务表的批量处理方法及装置、非易失性存储介质
CN112702426A (zh) 数据包转发方法、装置、电子设备及存储介质
WO2015058628A1 (zh) 文件的访问方法及装置
CN109086279B (zh) 报表缓存方法和装置
CN112100247B (zh) ElasticSearch查询数据的方法及其系统
CN110879818A (zh) 一种获取数据的方法、装置、介质和电子设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant