CN116431885B - 高可用的实时搜索系统 - Google Patents

高可用的实时搜索系统 Download PDF

Info

Publication number
CN116431885B
CN116431885B CN202310671548.8A CN202310671548A CN116431885B CN 116431885 B CN116431885 B CN 116431885B CN 202310671548 A CN202310671548 A CN 202310671548A CN 116431885 B CN116431885 B CN 116431885B
Authority
CN
China
Prior art keywords
time
data
log
binlog
real
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.)
Active
Application number
CN202310671548.8A
Other languages
English (en)
Other versions
CN116431885A (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.)
Beijing Xinli Dingling Technology Co ltd
Original Assignee
Beijing Xinli Dingling Technology 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 Beijing Xinli Dingling Technology Co ltd filed Critical Beijing Xinli Dingling Technology Co ltd
Priority to CN202310671548.8A priority Critical patent/CN116431885B/zh
Publication of CN116431885A publication Critical patent/CN116431885A/zh
Application granted granted Critical
Publication of CN116431885B publication Critical patent/CN116431885B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • 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/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • 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/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • 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)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种高可用的实时搜索系统,包括依次连接的Mysql数据库、Canal集群以及ElasticSearch,获取ElasticSearch所对应搜索引擎的搜索负荷状态,根据所述搜索负荷状态确定数据库的实时同步数据速率;Canal集群获取MySQL数据库的Binlog日志并解析,所述Binlog日志内具有Mysql数据库所更新数据的数据信息;Canal集群对Binlog日志的数据信息量化处理得到相对应的数据更新需求量和数据更新需求速率;Canal集群基于中间件将Binlog日志实时同步至ElasticSearch,ElasticSearch基于所述Binlog日志对原始数据实时更新。本发明能够实现海量请求和秒级响应,并进行实时增量同步。

Description

高可用的实时搜索系统
技术领域
本发明涉及大数据技术领域,尤其涉及一种高可用的实时搜索系统。
背景技术
传统的关系型数据库在存储大数据量的情况下,查询的效率会急剧下降,甚至拖累整个业务系统,此时一般的解决方案是进行分库分表或通过任务进行将业务数据按结果所需的形式进行归档至一个特定的查询库中,该种方式并不具有高可用性。
所以,需要一种技术方案,能够对关系型数据库的大量数据进行快速的、高可用的查询。
发明内容
本发明实施例提供一种高可用的实时搜索系统,利用了MySQL数据库主从同步的原理,将Canal Server模拟成一台需要同步的从库,从而让主库将binlog日志流发送到Canal Server接口并进行解析,将数据的更新同步至Elastic Search,实现高可用的快速查询。
本发明实施例的第一方面,提供一种高可用的实时搜索系统,包括依次连接的Mysql数据库、Canal集群以及ElasticSearch,通过以下步骤进行实时搜索,包括:
获取ElasticSearch所对应搜索引擎的搜索负荷状态,根据所述搜索负荷状态确定数据库的实时同步数据速率,所述搜索负荷状态与所述实时同步数据速率呈反比;
Canal集群获取MySQL数据库的Binlog日志并解析,所述Binlog日志内具有Mysql数据库所更新数据的数据信息,所述数据信息包括相对应的数据标识、数据增加状态、数据减少状态或数据变更状态;
Canal集群对Binlog日志的数据信息量化处理得到相对应的数据更新需求量和数据更新需求速率;
若所述数据更新需求速率与所述实时同步数据速率相对应,Canal集群基于中间件将Binlog日志实时同步至ElasticSearch,ElasticSearch基于所述Binlog日志对原始数据实时更新;
若所述数据更新需求速率与所述实时同步数据速率不对应,Canal集群生成日志留置中间件,日志留置中间件根据每个Binlog日志的接收时间得到日志序列;
日志留置中间件基于所述日志序列以及每个Binlog日志的数据信息量确定Binlog日志同步至ElasticSearch的同步时间,并在达到所述同步时间后对Binlog日志同步处理。
可选地,在第一方面的一种可能实现方式中,所述获取ElasticSearch所对应搜索引擎的搜索负荷状态,根据所述搜索负荷状态确定数据库的实时同步数据速率,所述搜索负荷状态与所述实时同步数据速率呈反比,包括:
获取ElasticSearch所对应搜索引擎的搜索负荷状态,所述搜索负荷状态至少包括当前搜索频率和当前数据抓取时间;
将所述当前搜索频率与预设搜索频率比对后基于频率预设权重加权处理,得到频率比对系数,将所述当前数据抓取时间与预设数据抓取时间比对后基于时间预设权重加权处理,得到时间比对系数;
根据所述频率比对系数、时间比对系数对预设同步数据速率进行偏移计算,得到实时同步数据速率。
可选地,在第一方面的一种可能实现方式中,所述根据所述频率比对系数、时间比对系数对预设同步数据速率进行偏移计算,得到实时同步数据速率,包括:
将所述频率比对系数、时间比对系数相加得到比对系数之和,若所述比对系数之和的绝对值小于等于变化阈值,则不对预设同步数据速率进行改变;
若所述比对系数之和的绝对值大于变化阈值,则通过以下公式对预设同步数据速率进行偏移计算得到实时同步数据速率,
其中,为频率比对系数,/>为时间比对系数,/>为实时同步数据速率,/>为当前搜索频率,/>为预设搜索频率,/>为频率预设权重,/>为当前数据抓取时间,/>为预设数据抓取时间,/>为时间预设权重,/>为变化阈值,/>为预设同步数据速率。
可选地,在第一方面的一种可能实现方式中,所述Canal集群获取MySQL数据库的Binlog日志并解析,所述Binlog日志内具有Mysql数据库所更新数据的数据信息,所述数据信息包括相对应的数据标识、数据增加状态、数据减少状态或数据变更状态,包括:
Canal集群获取多个MySQL数据库的Binlog日志并解析,得到每个MySQL数据库所更新数据的数据信息;
获取每个Binlog日志相应的数据标识,以及相对应的数据增加状态、数据减少状态或数据变更状态中的任意一个。
可选地,在第一方面的一种可能实现方式中,所述Canal集群对Binlog日志的数据信息量化处理得到相对应的数据更新需求量和数据更新需求速率,包括:
根据所述数据标识所对应的模态类型得到相对应的基础量化值集,每个基础量化值集对应一个模态类型,所述模态类型至少包括文本类型、图像类型、音频类型和视频类型;
根据所述数据增加状态、数据减少状态或数据变更状态确定所述基础量化值集中相对应的第一量化更新值;
统计所有Binlog日志内每个数据标识所对应的第一量化更新值,根据所述第一量化更新值得到当前所有Binlog日志的数据更新需求量;
将所述数据更新需求量与预设更新时间比对得到相对应的数据更新需求速率。
可选地,在第一方面的一种可能实现方式中,所述若所述数据更新需求速率与所述实时同步数据速率相对应,Canal集群基于中间件将Binlog日志实时同步至ElasticSearch,ElasticSearch基于所述Binlog日志对原始数据实时更新,包括:
若所述数据更新需求速率小于等于所述实时同步数据速率,则判断当前基于Binlog日志的更新需求能够达到要求,Canal集群基于中间件将Binlog日志实时同步至ElasticSearch;
ElasticSearch基于所述Binlog日志对原始数据实时更新。
可选地,在第一方面的一种可能实现方式中,所述若所述数据更新需求速率与所述实时同步数据速率不对应,Canal集群生成日志留置中间件,日志留置中间件根据每个Binlog日志的接收时间得到日志序列,包括:
若所述数据更新需求速率大于所述实时同步数据速率,则判断当前基于Binlog日志的更新需求未达到要求,Canal集群生成日志留置中间件;
日志留置中间件获取所有Binlog日志的接收时间,并按照所述接收时间对Binlog日志由远及近的排序,得到日志序列。
可选地,在第一方面的一种可能实现方式中,所述日志留置中间件基于所述日志序列以及每个Binlog日志的数据信息量确定Binlog日志同步至ElasticSearch的同步时间,并在达到所述同步时间后对Binlog日志同步处理,包括:
日志留置中间件计算每个Binlog日志的数据信息量,并对每个Binlog日志添加相对应的信息标签;
在将日志留置中间件内前一个顺序的第一Binlog日志同步至ElasticSearch时,获取前一个顺序的第一Binlog日志的第一同步时间以及相对应的第一数据信息量;
根据所述第一数据信息量、实时同步数据速率得到相对应的第一预估处理时间,根据所述第一同步时间、第一预估处理时间得到后一个顺序的第二Binlog日志同步的第二同步时间。
可选地,在第一方面的一种可能实现方式中,所述根据所述第一数据信息量、实时同步数据速率得到相对应的第一预估处理时间,根据所述第一同步时间、第一预估处理时间得到后一个顺序的第二Binlog日志同步的第二同步时间,包括:
将所述第一数据信息量、实时同步数据速率得到相对应的第一预估处理时间,基于时间计算权重值对第一预估处理时间加权处理;
将第一同步时间与第一预估处理时间相加得到相对应的第二同步时间,通过以下公式计算第二Binlog日志同步的第二同步时间,
其中,为第二同步时间,/>为第一同步时间,/>为第一数据信息量,/>为时间计算权重值。
可选地,在第一方面的一种可能实现方式中,还包括:
获取预设时间段内每次所生成日志留置中间件的生成时刻和清除时刻,根据所述生成时刻和清除时刻得到每个日志留置中间件相对应的留存时间段;
统计预设时间段内所生成的日志留置中间件的数量,根据所述数量和留存时间段进行计算得到ElasticSearch的评价系数;
若所述评价系数大于预设系数,则生成对ElasticSearch的增配指示。
本发明实施例的第二方面,提供一种存储介质,所述存储介质中存储有计算机程序,所述计算机程序被处理器执行时用于实现本发明第一方面及第一方面各种可能设计的所述方法。
本发明提供的一种高可用的实时搜索系统,基于Canal集群使得Mysql数据库与ElasticSearch之间的数据同步相打通,通过分布式多用户能力的全文搜索引擎提供搜索服务,能够达到实时搜索,具有稳定、可靠、快速、便于安装使用的优势。本发明利用了MySQL数据库主从同步的原理,将Canal Server模拟成一台需要同步的从库,从而让主库将binlog日志流发送到Canal Server接口并进行解析,将数据的更新同步至ElasticSearch,实现高可用的快速查询。
本发明提供的技术方案,可以根据ElasticSearch所对应搜索引擎的搜索负荷状态进行多个维度的综合计算,得到相对应的实时同步数据速率,本发明将实时同步数据速率作为依据,作为后续对Binlog日志的同步方式的依据,使得后续根据更新需求速率与所述实时同步数据速率之间的关系采取不同的日志分发方式,保障ElasticSearch能够满足用户搜索的需求下,实时对Mysql数据库所更新的数据进行更新。
本发明提供的技术方案,Canal集群会在需要对Binlog日志进行依次分发时生成相对应的日志留置中间件,本发明会对不同模态、状态的数据进行量化,得到不同Binlog日志的数据信息量,并根据第一Binlog日志的第一数据信息量确定第二Binlog日志的分发时间,使得本发明能够根据在将多个Binlog日志分发时间隔相对应的时间,进而减少ElasticSearch所对应的缓存占用、CPU的算力占用,使得ElasticSearch能够更加稳定的对用户进行提供实时搜索服务。
本发明可以针对日志留置中间件进行统计,并且根据日志留置中间件在使用时间、生成数量的维度上进行分析,如果日志留置中间件的使用时间较长、生成数量较多,则可以判定当前ElasticSearch的配置已经无法满足用户同时的搜索、数据同步的需求,此时本发明会输出相应的增配指示,以达到系统的稳定性。
附图说明
图1为高可用的实时搜索系统的结构示意图;
图2为高可用的实时搜索系统的流程示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。
应当理解,在本发明的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本发明实施例的实施过程构成任何限定。
应当理解,在本发明中,“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应当理解,在本发明中,“多个”是指两个或两个以上。“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。“包含A、B和C”、“包含A、B、C”是指A、B、C三者都包含,“包含A、B或C”是指包含A、B、C三者之一,“包含A、B和/或C”是指包含A、B、C三者中任1个或任2个或3个。
应当理解,在本发明中,“与A对应的B”、“与A相对应的B”、“A与B相对应”或者“B与A相对应”,表示B与A相关联,根据A可以确定B。根据A确定B并不意味着仅仅根据A确定B,还可以根据A和/或其他信息确定B。A与B的匹配,是A与B的相似度大于或等于预设的阈值。
取决于语境,如在此所使用的“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。
下面以具体地实施例对本发明的技术方案进行详细说明。下面这几个具体的实施例可以相互结合,对于相同或相似的概念或过程可能在某些实施例不再赘述。
本发明提供一种高可用的实时搜索系统,如图1所示其结构示意图,包括依次连接的Mysql数据库、Canal集群以及ElasticSearch。Canal集群用于接收Mysql数据库所产生的binlog日志,Canal集群对binlog日志解析后同步至ElasticSearch处进行数据更同步更新处理。
Mysql数据库为关系型数据库,用于存储相应的数据,Canal集群是开源项目,Canal项目利用了MySQL数据库主从同步的原理,将Canal Server模拟成一台需要同步的从库,从而让主库将binlog日志流发送到Canal Server接口。Canal项目对binlog日志的解析进行了封装,可以直接得到解析后的数据,而不需要参考binlog的日志格式。而且Canal项目整合了zookeeper,整体实现了高可用,可伸缩性强。ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTFUL web接口。Elastic search是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。能够达到实时搜索,具有稳定、可靠、快速、安装使用方便等优势。Mysql数据库在发生数据的存储变化时,会根据binlog日志对相应的变更数据进行确定,根据Canal集群解析同步,使得ElasticSearch对相应的数据进行更新,以达到后台的数据库更时,相应的搜索引擎对应的数据也会快速更新。
如图2所示,通过以下步骤进行实时搜索,包括:
步骤S110、获取ElasticSearch所对应搜索引擎的搜索负荷状态,根据所述搜索负荷状态确定数据库的实时同步数据速率,所述搜索负荷状态与所述实时同步数据速率呈反比。不同的ElasticSearch服务器会具有不同的硬件配置,不同的硬件配置决定了其会具有不同的处理效率。ElasticSearch服务器的算力在工作过程中,主要是面对用户进行搜索服务的数据处理,以及后台数据更新的数据处理。所以本发明需要根据ElasticSearch所对应搜索引擎的搜索负荷状态,确定确定数据库的实时同步数据速率,使得ElasticSearch在满足用户搜索快速实时响应的需求下,确定数据库的实时同步数据速率。需要说明的是,搜索负荷状态与实时同步数据速率呈反比,搜索负荷状态越重,则实时同步数据速率越小。
本发明提供的技术方案,在一个可能的实施方式中,步骤S110包括:
获取ElasticSearch所对应搜索引擎的搜索负荷状态,所述搜索负荷状态至少包括当前搜索频率和当前数据抓取时间。本发明会首先获取搜索引擎的搜索负荷状态,通过当前搜索频率和当前数据抓取时间能够反映出当前所有用户的搜索需求量,通过当前数据抓取时间能够反映出给用户反馈相应搜索数据时的反馈能力。当前搜索频率可以是单位时间(一分钟)内所有用户通过搜索引擎的搜索量。当前数据抓取时间可以是单位时间内所有用户的平均的数据抓取(搜索页面反馈)时间。
将所述当前搜索频率与预设搜索频率比对后基于频率预设权重加权处理,得到频率比对系数,将所述当前数据抓取时间与预设数据抓取时间比对后基于时间预设权重加权处理,得到时间比对系数。本发明会将当前搜索频率与预设搜索频率比对得到频率比对系数,如果当前搜索频率越高,则相对应的频率比对系数就越大,此时用户的搜索负荷相对就越大。如果当前数据抓取时间越长,则相对应的时间比对系数就越大,此时搜索服务器的反馈能力就相对降低。
根据所述频率比对系数、时间比对系数对预设同步数据速率进行偏移计算,得到实时同步数据速率。本发明会根据用户的搜索频率、搜索服务器的反馈时间等多个维度进行综合计算,并对预设同步数据速率进行偏移处理,得到相对应的实时同步数据速率,该实时同步数据速率即为此时最易对ElasticSearch进行数据时,ElasticSearch服务器对数据存储的适宜工作状态。
本发明提供的技术方案,在一个可能的实施方式中,所述根据所述频率比对系数、时间比对系数对预设同步数据速率进行偏移计算,得到实时同步数据速率,包括:
将所述频率比对系数、时间比对系数相加得到比对系数之和,若所述比对系数之和的绝对值小于等于变化阈值,则不对预设同步数据速率进行改变。此时搜索引擎的处理负荷相对来说能够满足用户的需求,则不对预设同步数据速率进行改变,此时可以按照预设同步数据速率进行数据的同步。
若所述比对系数之和的绝对值大于变化阈值,则通过以下公式对预设同步数据速率进行偏移计算得到实时同步数据速率,
其中,为频率比对系数,/>为时间比对系数,/>为实时同步数据速率,/>为当前搜索频率,/>为预设搜索频率,/>为频率预设权重,/>为当前数据抓取时间,/>为预设数据抓取时间,/>为时间预设权重,/>为变化阈值,/>为预设同步数据速率。通过可以得到当前搜索频率与预设搜索频率的差值,根据/>得到差值占预设搜索频率的比例,通过频率预设权重/>对/>进行加权处理得到频率比对系数。通过可以得到当前数据抓取时间与预设数据抓取时间的差值,根据/>得到差值占预设数据抓取时间的比例,通过时间预设权重/>对/>进行加权处理得到时间比对系数。
比对系数之和的绝对值大于变化阈值,则此时可能出现两种情况,即大于0和/>小于0。如果/>大于0,则此时搜索引擎的负荷较重,此时需要对预设同步数据速率进行减小,得到的/>会小于/>。如果/>小于0,则此时搜索引擎的负荷较轻,此时可以对预设同步数据速率进行增大。通过以上的技术方案,能够根据搜索引擎多个维度的数据对预设同步数据速率进行偏移计算得到实时同步数据速率。
步骤S120、Canal集群获取MySQL数据库的Binlog日志并解析,所述Binlog日志内具有Mysql数据库所更新数据的数据信息,所述数据信息包括相对应的数据标识、数据增加状态、数据减少状态或数据变更状态。本发明中的Canal集群会获取MySQL数据库的Binlog日志并解析,Binlog日志内具有Mysql数据库所更新数据的数据信息。需要说明的是,本发明中的Binlog日志会针对每个数据标识配置相对应的数据增加状态、数据减少状态或数据变更状态,在Binlog日志可以是用特定字符代替。MySQL数据库在产生Binlog日志时即根据相应数据表内数据的状态进行状态的变化,例如数据表内增加某个数据时,则此时相应的Binlog日志中即会添加与数据增加状态对应的特定字符,数据减少状态或数据变更状态也是按照上述状态进行特定字符的添加。
本发明提供的技术方案,在一个可能的实施方式中,步骤S120包括:
Canal集群获取多个MySQL数据库的Binlog日志并解析,得到每个MySQL数据库所更新数据的数据信息。本发明中的Canal集群会获取MySQL数据库的Binlog日志并解析,得到相对应的数据信息。
获取每个Binlog日志相应的数据标识,以及相对应的数据增加状态、数据减少状态或数据变更状态中的任意一个。本发明会得到Binlog日志相应的数据标识,确定所有数据所处于的状态。
步骤S130、Canal集群对Binlog日志的数据信息量化处理得到相对应的数据更新需求量和数据更新需求速率。本发明会预先配置对Binlog日志的量化处理方案,通过该量化处理方案能够对Binlog日志的数据信息量化处理,进而得到相对应的数据更新需求量和数据更新需求速率,如果数据更新需求量越大,则此时相对应的数据更新需求速率就会越大。
本发明提供的技术方案,在一个可能的实施方式中,步骤S130包括:
根据所述数据标识所对应的模态类型得到相对应的基础量化值集,每个基础量化值集对应一个模态类型,所述模态类型至少包括文本类型、图像类型、音频类型和视频类型。本发明会根据数据标识所对应的模态类型得到相对应的基础量化值集,视频类型的基础量化值集内的数值优选大于图像类型和音频类型。在MySQL数据库中,可能会对多种类型的数据文件进行存储,不同类型的文件往往数据量是不同的,所以其在数据同步时的处理需求可能也是不同的,数据量相对越大,则此时的处理需求可能相对越高。
根据所述数据增加状态、数据减少状态或数据变更状态确定所述基础量化值集中相对应的第一量化更新值。本发明会根据数据增加状态、数据减少状态或数据变更状态的不同,得到基础量化值集中相对应的第一量化更新值。需要说明的是,同一种类型的数据在进行不同的数据处理时所需要的处理负荷也是不同的,所以本发明会根据相应的数据变化状态确定相应的第一量化更新值。
统计所有Binlog日志内每个数据标识所对应的第一量化更新值,根据所述第一量化更新值得到当前所有Binlog日志的数据更新需求量。本发明会统计所有Binlog日志内每个数据标识所对应的第一量化更新值,并根据第一量化更新值得到当前所有Binlog日志的数据更新需求量,每个第一量化更新值都是工作人员预先设置的,例如5MB、20MB、1GB等等。在实际的应用场景中,每个数据的数据量值大都是不同的,为了提高计算效率,本发明会直接默认为不同模态类型的数据在变化不同的状态时具有不同的量化值,本发明可以将Binlog日志内所有数据标识所对应的第一量化更新值相加,得到相对应的数据更新需求量。
在得到不同数据模态的每种数据增加状态、数据减少状态或数据变更状态时,本发明可以对前一个时间段的所有数据模态的数据增加状态、数据减少状态或数据变更状态的数据进行统计,并进行均值计算,得到每个数据模态下数据增加状态、数据减少状态或数据变更状态的数据的平均量值。通过该种方式,在保障统计数据更新需求量相对准确的同时,大幅降低了数据获取和运算量,提高数据处理效率。
将所述数据更新需求量与预设更新时间比对得到相对应的数据更新需求速率。可以将数据更新需求量与预设更新时间直接作比得到相对应的数据更新需求速率。预设更新时间可以是10秒、1分钟、5分钟等等。对于预设更新时间的具体数值本发明不做任何限定。
步骤S140、若所述数据更新需求速率与所述实时同步数据速率相对应,Canal集群基于中间件将Binlog日志实时同步至ElasticSearch,ElasticSearch基于所述Binlog日志对原始数据实时更新。在数据更新需求速率与实时同步数据速率相对应时,则此时ElasticSearch服务器的处理负荷能够同时满足用户的搜索和数据的不同,所以此时Canal集群基于中间件将Binlog日志实时同步至ElasticSearch,ElasticSearch基于所述Binlog日志对原始数据实时更新。
本发明提供的技术方案,在一个可能的实施方式中,步骤S130包括:
若所述数据更新需求速率小于等于所述实时同步数据速率,则判断当前基于Binlog日志的更新需求能够达到要求,Canal集群基于中间件将Binlog日志实时同步至ElasticSearch。此时ElasticSearch服务器可以满足用户的搜索和数据同步的需求,此时Canal集群会基于中间件将Binlog日志实时同步至ElasticSearch。
ElasticSearch基于所述Binlog日志对原始数据实时更新。
步骤S150、若所述数据更新需求速率与所述实时同步数据速率不对应,Canal集群生成日志留置中间件,日志留置中间件根据每个Binlog日志的接收时间得到日志序列。此时实时同步数据速率并不能够满足数据更新需求速率,此时的数据更新需求速率与所述实时同步数据速率不对应,此时Canal集群生成日志留置中间件,日志留置中间件根据每个Binlog日志的接收时间得到日志序列。
本发明提供的技术方案,在一个可能的实施方式中,步骤S130包括:
若所述数据更新需求速率大于所述实时同步数据速率,则判断当前基于Binlog日志的更新需求未达到要求,Canal集群生成日志留置中间件。本发明会通过日志留置中间件对Binlog日志进行相应的管理。
日志留置中间件获取所有Binlog日志的接收时间,并按照所述接收时间对Binlog日志由远及近的排序,得到日志序列。日志留置中间件会得到Canal集群对所有Binlog日志的接收时间,并按照接收时间对Binlog日志由远及近的排序得到日志序列,使得先接收的Binlog日志排在前部会被优先分发、处理。
步骤S160、日志留置中间件基于所述日志序列以及每个Binlog日志的数据信息量确定Binlog日志同步至ElasticSearch的同步时间,并在达到所述同步时间后对Binlog日志同步处理。日志留置中间件会根据每个Binlog日志的数据信息量进行计算,确定Binlog日志同步至ElasticSearch的同步时间,使得ElasticSearch在进行数据的同步存储时处理负荷不会较高,缓存占用更低,为搜索提供更多的算力,保障优先与用户进行搜索交互。
本发明提供的技术方案,在一个可能的实施方式中,步骤S160包括:
日志留置中间件计算每个Binlog日志的数据信息量,并对每个Binlog日志添加相对应的信息标签。日志留置中间件会分批得到每个Binlog日志的数据信息量,并添加相应的信息标签,使得在后续处理过程中,日志留置中间件能够根据相应的信息标签快速得到Binlog日志的数据信息量。
在将日志留置中间件内前一个顺序的第一Binlog日志同步至ElasticSearch时,获取前一个顺序的第一Binlog日志的第一同步时间以及相对应的第一数据信息量。本发明会按照日志序列内Binlog日志的顺序向ElasticSearch进行分发。本发明会在将前一个顺序的第一Binlog日志同步至ElasticSearch时,得到前一个顺序的第一Binlog日志的第一同步时间以及相对应的第一数据信息量,根据第一数据信息量进行后续的计算。
根据所述第一数据信息量、实时同步数据速率得到相对应的第一预估处理时间,根据所述第一同步时间、第一预估处理时间得到后一个顺序的第二Binlog日志同步的第二同步时间。本发明会根据第一数据信息量、实时同步数据速率得到相对应的第一预估处理时间,第一预估处理时间即为ElasticSearch对相应第一Binlog日志所对应数据的同步时间,本发明会根据第一同步时间、第一预估处理时间得到后一个顺序的第二Binlog日志同步的第二同步时间,即在第二同步时间对后一个顺序的第二Binlog日志同步,使得ElasticSearch的缓存占用、算力占用不会较多,使得其能够分担出更多的算力用于对用户的搜索进行服务。
本发明提供的技术方案,在一个可能的实施方式中,所述根据所述第一数据信息量、实时同步数据速率得到相对应的第一预估处理时间,根据所述第一同步时间、第一预估处理时间得到后一个顺序的第二Binlog日志同步的第二同步时间,包括:
将所述第一数据信息量、实时同步数据速率得到相对应的第一预估处理时间,基于时间计算权重值对第一预估处理时间加权处理。本发明会根据第一数据信息量、实时同步数据速率得到相对应的第一预估处理时间,即通过得到第一预估处理时间。
将第一同步时间与第一预估处理时间相加得到相对应的第二同步时间,通过以下公式计算第二Binlog日志同步的第二同步时间,
其中,为第二同步时间,/>为第一同步时间,/>为第一数据信息量,/>为时间计算权重值。本发明会将第一同步时间与第一预估处理时间相加得到相对应的第二同步时间,例如第一同步时间为9:00:00,第一预估处理时间为4分钟10秒,则第二同步时间即为9:04:10。时间计算权重值可以是用户预先设置的。
本发明提供的技术方案,在一个可能的实施方式中,还包括:
数据分析模型获取预设时间段内每次所生成日志留置中间件的生成时刻和清除时刻,根据所述生成时刻和清除时刻得到每个日志留置中间件相对应的留存时间段。日志留置中间件会在日志序列中不具有第二Binlog日志后清除。本发明会得到预设时间段内每次所生成日志留置中间件的生成时刻和清除时刻,预设时间段可以是一天、一周等等,通过生成时刻和清除时刻本发明会得到每个日志留置中间件相对应的留存时间段,如果留存时间段越长,则证明相应ElasticSearch服务器的负荷越重,其处理能力相对较差。
数据分析模型统计预设时间段内所生成的日志留置中间件的数量,根据所述数量和留存时间段进行计算得到ElasticSearch的评价系数。本发明同时会统计预设时间段内所生成的日志留置中间件的数量,如果中间件的数量越多,则ElasticSearch的处理负荷也会较大,经常会存在无法及时数据同步的情况。本发明会综合数量和留存时间段等维度进行计算得到ElasticSearch的评价系数,数据分析模型可以通过以下公式计算得到ElasticSearch的评价系数,
其中,为评价系数,/>为第/>个日志留置中间件的留存时间段,/>为日志留置中间件的上限值,/>为时间段归一化值,/>为日志留置中间件的数量,/>为数量归一化值,/>为模型训练因子。本发明会综合日志留置中间件的留存时间维度和数量维度进行综合计算,得到ElasticSearch的评价系数,如果ElasticSearch的评价系数越大,则ElasticSearch的鲁棒性会相对越差。
若所述评价系数大于预设系数,则生成对ElasticSearch的增配指示。通过以上方式,使得用户针对ElasticSearch进行新增配置的增加。
本发明提供的技术方案还包括数据分析模型,数据分析模型获取上一次训练时刻至当前时刻内用户对系统的配置行为,所述配置行为包括输出增配指示后进行增配、输出增配指示后未进行增配、未输出增配指示且进行增配、未输出增配指示且未进行增配。本发明中的数据分析模型会间隔预设时间段即获取上一次训练时刻至当前时刻内用户对系统的配置行为,数据分析模型会根据配置行为进行训练。本发明会将用户对系统的配置行为分为4种,其中输出增配指示后未进行增配、未输出增配指示且未进行增配该两种方式认为此时的模型训练因子是符合当前计算场景要求的,不需要对数据分析模型中的模型训练因子/>进行训练处理。
若判断所述配置行为达到训练要求,则根据配置行为对数据分析模型进行训练。在出现输出增配指示后未进行增配、未输出增配指示且进行增配时则证明数据分析模型输出的结果已经无法达到满足,不同的用户行为根据其部署场景、使用习惯不同,例如在某些对于搜索引擎的工作效率要求高的场景下,则可能出现未输出增配指示且进行增配的场景,此时的模型训练因子的值是相对较低的,应当进行训练调高。相反的,例如某些对于搜索引擎的工作效率要求低的场景下,用户考虑到相应的成本原因,则可能会出现输出增配指示后未进行增配的场景,此时的模型训练因子/>的值是相对较高的,应当进行训练调低。并且,用户的需求往往是不变的,可能会多次出现输出增配指示后未进行增配、未输出增配指示且进行增配的情况,所以本发明会根据以上情况出现的次数进行训练。
本发明会确定出现未输出增配指示且进行增配所对应的基础增加值、以及相应情况出现的第一次数,根据所述第一次数对基础增加值进行加权计算得到实际增加值,将先前的模型训练因子和实际增加值相加得到增加训练后的模型训练因子/>,可以通过以下公式计算增加训练后的模型训练因子/>
其中,为第一次数,/>为增加常数值,/>为基础增加值,/>为实际增加值。
本发明会确定出现输出增配指示后未进行增配所对应的基础减少值、以及相应情况出现的第二次数,根据所述第二次数对基础减少值进行加权计算得到实际减少值,将先前的模型训练因子和实际减少值相减得到减少训练后的模型训练因子/>,可以通过以下公式计算减少训练后的模型训练因子/>
大于等于/>,则将/>置为预设的因子常数。因子常数可以是0、1等。其中,/>为第二次数,/>为减少常数值,/>为基础减少值,/>为实际减少值。
通过以上的技术方案,使得本发明能够持续根据用户的行为对数据分析模型进行持续训练,使得其更加贴合用户的使用场景,使得其提醒更加具有定制性、准确性。
本发明使用的Elastic Search,是一个基于Lucene的搜索服务器。提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elastic search是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。
开源项目 Canal项目利用了MySQL数据库主从同步的原理,将Canal Server模拟成一台需要同步的从库,从而让主库将binlog日志流发送到Canal Server接口。Canal项目对binlog日志的解析进行了封装,我们可以直接得到解析后的数据,而不需要理会binlog的日志格式。而且Canal项目整合了zookeeper,整体实现了高可用,可伸缩性强。
Canal收集的binlog数据支持直接发送到MQ中目前支持RocketMQ和Kafka,用于削峰填谷。
Canal提供各种Adapter组件用于binlog转换,利用Adapter实现消费MQ的binlog信息自动转换为索引数据存到ES中。
ES客户端的API比较复杂难懂,通过通用的搜索服务对外提供Restful的API接口供业务系统使用,屏蔽底层的复杂性。
本发明还提供一种存储介质,所述存储介质中存储有计算机程序,所述计算机程序被处理器执行时用于实现上述的各种实施方式提供的方法。
其中,存储介质可以是计算机存储介质,也可以是通信介质。通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。计算机存储介质可以是通用或专用计算机能够存取的任何可用介质。例如,存储介质耦合至处理器,从而使处理器能够从该存储介质读取信息,且可向该存储介质写入信息。当然,存储介质也可以是处理器的组成部分。处理器和存储介质可以位于专用集成电路(Application Specific IntegratedCircuits,简称:ASIC)中。另外,该ASIC可以位于用户设备中。当然,处理器和存储介质也可以作为分立组件存在于通信设备中。存储介质可以是只读存储器(ROM)、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本发明还提供一种程序产品,该程序产品包括执行指令,该执行指令存储在存储介质中。设备的至少一个处理器可以从存储介质读取该执行指令,至少一个处理器执行该执行指令使得设备实施上述的各种实施方式提供的方法。
在上述终端或者服务器的实施例中,应理解,处理器可以是中央处理单元(英文:Central Processing Unit,简称:CPU),还可以是其他通用处理器、数字信号处理器(英文:Digital Signal Processor,简称:DSP)、专用集成电路(英文:Application SpecificIntegrated Circuit,简称:ASIC)等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本发明所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。

Claims (8)

1.高可用的实时搜索系统,其特征在于,包括依次连接的Mysql数据库、Canal集群以及ElasticSearch,通过以下步骤进行实时搜索,包括:
获取ElasticSearch所对应搜索引擎的搜索负荷状态,根据所述搜索负荷状态确定数据库的实时同步数据速率,所述搜索负荷状态与所述实时同步数据速率呈反比;
获取ElasticSearch所对应搜索引擎的搜索负荷状态,所述搜索负荷状态至少包括当前搜索频率和当前数据抓取时间;
将所述当前搜索频率与预设搜索频率比对后基于频率预设权重加权处理,得到频率比对系数,将所述当前数据抓取时间与预设数据抓取时间比对后基于时间预设权重加权处理,得到时间比对系数;
根据所述频率比对系数、时间比对系数对预设同步数据速率进行偏移计算,得到实时同步数据速率;
将所述频率比对系数、时间比对系数相加得到比对系数之和,若所述比对系数之和的绝对值小于等于变化阈值,则不对预设同步数据速率进行改变;
若所述比对系数之和的绝对值大于变化阈值,则通过以下公式对预设同步数据速率进行偏移计算得到实时同步数据速率,
其中,为频率比对系数,/>为时间比对系数,/>为实时同步数据速率,/>为当前搜索频率,/>为预设搜索频率,/>为频率预设权重,/>为当前数据抓取时间,/>为预设数据抓取时间,/>为时间预设权重,/>为变化阈值,/>为预设同步数据速率;
Canal集群获取MySQL数据库的Binlog日志并解析,所述Binlog日志内具有Mysql数据库所更新数据的数据信息,所述数据信息包括相对应的数据标识、数据增加状态、数据减少状态或数据变更状态;
Canal集群对Binlog日志的数据信息量化处理得到相对应的数据更新需求量和数据更新需求速率;
若所述数据更新需求速率与所述实时同步数据速率相对应,Canal集群基于中间件将Binlog日志实时同步至ElasticSearch,ElasticSearch基于所述Binlog日志对原始数据实时更新;
若所述数据更新需求速率与所述实时同步数据速率不对应,Canal集群生成日志留置中间件,日志留置中间件根据每个Binlog日志的接收时间得到日志序列;
日志留置中间件基于所述日志序列以及每个Binlog日志的数据信息量确定Binlog日志同步至ElasticSearch的同步时间,并在达到所述同步时间后对Binlog日志同步处理。
2.根据权利要求1所述的高可用的实时搜索系统,其特征在于,
所述Canal集群获取MySQL数据库的Binlog日志并解析,所述Binlog日志内具有Mysql数据库所更新数据的数据信息,所述数据信息包括相对应的数据标识、数据增加状态、数据减少状态或数据变更状态,包括:
Canal集群获取多个MySQL数据库的Binlog日志并解析,得到每个MySQL数据库所更新数据的数据信息;
获取每个Binlog日志相应的数据标识,以及相对应的数据增加状态、数据减少状态或数据变更状态中的任意一个。
3.根据权利要求2所述的高可用的实时搜索系统,其特征在于,
所述Canal集群对Binlog日志的数据信息量化处理得到相对应的数据更新需求量和数据更新需求速率,包括:
根据所述数据标识所对应的模态类型得到相对应的基础量化值集,每个基础量化值集对应一个模态类型,所述模态类型至少包括文本类型、图像类型、音频类型和视频类型;
根据所述数据增加状态、数据减少状态或数据变更状态确定所述基础量化值集中相对应的第一量化更新值;
统计所有Binlog日志内每个数据标识所对应的第一量化更新值,根据所述第一量化更新值得到当前所有Binlog日志的数据更新需求量;
将所述数据更新需求量与预设更新时间比对得到相对应的数据更新需求速率。
4.根据权利要求3所述的高可用的实时搜索系统,其特征在于,
所述若所述数据更新需求速率与所述实时同步数据速率相对应,Canal集群基于中间件将Binlog日志实时同步至ElasticSearch,ElasticSearch基于所述Binlog日志对原始数据实时更新,包括:
若所述数据更新需求速率小于等于所述实时同步数据速率,则判断当前基于Binlog日志的更新需求能够达到要求,Canal集群基于中间件将Binlog日志实时同步至ElasticSearch;
ElasticSearch基于所述Binlog日志对原始数据实时更新。
5.根据权利要求4所述的高可用的实时搜索系统,其特征在于,
所述若所述数据更新需求速率与所述实时同步数据速率不对应,Canal集群生成日志留置中间件,日志留置中间件根据每个Binlog日志的接收时间得到日志序列,包括:
若所述数据更新需求速率大于所述实时同步数据速率,则判断当前基于Binlog日志的更新需求未达到要求,Canal集群生成日志留置中间件;
日志留置中间件获取所有Binlog日志的接收时间,并按照所述接收时间对Binlog日志由远及近的排序,得到日志序列。
6.根据权利要求5所述的高可用的实时搜索系统,其特征在于,
所述日志留置中间件基于所述日志序列以及每个Binlog日志的数据信息量确定Binlog日志同步至ElasticSearch的同步时间,并在达到所述同步时间后对Binlog日志同步处理,包括:
日志留置中间件计算每个Binlog日志的数据信息量,并对每个Binlog日志添加相对应的信息标签;
在将日志留置中间件内前一个顺序的第一Binlog日志同步至ElasticSearch时,获取前一个顺序的第一Binlog日志的第一同步时间以及相对应的第一数据信息量;
根据所述第一数据信息量、实时同步数据速率得到相对应的第一预估处理时间,根据所述第一同步时间、第一预估处理时间得到后一个顺序的第二Binlog日志同步的第二同步时间。
7.根据权利要求6所述的高可用的实时搜索系统,其特征在于,
所述根据所述第一数据信息量、实时同步数据速率得到相对应的第一预估处理时间,根据所述第一同步时间、第一预估处理时间得到后一个顺序的第二Binlog日志同步的第二同步时间,包括:
将所述第一数据信息量、实时同步数据速率得到相对应的第一预估处理时间,基于时间计算权重值对第一预估处理时间加权处理;
将第一同步时间与第一预估处理时间相加得到相对应的第二同步时间,通过以下公式计算第二Binlog日志同步的第二同步时间,
其中,为第二同步时间,/>为第一同步时间,/>为第一数据信息量,/>为时间计算权重值。
8.根据权利要求7所述的高可用的实时搜索系统,其特征在于,还包括:
数据分析模型获取预设时间段内每次所生成日志留置中间件的生成时刻和清除时刻,根据所述生成时刻和清除时刻得到每个日志留置中间件相对应的留存时间段;
数据分析模型统计预设时间段内所生成的日志留置中间件的数量,根据所述数量和留存时间段进行计算得到ElasticSearch的评价系数;
数据分析模型若判断所述评价系数大于预设系数,则生成对ElasticSearch的增配指示;
数据分析模型获取上一次训练时刻至当前时刻内用户对系统的配置行为,所述配置行为包括输出增配指示后进行增配、输出增配指示后未进行增配、未输出增配指示且进行增配、未输出增配指示且未进行增配;
若判断所述配置行为达到训练要求,则根据配置行为对数据分析模型进行训练。
CN202310671548.8A 2023-06-08 2023-06-08 高可用的实时搜索系统 Active CN116431885B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310671548.8A CN116431885B (zh) 2023-06-08 2023-06-08 高可用的实时搜索系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310671548.8A CN116431885B (zh) 2023-06-08 2023-06-08 高可用的实时搜索系统

Publications (2)

Publication Number Publication Date
CN116431885A CN116431885A (zh) 2023-07-14
CN116431885B true CN116431885B (zh) 2023-08-29

Family

ID=87087539

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310671548.8A Active CN116431885B (zh) 2023-06-08 2023-06-08 高可用的实时搜索系统

Country Status (1)

Country Link
CN (1) CN116431885B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109492012A (zh) * 2018-10-31 2019-03-19 厦门安胜网络科技有限公司 一种数据实时统计和检索的方法、装置及存储介质
CN111026727A (zh) * 2019-10-24 2020-04-17 贝壳技术有限公司 基于日志文件的表维度检索数据同步方法、系统及装置
CN115168377A (zh) * 2022-06-29 2022-10-11 苏州浪潮智能科技有限公司 一种报表数据处理方法、装置、设备及介质
CN115840788A (zh) * 2023-02-21 2023-03-24 创意信息技术股份有限公司 一种MySql数据同步到ES的方法、装置、终端及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014081811A (ja) * 2012-10-17 2014-05-08 Hitachi Solutions Ltd ログ管理システム、および、ログ管理方法
US10353756B2 (en) * 2016-10-11 2019-07-16 Oracle International Corporation Cluster-based processing of unstructured log messages

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109492012A (zh) * 2018-10-31 2019-03-19 厦门安胜网络科技有限公司 一种数据实时统计和检索的方法、装置及存储介质
CN111026727A (zh) * 2019-10-24 2020-04-17 贝壳技术有限公司 基于日志文件的表维度检索数据同步方法、系统及装置
CN115168377A (zh) * 2022-06-29 2022-10-11 苏州浪潮智能科技有限公司 一种报表数据处理方法、装置、设备及介质
CN115840788A (zh) * 2023-02-21 2023-03-24 创意信息技术股份有限公司 一种MySql数据同步到ES的方法、装置、终端及存储介质

Also Published As

Publication number Publication date
CN116431885A (zh) 2023-07-14

Similar Documents

Publication Publication Date Title
CN110321387B (zh) 数据同步方法、设备及终端设备
CA2777506C (en) System and method for grouping multiple streams of data
CN108073625B (zh) 用于元数据信息管理的系统及方法
JP5078674B2 (ja) 分析システム、情報処理装置、アクティビティ分析方法、およびプログラム
WO2020237539A1 (zh) 电力负荷的预测方法、装置及存储介质
CN110717093B (zh) 一种基于Spark的电影推荐系统及方法
CN112925661B (zh) 消息处理方法、装置、计算机设备及存储介质
US20160321331A1 (en) Device and method
JP2011039818A (ja) ストリームデータ処理システム、ストリームデータ処理方法及びストリームデータ処理プログラム
CN111177201B (zh) 一种数据流处理的方法以及相关装置
CN109167672B (zh) 一种回源错误定位方法、装置、存储介质以及系统
CN112231296B (zh) 一种分布式日志处理方法、装置、系统、设备及介质
CN103997662A (zh) 节目推送的方法及系统
CN115330422B (zh) 基于分布式存储的大数据业务管理系统
CN113609374A (zh) 基于内容推送的数据处理方法、装置、设备及存储介质
CN115017159A (zh) 数据处理方法及装置、存储介质及电子设备
CN113422808B (zh) 物联网平台http信息推送方法、系统、装置及介质
CN116431885B (zh) 高可用的实时搜索系统
CN113760640A (zh) 监控日志处理方法、装置、设备及存储介质
CN105512270B (zh) 一种确定相关对象的方法和装置
CN111444249A (zh) 基于热数据的用户画像生成方法、装置、设备及存储介质
CN116049285A (zh) 一种基于流数据的实时指标计算方法、系统、设备及介质
CN115858672A (zh) 电力终端管理方法、装置、电子设备及存储介质
CN112749204B (zh) 一种读取数据的方法和装置
CN111651479A (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