CN112632294B - 同步Neo4j中数据到搜索服务器的方法及系统 - Google Patents

同步Neo4j中数据到搜索服务器的方法及系统 Download PDF

Info

Publication number
CN112632294B
CN112632294B CN202011591917.5A CN202011591917A CN112632294B CN 112632294 B CN112632294 B CN 112632294B CN 202011591917 A CN202011591917 A CN 202011591917A CN 112632294 B CN112632294 B CN 112632294B
Authority
CN
China
Prior art keywords
search server
neo4j
request
graph
document
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
CN202011591917.5A
Other languages
English (en)
Other versions
CN112632294A (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.)
Suning Financial Technology Nanjing Co Ltd
Original Assignee
Suning Financial Technology Nanjing 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 Suning Financial Technology Nanjing Co Ltd filed Critical Suning Financial Technology Nanjing Co Ltd
Priority to CN202011591917.5A priority Critical patent/CN112632294B/zh
Publication of CN112632294A publication Critical patent/CN112632294A/zh
Priority to CA3144046A priority patent/CA3144046A1/en
Application granted granted Critical
Publication of CN112632294B publication Critical patent/CN112632294B/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/30Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
    • G06F16/36Creation of semantic tools, e.g. ontology or thesauri
    • G06F16/367Ontology
    • 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/901Indexing; Data structures therefor; Storage structures
    • G06F16/9024Graphs; Linked lists

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Animal Behavior & Ethology (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开同步Neo4j中数据到搜索服务器的方法及系统,其中,该方法包括:启动Neo4j图数据库,创建搜索服务器客户端,构造事务事件处理器,并将所述事务事件处理器注册到Neo4j服务中去;利用所述事务事件处理器将图数据节点和图数据关系分别构造成搜索服务器的文档请求对象并存储到Map中;利用所述事务事件处理器基于所述文档请求对象构造搜索服务器的批量文档请求对象,利用搜索服务器客户端将所述批量文档请求对象同步到搜索服务器集群中。本发明提供的同步Neo4j中数据到搜索服务器的系统,采用上述同步Neo4j中数据到搜索服务器的方法,解决了如何将Neo4j中的图数据实时同步到搜索服务器中的问题。

Description

同步Neo4j中数据到搜索服务器的方法及系统
技术领域
本发明涉及图数据库技术领域,尤其涉及同步Neo4j中数据到搜索服务器的方法及系统。
背景技术
Neo4j图数据库是一个非常流行的图数据库,提供了强大且稳定的图存储和图查询功能,在知识图谱应用领域有广泛应用,而搜索服务器经常被用来为应用系统的搜索服务提供支持。
图谱可视化是知识图谱的一个应用领域,通常包含了图数据的搜索查询和展现等服务。在知识图谱的可视化应用场景中,可以使用搜索服务器辅助构建针对图数据的查询服务,将图数据同步到搜索服务器集群中,进而从搜索服务器中高效地查询图数据,以避免直接从Neo4j图库中全量扫描数据,从而提高针对图数据的搜索服务性能。因此,将Neo4j中的图数据实时同步到搜索服务器中,是一个必须要解决的问题。
发明内容
本发明的目的在于提供同步Neo4j中数据到搜索服务器的方法及系统,解决了如何将Neo4j中的图数据实时同步到搜索服务器中的问题。
为了实现上述目的,本发明提供如下技术方案:
一种同步Neo4j中数据到搜索服务器的方法,包括:
启动Neo4j图数据库,创建搜索服务器客户端,构造事务事件处理器,并将所述事务事件处理器注册到Neo4j服务中去;
利用所述事务事件处理器将图数据节点和图数据关系分别构造成搜索服务器的文档请求对象并存储到Map中;
利用所述事务事件处理器基于所述文档请求对象构造搜索服务器的批量文档请求对象,利用搜索服务器客户端将所述批量文档请求对象同步到搜索服务器集群中。
优选地,所述搜索服务器采用Elasticsearch搜索服务器。
较佳地,创建搜索服务器客户端,构造事务事件处理器,并将所述事务事件处理器注册到Neo4j服务中去的方法包括:
启动Neo4j图数据库,读取neo4j图数据库的配置文件中搜索服务器集群地址和搜索服务器索引名称;
根据搜索服务器集群地址创建搜索服务器客户端;
使用搜索服务器客户端检查neo4j图数据库的配置文件中的搜索服务器索引名称是否存在,若不存在则创建搜索服务器索引名称;
依据neo4j图数据库的配置文件构造事务事件处理器,并将所述事务事件处理器注册到Neo4j服务中。
较好地,利用所述事务事件处理器将图数据节点和图数据关系分别构造成搜索服务器的文档请求对象并存储到Map中的方法包括:
在所述事务事件处理器中创建Map对象,所述Map对象采用键集-值集的映射方式;
将Neo4j图数据库中的图数据节点和图数据关系分别构造成搜索服务器的文档请求对象;
将图数据节点的实体id与索引类型构造成的对象存储为Map对象的key,和/或
将图数据关系的实体id与索引类型构造成的对象存储为Map对象的key;
将所述文档请求对象存储为Map对象中对应的value。
具体地,将Neo4j图数据库中的图数据节点分别构造成搜索服务器的文档请求对象的方法包括:
根据Neo4j图数据库的配置文件判断是否需要同步图数据节点,若需要同步图数据节点,则执行以下同步图数据节点的操作中的一项或多项:
将Neo4j图数据库的事务对象中创建的图数据节点构造成搜索服务器的索引请求文档对象;
将Neo4j图数据库的事务对象中删除的图数据节点构造成搜索服务器的删除请求文档对象;
将Neo4j图数据库的事务对象中新增标签的图数据节点构造成搜索服务器的索引请求文档对象;
将Neo4j图数据库的事务对象中删除标签的图数据节点构造成搜索服务器的删除请求文档对象;
将Neo4j图数据库的事务对象中新增属性的图数据节点构造成搜索服务器的索引请求文档对象;
将Neo4j图数据库的事务对象中删除属性的图数据节点构造成搜索服务器的删除请求文档对象。
具体地,将Neo4j图数据库中需要同步的图数据关系分别构造成搜索服务器的文档请求对象的方法包括:
根据Neo4j图数据库的配置文件判断是否需要同步图数据关系,若需要同步图关系节点,则执行以下同步图数据关系的操作中的一项或多项:
将Neo4j图数据库的事务对象中创建的图数据关系构造成搜索服务器的索引请求文档对象;
将Neo4j图数据库的事务对象中删除的图数据关系构造成搜索服务器的删除请求文档对象;
将Neo4j图数据库的事务对象中新增属性的图数据关系构造成搜索服务器的索引请求文档对象;
将Neo4j图数据库的事务对象中删除属性的图数据关系构造成搜索服务器的删除请求文档对象。
进一步地,其特征在于,利用所述事务事件处理器基于所述文档请求对象构造搜索服务器的批量文档请求对象,利用搜索服务器客户端将所述批量文档请求对象同步到搜索服务器集群中的方法包括:
利用所述事务事件处理器基于所述文档请求对象构造搜索服务器的批量文档请求对象;
搜索服务器客户端采用异步请求方式或同步请求方式执行图数据同步操作,将所述批量文档请求对象同步到搜索服务器集群中。
优选地,根据Neo4j的配置文件判定搜索服务器客户端采用异步请求方式或同步请求方式执行图数据同步操作。
较佳地,所述批量文档请求对象为Bulk请求对象,所述异步请求方式为异步Bulk请求方式,所述同步请求方式为同步Bulk请求方式。
一种同步Neo4j中数据到搜索服务器的系统,包括初始化模块、映射模块及同步模块,其中,
所述初始化模块,用于启动Neo4j图数据库,创建搜索服务器客户端,构造事务事件处理器对象,并将所述事务事件处理器对象注册到Neo4j服务中去;
所述映射模块,用于利用所述事务事件处理器将图数据节点和图数据关系分别构造成搜索服务器的文档请求对象并存储到Map中;
所述同步模块,用于利用所述事务事件处理器基于所述文档请求对象构造搜索服务器的批量文档请求对象,利用搜索服务器客户端将所述批量文档请求对象同步到搜索服务器集群中。
与现有技术相比,本发明提供的同步Neo4j中数据到搜索服务器的方法及系统具有以下有益效果:
本发明提供的同步Neo4j中数据到搜索服务器的方法,首先在Neo4j图数据库中创建搜索服务器客户端和事务事件处理器,然后利用事务事件处理器将图数据节点和图数据关系分别构造成搜索服务器的文档请求对象并存储到Map中,最后利用事务事件处理器构造搜索服务器的批量文档请求对象,并利用搜索服务器客户端将批量文档请求对象同步到搜索服务器集群中。使得Neo4j在执行写操作时,可以自动将提交数据写入事务之后变更的图数据同步到搜索服务器的集群中,从而帮助开发人员利用Neo4j图数据库和搜索服务器构建高质量的图谱可视化应用。
本发明提供的同步Neo4j中数据到搜索服务器的系统,采用上述同步Neo4j中数据到搜索服务器的方法,解决了如何将Neo4j中的图数据实时同步到搜索服务器中的问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本发明的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1为本发明实施例中一种同步Neo4j中数据到搜索服务器的方法流程示意图;
图2为本发明实施例中启动Neo4j图数据库的过程示意图;
图3为本发明实施例中图数据同步处理流程示意图;
图4为本发明实施例中一种同步Neo4j中数据到搜索服务器的系统模块示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动的前提下所获得的所有其它实施例,均属于本发明保护的范围。
实施例一
请参阅图1,一种同步Neo4j中数据到搜索服务器的方法,包括:
启动Neo4j图数据库,创建搜索服务器客户端,构造事务事件处理器,并将事务事件处理器注册到Neo4j服务中去;
利用事务事件处理器将图数据节点和图数据关系分别构造成搜索服务器的文档请求对象并存储到Map中;
利用事务事件处理器基于文档请求对象构造搜索服务器的批量文档请求对象,利用搜索服务器客户端将批量文档请求对象同步到搜索服务器集群中。
本实施例提供的同步Neo4j中数据到搜索服务器的方法,使得Neo4j在执行写操作时,可以自动将提交数据写入事务之后变更的图数据转换成批量文档请求对象,进而利用搜索服务器客户端将批量文档请求对象同步到搜索服务器集群中,从而帮助开发人员利用Neo4j图数据库和搜索服务器构建高质量的图谱可视化应用。
在具体实施过程中,搜索服务器可以采用Elasticsearch搜索服务器,Elasticsearch搜索服务器提供了一个开源的分布式文档存储和分析搜索引擎,能够提供高效的索引查询能力,在大数据搜索领域有广泛的应用,经常被用来为应用系统的搜索服务提供支持。
此外,本实施例中方法可以基于Neo4j图数据库社区版(以下简称Neo4j)进行开发,并使用Java编程语言实现。Neo4j有一个核心扩展工厂接口KernelExtensionFactory,这个接口会创建一个Neo4j生命周期对象,这个Neo4j生命周期对象在Neo4j启动和关闭的时候可以执行自定义的扩展操作。此外,Neo4j在执行写操作的时候会触发数据写入事务,Neo4j在数据写入事务处理过程中会调用事务事件处理器(TransactionEventHandler)接口,事务事件处理器在数据写入事务开始之前、事务提交之后、事务回滚之后这三个阶段分别执行相应的方法,以同步Neo4j中图数据到搜索服务器。Neo4j将事务数据保存在一个事务对象(TransactionData)中,这个事务对象作为参数传递到事务事件处理器接口的方法中。
本发明实施例提供的同步Neo4j中数据到搜索服务器的方法,利用Neo4j的这两个机制,在启动过程中读取neo4j的配置文件(neo4j.conf文件)中的搜索服务器集群和搜索服务器索引配置,初始化搜索服务器客户端(例如:Elasticsearch客户端)并创建好索引。Neo4j执行写操作的时候,在数据写入事务执行之前的方法(beforeCommit()方法)中,将事务对象中的图数据提取出来,在数据写入事务提交之后的方法(afterCommit()方法)中,将提取出来的图数据同步到搜索服务器集群中。其中,创建搜索服务器客户端,构造事务事件处理器,并将事务事件处理器注册到Neo4j服务中去的方法包括:
启动Neo4j图数据库,读取neo4j图数据库的配置文件中搜索服务器集群地址和搜索服务器索引名称;
根据搜索服务器集群地址创建搜索服务器客户端;
使用搜索服务器客户端检查neo4j图数据库的配置文件中的搜索服务器索引名称是否存在,若不存在则创建搜索服务器的索引名称;
依据neo4j图数据库的配置文件构造事务事件处理器(ElasticSearchEventHandler),并将该事务事件处理器注册到Neo4j服务中。
其中,构造事务事件处理器的过程具体包括:配置搜索服务器的集群(多个节点以逗号隔开)、配置搜索服务器的索引名称(同步的图谱数据保存都保存在这个索引中)、配置索引的分片数、配置索引的副本数、配置Elasticsearch的传播模式、配置是否同步节点数据、配置是否同步关系数据,以及配置是否使用异步方式同步数据等。
创建搜索服务器客户端和事务事件处理器后,所有的数据封装和同步动作都是在事务事件处理器里进行的。利用事务事件处理器将图数据节点和图数据关系分别构造成搜索服务器的文档请求对象并存储到Map中的方法包括:
在事务事件处理器中创建Map对象,Map对象采用键集-值集的映射方式;
将Neo4j图数据库中的图数据节点和图数据关系分别构造成搜索服务器的文档请求对象;
将图数据节点的实体id与索引类型构造成的对象存储为Map对象的key,和/或
将图数据关系的实体id与索引类型构造成的对象存储为Map对象的key;
将文档请求对象存储为Map对象中对应的value。
有可能某个neo4j的事务事件处理器中只处理图数据节点,或者只处理图数据关系,相应地,只需要将图数据节点的实体id与索引类型构造成的对象存储为Map对象的key,或将图数据关系的实体id与索引类型构造成的对象存储为Map对象的key,然后将文档请求对象存储为与key对应的value,以避免建立过多键值造成资源浪费、提高索引复杂度等。
由于图数据这一数据结构包括图数据节点和图数据关系,所以需要将图数据节点和图数据关系分别构造成搜索服务器的文档请求对象。实际同步图数据的过程中,先将Neo4j图数据库中的图数据节点分别构造成搜索服务器的文档请求对象,具体方法包括:
根据Neo4j图数据库的配置文件判断是否需要同步图数据节点,若不需要同步图数据节点则直接跳过,若需要同步图数据节点,则执行以下同步图数据节点的操作中的一项或多项:
将Neo4j图数据库的事务对象中创建的图数据节点构造成搜索服务器的索引请求文档(Index文档)对象;
将Neo4j图数据库的事务对象中删除的图数据节点构造成搜索服务器的删除请求文档(Delete文档)对象;
将Neo4j图数据库的事务对象中新增标签的图数据节点构造成搜索服务器的索引请求文档对象;
将Neo4j图数据库的事务对象中删除标签的图数据节点构造成搜索服务器的删除请求文档对象;
将Neo4j图数据库的事务对象中新增属性的图数据节点构造成搜索服务器的索引请求文档对象;
将Neo4j图数据库的事务对象中删除属性的图数据节点构造成搜索服务器的删除请求文档对象。
图数据节点同步完成后,然后将Neo4j图数据库中需要同步的图数据关系分别构造成搜索服务器的文档请求对象,具体方法包括:
根据Neo4j图数据库的配置文件判断是否需要同步图数据关系,若需要同步图关系节点,则执行以下同步图数据关系的操作中的一项或多项:
将Neo4j图数据库的事务对象中创建的图数据关系构造成搜索服务器的索引请求文档对象;
将Neo4j图数据库的事务对象中删除的图数据关系构造成搜索服务器的删除请求文档对象;
将Neo4j图数据库的事务对象中新增属性的图数据关系构造成搜索服务器的索引请求文档对象;
将Neo4j图数据库的事务对象中删除属性的图数据关系构造成搜索服务器的删除请求文档对象。
具体实施过程中,也可以先将Neo4j图数据库中需要同步的图数据关系分别构造成搜索服务器的文档请求对象,再将Neo4j图数据库中的图数据节点分别构造成搜索服务器的文档请求对象,该请求文档对象与索引实时保存到Map对象中,需要调用时根据key值索引返回对应的value值,方便快捷且不易出错。
得到文档请求对象之后,利用事务事件处理器基于文档请求对象构造搜索服务器的批量文档请求对象,进而利用搜索服务器客户端将批量文档请求对象同步到搜索服务器集群中,具体方法包括:
利用事务事件处理器基于文档请求对象构造搜索服务器的批量文档请求对象;
搜索服务器客户端采用异步请求方式或同步请求方式执行图数据同步操作,将批量文档请求对象同步到搜索服务器集群中。
最后根据Neo4j的配置文件判定搜索服务器客户端采用异步请求方式或同步请求方式执行图数据同步操作。批量文档请求对象为Bulk请求对象,相对应地,异步请求方式为异步Bulk请求方式,同步请求方式为同步Bulk请求方式。例如,根据Neo4j的配置文件判断是否采用异步请求方式,若是,则搜索服务器客户端采用异步Bulk请求方式将批量文档请求对象同步到搜索服务器集群中,若不是,则搜索服务器客户端采用同步Bulk请求方式将批量文档请求对象同步到搜索服务器集群中。具体实施中,利用Neo4j提供的Setting<T>类,根据配置项名称从neo4j.conf文件中读取所需要的配置值。本发明提供的同步Neo4j中数据到搜索服务器的方法,解决了在图谱可视化应用领域,利用Neo4j和搜索服务器构建图谱搜索服务时,无法实时自动将图数据同步到搜索服务器集群的问题,从而帮助开发人员利用Neo4j和搜索服务器构建高质量的图谱可视化应用。
实施例二
请参阅图4,本实施例提供一种同步Neo4j中数据到搜索服务器的系统,包括初始化模块、映射模块及同步模块,其中,初始化模块,用于启动Neo4j图数据库,创建搜索服务器客户端,构造事务事件处理器对象,并将事务事件处理器对象注册到Neo4j服务中去;映射模块,用于利用事务事件处理器将图数据节点和图数据关系分别构造成搜索服务器的文档请求对象并存储到Map中;同步模块,用于利用事务事件处理器基于文档请求对象构造搜索服务器的批量文档请求对象,利用搜索服务器客户端将批量文档请求对象同步到搜索服务器集群中。该同步Neo4j中数据到搜索服务器的系统,可以以插件的形式集成到Neo4j图数据库中,使得Neo4j在执行写操作时,可以自动将提交数据写入事务之后变更的图数据转换成批量文档请求对象,进而利用搜索服务器客户端将批量文档请求对象同步到搜索服务器集群中。
本发明提供的同步Neo4j中数据到搜索服务器的系统,采用上述实施例一中的同步Neo4j中数据到搜索服务器的方法,解决了如何将Neo4j中的图数据实时同步到搜索服务器中的问题。与现有技术相比,本发明实施例提供的同步Neo4j中数据到搜索服务器的系统的有益效果与上述实施例一提供的同步Neo4j中数据到搜索服务器的方法的有益效果相同,且该系统中的其他技术特征与上一实施例方法公开的特征相同,在此不做赘述。
在上述实施方式的描述中,具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (10)

1.一种同步Neo4j中数据到搜索服务器的方法,其特征在于,包括:
启动Neo4j图数据库,创建搜索服务器客户端,构造事务事件处理器,并将所述事务事件处理器注册到Neo4j服务中去;
利用所述事务事件处理器将图数据节点和图数据关系分别构造成搜索服务器的文档请求对象并存储到Map中;
利用所述事务事件处理器基于所述文档请求对象构造搜索服务器的批量文档请求对象,利用搜索服务器客户端将所述批量文档请求对象同步到搜索服务器集群中。
2.根据权利要求1所述的同步Neo4j中数据到搜索服务器的方法,其特征在于,所述搜索服务器采用Elasticsearch搜索服务器。
3.根据权利要求1或2所述的同步Neo4j中数据到搜索服务器的方法,其特征在于,创建搜索服务器客户端,构造事务事件处理器,并将所述事务事件处理器注册到Neo4j服务中去的方法包括:
启动Neo4j图数据库,读取neo4j图数据库的配置文件中搜索服务器集群地址和搜索服务器索引名称;
根据搜索服务器集群地址创建搜索服务器客户端;
使用搜索服务器客户端检查neo4j图数据库的配置文件中的搜索服务器索引名称是否存在,若不存在则创建搜索服务器索引名称;
依据neo4j图数据库的配置文件构造事务事件处理器,并将所述事务事件处理器注册到Neo4j服务中。
4.根据权利要求3所述的同步Neo4j中数据到搜索服务器的方法,其特征在于,利用所述事务事件处理器将图数据节点和图数据关系分别构造成搜索服务器的文档请求对象并存储到Map中的方法包括:
在所述事务事件处理器中创建Map对象,所述Map对象采用键集-值集的映射方式;
将Neo4j图数据库中的图数据节点和图数据关系分别构造成搜索服务器的文档请求对象;
将图数据节点的实体id与索引类型构造成的对象存储为Map对象的key,和/或
将图数据关系的实体id与索引类型构造成的对象存储为Map对象的key;
将所述文档请求对象存储为Map对象中对应的value。
5.根据权利要求4所述的同步Neo4j中数据到搜索服务器的方法,其特征在于,将Neo4j图数据库中的图数据节点分别构造成搜索服务器的文档请求对象的方法包括:
根据Neo4j图数据库的配置文件判断是否需要同步图数据节点,若需要同步图数据节点,则执行以下同步图数据节点的操作中的一项或多项:
将Neo4j图数据库的事务对象中创建的图数据节点构造成搜索服务器的索引请求文档对象;
将Neo4j图数据库的事务对象中删除的图数据节点构造成搜索服务器的删除请求文档对象;
将Neo4j图数据库的事务对象中新增标签的图数据节点构造成搜索服务器的索引请求文档对象;
将Neo4j图数据库的事务对象中删除标签的图数据节点构造成搜索服务器的删除请求文档对象;
将Neo4j图数据库的事务对象中新增属性的图数据节点构造成搜索服务器的索引请求文档对象;
将Neo4j图数据库的事务对象中删除属性的图数据节点构造成搜索服务器的删除请求文档对象。
6.根据权利要求4所述的同步Neo4j中数据到搜索服务器的方法,其特征在于,将Neo4j图数据库中需要同步的图数据关系分别构造成搜索服务器的文档请求对象的方法包括:
根据Neo4j图数据库的配置文件判断是否需要同步图数据关系,若需要同步图关系节点,则执行以下同步图数据关系的操作中的一项或多项:
将Neo4j图数据库的事务对象中创建的图数据关系构造成搜索服务器的索引请求文档对象;
将Neo4j图数据库的事务对象中删除的图数据关系构造成搜索服务器的删除请求文档对象;
将Neo4j图数据库的事务对象中新增属性的图数据关系构造成搜索服务器的索引请求文档对象;
将Neo4j图数据库的事务对象中删除属性的图数据关系构造成搜索服务器的删除请求文档对象。
7.根据权利要求4-6中任一项所述的同步Neo4j中数据到搜索服务器的方法,其特征在于,利用所述事务事件处理器基于所述文档请求对象构造搜索服务器的批量文档请求对象,利用搜索服务器客户端将所述批量文档请求对象同步到搜索服务器集群中的方法包括:
利用所述事务事件处理器基于所述文档请求对象构造搜索服务器的批量文档请求对象;
搜索服务器客户端采用异步请求方式或同步请求方式执行图数据同步操作,将所述批量文档请求对象同步到搜索服务器集群中。
8.根据权利要求7所述的同步Neo4j中数据到搜索服务器的方法,其特征在于,根据Neo4j的配置文件判定搜索服务器客户端采用异步请求方式或同步请求方式执行图数据同步操作。
9.根据权利要求8所述的同步Neo4j中数据到搜索服务器的方法,其特征在于,所述批量文档请求对象为Bulk请求对象,所述异步请求方式为异步Bulk请求方式,所述同步请求方式为同步Bulk请求方式。
10.一种同步Neo4j中数据到搜索服务器的系统,其特征在于,包括初始化模块、映射模块及同步模块,其中,
所述初始化模块,用于启动Neo4j图数据库,创建搜索服务器客户端,构造事务事件处理器对象,并将所述事务事件处理器对象注册到Neo4j服务中去;
所述映射模块,用于利用所述事务事件处理器将图数据节点和图数据关系分别构造成搜索服务器的文档请求对象并存储到Map中;
所述同步模块,用于利用所述事务事件处理器基于所述文档请求对象构造搜索服务器的批量文档请求对象,利用搜索服务器客户端将所述批量文档请求对象同步到搜索服务器集群中。
CN202011591917.5A 2020-12-29 2020-12-29 同步Neo4j中数据到搜索服务器的方法及系统 Active CN112632294B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202011591917.5A CN112632294B (zh) 2020-12-29 2020-12-29 同步Neo4j中数据到搜索服务器的方法及系统
CA3144046A CA3144046A1 (en) 2020-12-29 2021-12-24 System and method of synchronizing data in neo4j to search server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011591917.5A CN112632294B (zh) 2020-12-29 2020-12-29 同步Neo4j中数据到搜索服务器的方法及系统

Publications (2)

Publication Number Publication Date
CN112632294A CN112632294A (zh) 2021-04-09
CN112632294B true CN112632294B (zh) 2022-09-09

Family

ID=75286150

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011591917.5A Active CN112632294B (zh) 2020-12-29 2020-12-29 同步Neo4j中数据到搜索服务器的方法及系统

Country Status (2)

Country Link
CN (1) CN112632294B (zh)
CA (1) CA3144046A1 (zh)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070021914A1 (en) * 2005-07-20 2007-01-25 Song Kyeong Sub Navigation system with function of destination search using synchronization service of home telematics system, and method thereof
CN108170847B (zh) * 2018-01-18 2021-08-31 国网福建省电力有限公司 一种基于Neo4j图数据库的大数据存储方法
CN110990516B (zh) * 2019-12-13 2023-06-27 中科图新(苏州)科技有限公司 地图数据的处理方法、装置和服务器

Also Published As

Publication number Publication date
CA3144046A1 (en) 2022-06-29
CN112632294A (zh) 2021-04-09

Similar Documents

Publication Publication Date Title
CN109800222B (zh) 一种HBase二级索引自适应优化方法和系统
CN111427966B (zh) 数据库事务处理方法、装置及服务器
US11100101B2 (en) Data operation method and data management server
US9740582B2 (en) System and method of failover recovery
US9177035B2 (en) Replicating data to a database
JP5652228B2 (ja) データベースサーバ装置、データベース更新方法及びデータベース更新プログラム
US8200624B2 (en) Membership tracking and data eviction in mobile middleware scenarios
CN111324610A (zh) 一种数据同步的方法及装置
CN111881223B (zh) 数据管理方法、设备、系统及存储介质
US10824968B2 (en) Transformation of logical data object instances and updates to same between hierarchical node schemas
US11762654B2 (en) Processing framework for in-system programming in a containerized environment
US11907260B2 (en) Compare processing using replication log-injected compare records in a replication environment
CN115934855A (zh) 一种全链路字段级血缘解析方法、系统、设备及存储介质
CN110109981B (zh) 工作队列的信息展示方法、装置、计算机设备和存储介质
CN110955719B (zh) 一种数据存取处理设备、系统和方法
CN111414356A (zh) 数据存储方法、装置、非关系数据库系统及存储介质
CN112800060A (zh) 数据处理方法、装置、计算机可读存储介质及电子设备
CN112632294B (zh) 同步Neo4j中数据到搜索服务器的方法及系统
CN111159179A (zh) 表分区方法及相关设备、计算机可读存储介质
US20110191549A1 (en) Data Array Manipulation
AU2016100156A4 (en) Data Structure, Model for Populating a Data Structure and Method of Programming a Processing Device Utilising a Data Structure
CN115113989B (zh) 事务执行方法、装置、计算设备及存储介质
CN115617797A (zh) 一种业务元数据字段动态拓展方法、电子设备及存储介质
CN114461454A (zh) 数据恢复方法、装置、存储介质及电子设备
WO2020192663A1 (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