CN112052247A - 搜索引擎的索引更新系统、方法、装置、电子设备、存储介质 - Google Patents
搜索引擎的索引更新系统、方法、装置、电子设备、存储介质 Download PDFInfo
- Publication number
- CN112052247A CN112052247A CN202011056261.7A CN202011056261A CN112052247A CN 112052247 A CN112052247 A CN 112052247A CN 202011056261 A CN202011056261 A CN 202011056261A CN 112052247 A CN112052247 A CN 112052247A
- Authority
- CN
- China
- Prior art keywords
- server
- index
- search engine
- new message
- updating
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 37
- 238000012544 monitoring process Methods 0.000 claims abstract description 11
- 238000004590 computer program Methods 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 3
- 238000013507 mapping Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 abstract description 6
- 238000010586 diagram Methods 0.000 description 11
- 238000004422 calculation algorithm Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 4
- 238000004891 communication Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 201000010099 disease Diseases 0.000 description 1
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 208000024891 symptom Diseases 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Computing Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供一种搜索引擎的索引更新系统、方法、装置、电子设备、计算机可读存储介质,方法包括:监听消息队列;其中,所述消息队列传输的消息包括数据库的日志数据;当所述消息队列中存在新消息时,计算所述新消息的第一哈希值;判断预设的全局查询表中是否存在所述第一哈希值;若否,将所述新消息原子更新至所述分布式搜索引擎的检索服务器。本申请方案,数据库更新后可及时更新搜索引擎的索引,这个过程无需频繁访问数据库,降低了数据库压力,并可防止重复创建索引。
Description
技术领域
本申请涉及数据处理技术领域,特别涉及一种搜索引擎的索引更新系统、方法、装置、电子设备、计算机可读存储介质。
背景技术
搜索引擎可以根据一定的策略、运用特定的计算机程序从互联网上搜集信息,在对信息进行组织和处理后,为用户提供检索服务,将用户检索相关的信息展示给用户的系统。企业内部的搜索引擎可以为用户提供针对业务数据的搜索服务。企业的业务数据随业务规模的扩张而增长,在企业日常运营过程中会产生大量业务数据。
发明内容
本申请实施例的目的在于提供一种搜索引擎的索引更新系统、方法、装置、电子设备、计算机可读存储介质,用于实现快速更新搜索引擎的索引。
一方面,本申请提供了一种搜索引擎的索引更新系统,包括:
数据库服务器,用于产生数据库更新的日志数据;
日志更新服务器,与数据库服务器连接,用于从所述数据库服务器采集所述日志数据,并将所述日志数据作为新消息;
消息队列服务器,与所述日志更新服务器连接,用于从所述日志更新服务器接收新消息,并传输所述新消息;
分布式搜索引擎的索引消费服务器,与所述消息队列服务器连接,用于从所述消息队列服务器获取所述新消息,并计算所述新消息的第一哈希值;判断预设的全局查询表中是否存在所述第一哈希值;若否,将所述新消息原子更新至所述分布式搜索引擎的检索服务器。
在一实施例中,所述日志更新服务器,还用于:
判断预设的对应于多个数据库服务器的连接信息是否可用;
若任一连接信息可用,基于所述连接信息与数据库服务器建立连接。
一方面,本申请还提供了一种搜索引擎的索引更新方法,应用于分布式搜索引擎的多个索引消费服务器,包括:
监听消息队列;其中,所述消息队列传输的消息包括数据库的日志数据;
当所述消息队列中存在新消息时,计算所述新消息的第一哈希值;
判断预设的全局查询表中是否存在所述第一哈希值;
若否,将所述新消息原子更新至所述分布式搜索引擎的检索服务器。
在一实施例中,在将所述新消息原子更新至所述分布式搜索引擎的检索服务器之后,所述方法还包括:
将所述第一哈希值添加至所述全局查询表。
在一实施例中,所述消息队列传输的消息包括对应于所述日志数据的连接信息;
在所述将所述新消息原子更新至所述分布式搜索引擎的检索服务器之前,所述方法还包括:
判断所述新消息中日志数据是否与指定数据表相关;
如果是,依据对应于所述日志数据的连接信息,从所述指定数据表中查找索引扩展数据;
将所述索引扩展数据添加至所述新消息中。
在一实施例中,所述从所述指定数据表中查找索引扩展数据,包括:
依据所述指定数据表的标识查找预设索引扩展表;其中,所述索引扩展表包括多个索引扩展记录,每一索引扩展记录包括指定数据表的标识和索引扩展字段的映射关系;
根据查找到的索引扩展字段,从所述指定数据表中获取对应的索引扩展数据。
在一实施例中,所述全局查询表位于codis服务器,所述判断预设的全局查询表中是否存在所述第一哈希值,包括:
向所述codis服务器发送针对所述第一哈希值的查询请求;
接收所述codis服务器返回的查询结果。
一方面,本申请还提供了一种搜索引擎的索引更新装置,应用于分布式搜索引擎的多个索引消费服务器,包括:
监听模块,用于监听消息队列;其中,所述消息队列传输的消息包括数据库的日志数据和对应于所述日志数据的连接信息;
计算模块,用于当所述消息队列中存在新消息时,计算所述新消息的第一哈希值;
判断模块,用于判断预设的全局查询表中是否存在所述第一哈希值;
更新模块,用于若否,将所述新消息原子更新至所述分布式搜索引擎的检索服务器。
进一步的,本申请还提供了一种电子设备,所述电子设备包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行上述搜索引擎的索引更新方法。
另外,本申请还提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序可由处理器执行以完成上述搜索引擎的索引更新方法。
在本申请实施例中,通过消息队列传输数据库的日志数据,当消息队列中存在新消息,分布式搜索引擎的索引消费服务器可以计算该消息的第一哈希值,并判断全局查询表中是否存在第一哈希值,若否,将消息原子更新至分布式搜索引擎的检索服务器;由于多个索引消费服务器分别监听消息队列的新消息,可以在数据库更新后及时更新搜索引擎的索引,这个过程无需频繁访问数据库,降低了数据库压力,并可防止重复创建索引。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍。
图1为本申请一实施例提供的搜索引擎的索引更新系统的网络架构示意图;
图2为本申请一实施例提供的电子设备的结构示意图;
图3为本申请一实施例提供的搜索引擎的索引更新方法的流程示意图;
图4为本申请一实施例提供的扩展消息的流程示意图;
图5为本申请一实施例提供的应用全局查询表的网络架构示意图;
图6为本申请一实施例提供的搜索引擎的索引更新装置的框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
图1为本申请一实施例提供的搜索引擎的索引更新系统的网络架构示意图,如图1所示,该系统可以包括:数据库服务器20、日志更新服务器30、消息队列服务器40、分布式搜索引擎的索引消费服务器50。
数据库服务器20搭载数据库,该数据库中的数据是搜索引擎的搜索对象。当数据库发生更新时,数据库服务器20可以产生日志数据。其中,日志数据是在数据库的表结构变更以及表数据修改的日志。在一实施例中,日志数据可以是binlog。
日志更新服务器30,与数据库服务器20连接,连接方式可以包括有线或无线的通信连接。日志更新服务器30用于监听数据库的日志数据,当数据库服务器20产生新的日志数据后,从数据库服务器20采集日志数据,并将日志数据以及对应于日志数据的连接信息作为新消息。其中,对应于日志数据的连接信息是指日志更新服务器30与获取日志数据的数据库服务器20之间的连接信息。日志更新服务器30可以将日志数据和连接信息转换为消息队列指定的数据格式,从而将转换后的新消息发送至消息队列服务器。
在一实施例中,日志更新服务器30可以是搭载canal服务的服务器,通过canal服务监听数据库服务器20的日志数据。
消息队列服务器40,与日志更新服务器30连接,连接方式可以包括有线或无线的通信连接。消息队列服务器40用于接收日志更新服务器30发送的新消息,并向索引消费服务器50传输新消息。在一实施例中,消息队列服务器40可以搭载kafka、RocketMQ、RabbitMQ等消息队列中的任意一种。
索引消费服务器50,与消息队列服务器40连接,连接方式可以包括有线或无线的通信连接。分布式搜索引擎可以包括多个索引消费服务器50,任一索引服务器50的作用相同。索引消费服务器50,用于监听消息队列,当消息队列中存在新消息时,从消费队列服务器40获取新消息,并计算新消息的第一哈希值。
第一哈希值为索引消费服务器50基于哈希算法对计算出的新消息的哈希值,其中,哈希算法可以是MD4(Message-Digest Algorithm,信息摘要算法4)、MD5(Message-Digest Algorithm,信息摘要算法5)、SHA-1(Secure Hash Algorithm 1,安全散列算法1)等算法中的任意一种。
索引消费服务器50用于判断预设的全局查询表中是否存在上述第一哈希值。其中,全局查询表基于分布式锁机制维护;在同一时刻,仅有一个索引消费服务器50可以查找全局查询表。
一方面,如果全局查询表中存在第一哈希值,说明新消息已经被更新至索引。另一方面,如果全局查询表中不存在第一哈希值,索引消费服务器50可以将新消息转换为搜索引擎需要的数据格式,并将转换后的新消息原子更新至分布式搜索引擎的检索服务器,从而完成索引更新。
在该索引更新系统中,通过日志更新服务器30监听数据日志,可在数据库中发生更新时,及时将日志数据通过消息队列服务器40进行传递。任一索引消费服务器50发现存在新消息时,可以通过哈希计算和查表,确定数据库更新后是否产生新的索引,若否,可以对索引进行更新。整个过程无需访问数据库,大大降低了数据库的访问频率,降低数据库的压力,并可极大提升索引更新的实时性,避免重复创建索引。
在一实施例中,日志更新服务器30上预配置对应于多个数据库服务器20的连接信息,该连接信息可以包括数据库服务器20的IP(Internet Protocol Address,互联网协议地址)地址、端口、连接账号及连接密码。其中,数据库服务器20可以分为主服务器和从服务器;相应的,连接信息可以预设优先级,对应于主服务器的连接信息的优先级高于对应于从服务器的连接信息。
日志更新服务器30启动后,可以判断对应于多个数据库服务器20的连接信息是否可用。日志更新服务器30通过连接信息与数据库服务器20建立连接关系,若连接无法建立,说明连接信息不可用。反之,说明连接信息可用。日志更新服务器30可以依据优先级从高到低的顺序,逐个连接信息进行判断。若任一连接信息可用,日志更新服务器30可以基于连接信息与数据库服务器20建立连接,从而可采集数据库服务器20更新的日志数据。
日志更新服务器30上预配置消息队列服务器40的连接信息,该连接信息可以包括消息队列服务器40的IP地址、端口、topic信息。日志更新服务器30启动后,可以通过连接信息与消息队列服务器40建立连接关系,从而向消息队列服务器40发送新消息。
如图2所示,本实施例提供一种电子设备1,包括:至少一个处理器11和存储器12,图2中以一个处理器11为例。处理器11和存储器12通过总线10连接,存储器12存储有可被处理器11执行的指令,指令被处理器11执行,以使电子设备1可执行下述的实施例中方法的全部或部分流程。在一实施例中,电子设备1可以是上述索引消费服务器50。
存储器12可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(Static Random Access Memory,简称SRAM),电可擦除可编程只读存储器(Electrically Erasable Programmable Read-Only Memory,简称EEPROM),可擦除可编程只读存储器(Erasable Programmable Read Only Memory,简称EPROM),可编程只读存储器(Programmable Red-Only Memory,简称PROM),只读存储器(Read-Only Memory,简称ROM),磁存储器,快闪存储器,磁盘或光盘。
本申请还提供了一种计算机可读存储介质,存储介质存储有计算机程序,计算机程序可由处理器11执行以完成本申请提供的搜索引擎的索引更新方法。
参见图3,为本申请一实施例提供的搜索引擎的索引更新方法的流程示意图,该方法应用于分布式搜索引擎的多个索引消费服务器,如图3所示,该方法可以包括以下步骤310-步骤340。
步骤310:监听消息队列;其中,消息队列传输的消息包括数据库的日志数据和对应于日志数据的连接信息。
步骤320:当消息队列中存在新消息时,计算新消息的第一哈希值。
分布式搜索引擎的每一索引消费服务器均执行本申请中的索引更新方法。
当任一索引消费服务器确定消费队列中存在新消息,可以基于哈希算法计算新消息的第一哈希值。
步骤330:判断预设的全局查询表中是否存在第一哈希值。
其中,全局查询表包括数据库的历史日志数据的哈希值,历史日志数据是数据库服务器在此前更新数据库时产生的日志数据;全局查询表基于分布式锁机制维护;同一时刻,仅有一个索引消费服务器可以查找全局查询表。
步骤340:若否,将新消息原子更新至分布式搜索引擎的检索服务器。
索引消费服务器在全局查询表中查找第一哈希值。一方面,查找该第一哈希值,说明新消息已经被更新至索引。另一方面,如果未查到该第一哈希值,索引消费服务器可以将新消息转换为搜索引擎需要的数据格式,并将转换后的新消息发送至分布式搜索引擎的检索服务器,从而完成索引更新。
在一实施例中,索引消费服务器在将新消息更新至索引后,可以将上述第一哈希值添加至全局查询表。通过该措施,可以避免其它索引消费服务器重复更新相同的新消息至索引。
在一实施例中,对于数据库中一些复杂的数据,可以根据更丰富的信息作为索引。索引消费服务器在将新消息更新至检索服务器之前,可以对新消息进行扩展。参见图4,为本申请一实施例提供的扩展消息的流程示意图,如图4所示,该方法可以包括以下步骤341-步骤343。
步骤341:判断新消息中日志数据是否与指定数据表相关。
其中,指定数据表可以是包含复杂数据或重要数据的数据表,指定数据表可以根据实际应用场景而人为设定。在一实施例中,互联网医院的医疗科普资料的相关数据所在的数据表,可以作为指定数据表。
索引消费服务器可以解析日志数据中数据表的表名,并检查该表名是否为预设的若干指定数据表的表名。一方面,如果不是,说明本次数据库更新并未涉及指定数据表,索引消费服务器可以直接将新消息原子更新至检索服务器。另一方面,如果是,索引消费服务器可以继续执行步骤342和步骤343。
步骤342:如果是,依据对应于日志数据的连接信息,从指定数据表中查找索引扩展数据。
步骤343:将索引扩展数据添加至新消息中。
其中,索引扩展数据从指定数据表更新的数据中提取得到,用作更新的数据的索引。
当确定日志数据与指定数据表相关,索引消费服务器可以依据对应与日志数据的连接信息,与数据库服务器建立连接,并从已连接的数据库服务器中获取索引扩展数据。索引消费服务器将索引扩展数据添加至新消息,后续可将添加索引扩展数据的新消息转为搜索引擎需要的数据格式后,发送至检索服务器。
在一实施例中,对于不同的指定数据表,可以预设不同的索引扩展数据。示例性的,对于记录医院信息的指定数据表,可以将地址信息作为索引扩展数据;对于记录疾病信息的指定数据表,可以将症状信息作为索引扩展数据。
索引消费服务器可以依据指定数据表的标识查找索引扩展表。其中,索引扩展表包括多个索引扩展记录,每一索引扩展记录包括指定数据表的标识和索引扩展字段的映射关系。每一指定数据表可以包括至少一个索引扩展字段。指定数据表的标识可以是表名或其它用于区分数据表的信息。索引扩展字段用于指示指定数据表中索引扩展数据所属字段。示例性的,索引扩展字段为“地址信息”,索引扩展数据为“南京”。
索引消费服务器可以根据查找到的索引扩展字段,从指定数据表中获取对应的索引扩展数据,从而将获取到的索引扩展数据添加至新消息中。
通过该措施,可以针对不同的指定数据表提取不同得到索引扩展数据,用于更新索引,从而有效地提高搜索引擎的应用效果。
在一实施例中,全局查询表可以位于codis服务器。索引消费服务器在判断全局查询表中是否存在第一哈希值时,可以向codis服务器发送针对第一哈希值的查询请求。Codis服务器可以查找全局查询表后,返回查询结果。索引消费服务器接收查询结果后,可以确定全局查询表中是否存在第一哈希值。
参见图5,为本申请一实施例提供的应用全局查询表的网络架构示意图,如图5所示,包括多个索引消费服务器50和codis服务器60。通过codis服务器60维护全局查询表的分布式锁机制,从而保证同一时刻只有一个索引消费服务器50查找全局查询表。在一实施例中,全局查询表的分布式锁机制也可以由Zookeeper服务来维护。
图6是本发明一实施例提供的一种搜索引擎的索引更新装置的框图,如图6所示,该索引更新装置包括:监听模块610、计算模块620、判断模块630、更新模块640。
监听模块610,用于监听消息队列;其中,所述消息队列传输的消息包括数据库的日志数据和对应于所述日志数据的连接信息;
计算模块620,用于当所述消息队列中存在新消息时,计算所述新消息的第一哈希值;
判断模块630,用于判断预设的全局查询表中是否存在所述第一哈希值;
更新模块640,用于若否,将所述新消息原子更新至所述分布式搜索引擎的检索服务器。
上述装置中各个模块的功能和作用的实现过程具体详见上述搜索引擎的索引更新方法中对应步骤的实现过程,在此不再赘述。
在本申请所提供的几个实施例中,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本申请的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (10)
1.一种搜索引擎的索引更新系统,其特征在于,包括:
数据库服务器,用于产生数据库更新的日志数据;
日志更新服务器,与数据库服务器连接,用于从所述数据库服务器采集所述日志数据,并将所述日志数据作为新消息;
消息队列服务器,与所述日志更新服务器连接,用于从所述日志更新服务器接收新消息,并传输所述新消息;
分布式搜索引擎的索引消费服务器,与所述消息队列服务器连接,用于从所述消息队列服务器获取所述新消息,并计算所述新消息的第一哈希值;判断预设的全局查询表中是否存在所述第一哈希值;若否,将所述新消息原子更新至所述分布式搜索引擎的检索服务器。
2.根据权利要求1所述的系统,其特征在于,所述日志更新服务器,还用于:
判断预设的对应于多个数据库服务器的连接信息是否可用;
若任一连接信息可用,基于所述连接信息与数据库服务器建立连接。
3.一种搜索引擎的索引更新方法,应用于分布式搜索引擎的多个索引消费服务器,其特征在于,包括:
监听消息队列;其中,所述消息队列传输的消息包括数据库的日志数据;
当所述消息队列中存在新消息时,计算所述新消息的第一哈希值;
判断预设的全局查询表中是否存在所述第一哈希值;
若否,将所述新消息原子更新至所述分布式搜索引擎的检索服务器。
4.根据权利要求3所述的方法,其特征在于,在将所述新消息原子更新至所述分布式搜索引擎的检索服务器之后,所述方法还包括:
将所述第一哈希值添加至所述全局查询表。
5.根据权利要求3所述的方法,其特征在于,所述消息队列传输的消息包括对应于所述日志数据的连接信息;
在所述将所述新消息原子更新至所述分布式搜索引擎的检索服务器之前,所述方法还包括:
判断所述新消息中日志数据是否与指定数据表相关;
如果是,依据对应于所述日志数据的连接信息,从所述指定数据表中查找索引扩展数据;
将所述索引扩展数据添加至所述新消息中。
6.根据权利要求5所述的方法,其特征在于,所述从所述指定数据表中查找索引扩展数据,包括:
依据所述指定数据表的标识查找预设索引扩展表;其中,所述索引扩展表包括多个索引扩展记录,每一索引扩展记录包括指定数据表的标识和索引扩展字段的映射关系;
根据查找到的索引扩展字段,从所述指定数据表中获取对应的索引扩展数据。
7.根据权利要求3所述的方法,其特征在于,所述全局查询表位于codis服务器,所述判断预设的全局查询表中是否存在所述第一哈希值,包括:
向所述codis服务器发送针对所述第一哈希值的查询请求;
接收所述codis服务器返回的查询结果。
8.一种搜索引擎的索引更新装置,应用于分布式搜索引擎的多个索引消费服务器,其特征在于,包括:
监听模块,用于监听消息队列;其中,所述消息队列传输的消息包括数据库的日志数据和对应于所述日志数据的连接信息;
计算模块,用于当所述消息队列中存在新消息时,计算所述新消息的第一哈希值;
判断模块,用于判断预设的全局查询表中是否存在所述第一哈希值;
更新模块,用于若否,将所述新消息原子更新至所述分布式搜索引擎的检索服务器。
9.一种电子设备,其特征在于,所述电子设备包括:
处理器;
用于存储处理器可执行指令的存储器;
其中,所述处理器被配置为执行权利要求3-7任意一项所述的搜索引擎的索引更新方法。
10.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机程序,所述计算机程序可由处理器执行以完成权利要求3-7任意一项所述的搜索引擎的索引更新方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011056261.7A CN112052247B (zh) | 2020-09-29 | 2020-09-29 | 搜索引擎的索引更新系统、方法、装置、电子设备、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011056261.7A CN112052247B (zh) | 2020-09-29 | 2020-09-29 | 搜索引擎的索引更新系统、方法、装置、电子设备、存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112052247A true CN112052247A (zh) | 2020-12-08 |
CN112052247B CN112052247B (zh) | 2024-05-07 |
Family
ID=73605757
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011056261.7A Active CN112052247B (zh) | 2020-09-29 | 2020-09-29 | 搜索引擎的索引更新系统、方法、装置、电子设备、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112052247B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112486708A (zh) * | 2020-12-16 | 2021-03-12 | 中国联合网络通信集团有限公司 | 页面操作数据的处理方法和处理系统 |
CN112835980A (zh) * | 2021-02-05 | 2021-05-25 | 北京字跳网络技术有限公司 | 索引重建方法、装置、设备、计算机可读存储介质及产品 |
CN113220662A (zh) * | 2021-04-30 | 2021-08-06 | 广州市百果园信息技术有限公司 | 索引迁移方法、装置、电子设备及存储介质 |
CN113407560A (zh) * | 2021-08-19 | 2021-09-17 | 太平金融科技服务(上海)有限公司深圳分公司 | 更新消息处理方法、数据同步方法、配置信息配置方法 |
CN113505319A (zh) * | 2021-07-27 | 2021-10-15 | 上海点融信息科技有限责任公司 | 为BaaS平台上的搜索引擎更新检索内容的方法、装置及介质 |
CN113656410A (zh) * | 2021-08-20 | 2021-11-16 | 上海微盟企业发展有限公司 | 一种订单存储方法及相关装置 |
CN113742356A (zh) * | 2021-08-17 | 2021-12-03 | 深圳Tcl新技术有限公司 | 数据同步方法、装置、存储介质及电子设备 |
CN114817272A (zh) * | 2022-06-30 | 2022-07-29 | 北京聚通达科技股份有限公司 | 消息处理方法、装置、电子设备及存储介质 |
CN115883107A (zh) * | 2022-12-08 | 2023-03-31 | 四川启睿克科技有限公司 | 一种基于异步md5校验机制的数据变更记录方法 |
CN118312767A (zh) * | 2024-06-11 | 2024-07-09 | 深圳开源互联网安全技术有限公司 | 特征信息识别方法、装置、终端设备以及存储介质 |
Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030105744A1 (en) * | 2001-11-30 | 2003-06-05 | Mckeeth Jim | Method and system for updating a search engine |
US20070168336A1 (en) * | 2005-12-29 | 2007-07-19 | Ransil Patrick W | Method and apparatus for a searchable data service |
US20090094236A1 (en) * | 2007-10-04 | 2009-04-09 | Frank Renkes | Selection of rows and values from indexes with updates |
US20090210429A1 (en) * | 2008-02-19 | 2009-08-20 | Yahoo! Inc. | System and method for asynchronous update of indexes in a distributed database |
CN101650741A (zh) * | 2009-08-27 | 2010-02-17 | 中国电信股份有限公司 | 一种分布式全文检索的索引实时更新的方法和系统 |
CN102902806A (zh) * | 2012-10-17 | 2013-01-30 | 深圳市宜搜科技发展有限公司 | 一种利用搜索引擎进行查询扩展的方法及系统 |
CN106709042A (zh) * | 2016-12-30 | 2017-05-24 | 北京小度互娱科技有限公司 | 索引更新方法及设备 |
US20170308621A1 (en) * | 2016-04-25 | 2017-10-26 | Oracle International Corporation | Hash-based efficient secondary indexing for graph data stored in non-relational data stores |
CN109800222A (zh) * | 2018-12-11 | 2019-05-24 | 中国科学院信息工程研究所 | 一种HBase二级索引自适应优化方法和系统 |
CN110046219A (zh) * | 2019-04-18 | 2019-07-23 | 合肥天毅网络传媒有限公司 | 一种基于哈希算法的中文分词方法 |
CN110134648A (zh) * | 2019-05-22 | 2019-08-16 | 中国联合网络通信集团有限公司 | 日志处理方法、装置、设备、系统及计算机可读存储介质 |
CN110232137A (zh) * | 2019-05-10 | 2019-09-13 | 北京搜狗科技发展有限公司 | 一种数据处理方法、装置和电子设备 |
CN110609844A (zh) * | 2018-05-29 | 2019-12-24 | 优信拍(北京)信息科技有限公司 | 一种数据更新方法,装置及系统 |
CN110609865A (zh) * | 2018-05-29 | 2019-12-24 | 优信拍(北京)信息科技有限公司 | 一种信息同步方法,装置及系统 |
CN111198859A (zh) * | 2018-11-16 | 2020-05-26 | 北京微播视界科技有限公司 | 数据处理方法、装置、电子设备及计算机可读存储介质 |
CN111563102A (zh) * | 2020-04-10 | 2020-08-21 | 中国联合网络通信集团有限公司 | 缓存更新方法、服务器、系统及存储介质 |
-
2020
- 2020-09-29 CN CN202011056261.7A patent/CN112052247B/zh active Active
Patent Citations (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20030105744A1 (en) * | 2001-11-30 | 2003-06-05 | Mckeeth Jim | Method and system for updating a search engine |
US20070168336A1 (en) * | 2005-12-29 | 2007-07-19 | Ransil Patrick W | Method and apparatus for a searchable data service |
US20090094236A1 (en) * | 2007-10-04 | 2009-04-09 | Frank Renkes | Selection of rows and values from indexes with updates |
US20090210429A1 (en) * | 2008-02-19 | 2009-08-20 | Yahoo! Inc. | System and method for asynchronous update of indexes in a distributed database |
CN101650741A (zh) * | 2009-08-27 | 2010-02-17 | 中国电信股份有限公司 | 一种分布式全文检索的索引实时更新的方法和系统 |
CN102902806A (zh) * | 2012-10-17 | 2013-01-30 | 深圳市宜搜科技发展有限公司 | 一种利用搜索引擎进行查询扩展的方法及系统 |
US20170308621A1 (en) * | 2016-04-25 | 2017-10-26 | Oracle International Corporation | Hash-based efficient secondary indexing for graph data stored in non-relational data stores |
CN106709042A (zh) * | 2016-12-30 | 2017-05-24 | 北京小度互娱科技有限公司 | 索引更新方法及设备 |
CN110609844A (zh) * | 2018-05-29 | 2019-12-24 | 优信拍(北京)信息科技有限公司 | 一种数据更新方法,装置及系统 |
CN110609865A (zh) * | 2018-05-29 | 2019-12-24 | 优信拍(北京)信息科技有限公司 | 一种信息同步方法,装置及系统 |
CN111198859A (zh) * | 2018-11-16 | 2020-05-26 | 北京微播视界科技有限公司 | 数据处理方法、装置、电子设备及计算机可读存储介质 |
CN109800222A (zh) * | 2018-12-11 | 2019-05-24 | 中国科学院信息工程研究所 | 一种HBase二级索引自适应优化方法和系统 |
CN110046219A (zh) * | 2019-04-18 | 2019-07-23 | 合肥天毅网络传媒有限公司 | 一种基于哈希算法的中文分词方法 |
CN110232137A (zh) * | 2019-05-10 | 2019-09-13 | 北京搜狗科技发展有限公司 | 一种数据处理方法、装置和电子设备 |
CN110134648A (zh) * | 2019-05-22 | 2019-08-16 | 中国联合网络通信集团有限公司 | 日志处理方法、装置、设备、系统及计算机可读存储介质 |
CN111563102A (zh) * | 2020-04-10 | 2020-08-21 | 中国联合网络通信集团有限公司 | 缓存更新方法、服务器、系统及存储介质 |
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112486708B (zh) * | 2020-12-16 | 2023-11-07 | 中国联合网络通信集团有限公司 | 页面操作数据的处理方法和处理系统 |
CN112486708A (zh) * | 2020-12-16 | 2021-03-12 | 中国联合网络通信集团有限公司 | 页面操作数据的处理方法和处理系统 |
CN112835980A (zh) * | 2021-02-05 | 2021-05-25 | 北京字跳网络技术有限公司 | 索引重建方法、装置、设备、计算机可读存储介质及产品 |
CN112835980B (zh) * | 2021-02-05 | 2024-04-16 | 北京字跳网络技术有限公司 | 索引重建方法、装置、设备、计算机可读存储介质及产品 |
CN113220662A (zh) * | 2021-04-30 | 2021-08-06 | 广州市百果园信息技术有限公司 | 索引迁移方法、装置、电子设备及存储介质 |
CN113220662B (zh) * | 2021-04-30 | 2024-02-09 | 广州市百果园信息技术有限公司 | 索引迁移方法、装置、电子设备及存储介质 |
CN113505319A (zh) * | 2021-07-27 | 2021-10-15 | 上海点融信息科技有限责任公司 | 为BaaS平台上的搜索引擎更新检索内容的方法、装置及介质 |
CN113742356A (zh) * | 2021-08-17 | 2021-12-03 | 深圳Tcl新技术有限公司 | 数据同步方法、装置、存储介质及电子设备 |
CN113407560A (zh) * | 2021-08-19 | 2021-09-17 | 太平金融科技服务(上海)有限公司深圳分公司 | 更新消息处理方法、数据同步方法、配置信息配置方法 |
CN113407560B (zh) * | 2021-08-19 | 2021-11-05 | 太平金融科技服务(上海)有限公司深圳分公司 | 更新消息处理方法、数据同步方法、配置信息配置方法 |
CN113656410A (zh) * | 2021-08-20 | 2021-11-16 | 上海微盟企业发展有限公司 | 一种订单存储方法及相关装置 |
CN114817272A (zh) * | 2022-06-30 | 2022-07-29 | 北京聚通达科技股份有限公司 | 消息处理方法、装置、电子设备及存储介质 |
CN115883107A (zh) * | 2022-12-08 | 2023-03-31 | 四川启睿克科技有限公司 | 一种基于异步md5校验机制的数据变更记录方法 |
CN118312767A (zh) * | 2024-06-11 | 2024-07-09 | 深圳开源互联网安全技术有限公司 | 特征信息识别方法、装置、终端设备以及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112052247B (zh) | 2024-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112052247B (zh) | 搜索引擎的索引更新系统、方法、装置、电子设备、存储介质 | |
CN107943951B (zh) | 一种区块链业务信息的检索方法及系统 | |
CN106100902B (zh) | 云端指标监控方法和装置 | |
US8171008B2 (en) | Data retrieval | |
CN109299157B (zh) | 一种分布式大单表的数据导出方法及装置 | |
CN112256715B (zh) | 索引的更新方法、装置、电子设备以及存储介质 | |
US20030177124A1 (en) | System for searching secure servers | |
CN111475105B (zh) | 监控数据存储方法、设备、服务器及存储介质 | |
CN107092686B (zh) | 一种基于云存储平台的文件管理方法及装置 | |
US10984059B2 (en) | Data retrieval method and system | |
CN111884843B (zh) | 一种消息处理方法、装置、电子设备及存储介质 | |
CN112052227A (zh) | 数据变更日志的处理方法、装置和电子设备 | |
CN109325056A (zh) | 一种大数据处理方法及装置、通信设备 | |
CN111209054A (zh) | 终端设备的配置方法、终端管理设备及电子设备 | |
CN113407560B (zh) | 更新消息处理方法、数据同步方法、配置信息配置方法 | |
CN112507010B (zh) | 业务数据处理方法、装置、计算机设备和存储介质 | |
EP3649532B1 (en) | Methods, systems, databases and network nodes of data communication networks for handling data posts | |
CN112148920B (zh) | 数据管理方法 | |
CN111552719A (zh) | 数据管理方法、装置、系统、大数据平台及可读存储介质 | |
US9852031B2 (en) | Computer system and method of identifying a failure | |
CN114048206B (zh) | 一种大规模集群的配置一致性校验方法、系统及装置 | |
CN113472469B (zh) | 一种数据同步方法、装置、设备及存储介质 | |
CN111953580B (zh) | 一种会话发送、会话获取的方法、装置和存储介质 | |
CN112905550A (zh) | 一种数据导出方法及装置 | |
CN111314407B (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 |