Neo4j 版本4 新特性介绍 - 多数据库

1. 目标

在本指南中,我们将逐步介绍如何在Neo4j 4 企业版DBMS中管理多个数据库。

本文原文链接:https://neo4j.com/developer/manage-multiple-databases/

2. 先决条件

请下载并安装Neo4j(4.0或更高版本)企业版。 阅读有关图数据库的部分会有所帮助。

 

3. 概述

在Neo4j(v4.0 +)中,我们可以同时创建和使用多个活动数据库。 这适用于独立部署和因果群集部署,并允许我们在一个Neo4j数据库安装中维护多个单独的图。

当我们创建数据库时,Neo4j将首先创建系统数据库默认数据库。 系统数据库名为system,它包含适用于整个数据库的总体信息--管理单个数据库的执行(停止和启动)以及维护用户特权(安全角色和特权)。 默认数据库名为neo4j(可以更改),在这里我们可以在图中存储和查询数据,并与其他应用程序和工具集成。 我们还可以根据需要创建其他数据库,以存储可能与我们的任何其他数据库都不相关的其他图和不同数据。

 

4. 系统设置

 

我们将需要运行数据库并打开Neo4j浏览器,以逐步完成本指南。 如果您不确定如何创建和启动数据库,请参照本指南中提供的在Neo4j Desktop里的逐项指导说明。

 

4.1 查看初始数据库

 

如前所述,当安装Neo4j并创建一个实例时,它将由两个数据库启动:一个系统数据库和一个默认(neo4j)数据库。 启动Neo4j浏览器将自动将我们指向neo4j默认数据库,如命令行中neo4j$ 提示符所示。

如果要查看系统信息(查看、创建/删除、管理数据库),则需要切换到系统数据库。 我们可以使用:use命令来做到这一点,然后告诉它我们想要哪个数据库。

命令::use system

结果:

现在,我们可以运行命令来查看使用实例创建的数据库。 SHOW DATABASES命令将显示我们实例中的所有数据库(或群集中跨实例的数据库)以及地址、角色、请求和当前状态,任何错误以及默认的数据库。请记住,此时,我们只希望使用系统数据库和默认(neo4j)数据库。

如何我们预期的那样。 现在,将另一个数据库添加到列表中。

 

4.2 创建一个新的数据库

要将数据库添加到实例中,我们可以使用CREATE DATABASE命令。 现在我们将使用一个名为movieGraph的示例,您可以为此数据库选择任何名称。

数据库命名不区分大小写。 创建数据库movieGraph将在系统信息中显示moviegraph作为名称,但是您可以任意使用movieGraph或moviegraph更改为数据库。 两者都将连接到相同的数据库,并且不允许您使用大写/小写字母(例如MovieGraph,moviegraph,mOvIeGrApH等)的任何其他组合来创建另一个数据库。

虽然结果消息似乎不能说服我们的创建命令起作用,但是我们可以通过再次运行SHOW DATABASES命令来验证新数据库是否显示在列表中,以进行验证!

看起来不错。 我们可以切换到新数据库以开始专门使用该数据库(命令是:use movieGraph)。

加载数据并使用我们的movieGraph数据库

接下来,我们将一些样本数据加载到movieGraph数据库中并使用它。 在执行此操作之前,让我们通过使用CALL db.schema.visualization()过程查看模式来验证数据库是否真正为空。

Neo4j的早期版本使用CALL db.schema()过程,该过程已转换为上面显示的更新过程。

结果中未显示任何节点或关系数据,因此数据库为空。添加一点点数据后,结果中将看到一个可视化的数据模型。 我们可以通过编写Cypher查询以返回任何节点和关系来进行另一项快速测试。

命令:MATCH (node)-[rel]-(other) RETURN node, rel, other

结果:

现在我们再来添加一些数据。

 

4.2 加载电影数据

我们将使用Neo4j用户可能已经熟悉的电影小数据集。 要加载,请在命令行中输入:play movies命令并执行。 指南将显示在结果窗格中。

 

我们可以通过单击窗格右侧的箭头导航到第二张幻灯片,然后将出现一个包含长Cypher查询的幻灯片。

 

右侧的Cypher查询将以灰色虚线标出轮廓。 我们可以单击该查询,它将复制/粘贴到命令行中。 单击以执行查询,这将返回一些结果,确认已加载数据。

 

 

 

结果窗格中图表的颜色和位置可能会有所不同。 但是,如果在本指南中任何时候数据都不同步,则可以按照本指南底部的步骤清除实例,然后再次尝试加载数据。

我们还可以再次检查架构过程,以查看数据在数据库(数据模型)中的组织方式。 再次使用命令CALL db.schema.visualization()并执行它,以查看我们具有通过几种不同类型的关系连接的Person节点和Movie节点。

现在,我们可以对想要的电影数据运行任何查询。 例如,使用如下所示的通用查询将可以搜索与其他节点有任何关系的节点。

 

 

尽管我们可以查询和处理电影数据,但我们希望使用多数据库功能,并看到一个数据库中的数据无法在另一个数据库中访问。 为此,我们需要在另一个数据库中加载一些不同的数据。

 

4.3 加载数据并使用我们的neo4j数据库

让我们回到默认的neo4j数据库,并在其中加载Northwind零售系统数据。 这样,当我们查看数据库(movieGraph和neo4j)时,将看到两组完全不同的数据。:use neo4j命令会将我们切换到该数据库,并允许我们在该数据库中加载。

为了确认当前该数据库中没有数据,我们可以对neo4j运行CALL db.schema.visualization()过程。

 

这样就看起来都很清楚。 如果我们要确认的话,我们也可以从上面运行测试查询。 现在我们准备添加一些数据。

 

4.4 加载northwind数据

我们将使用浏览器指南:play northwind,该指南具有内置的Cypher查询,我们可以运行这些查询来加载零售供应商,产品和产品类别。

 

单击结果窗格右侧的箭头以转到指南中的下一张幻灯片,将有3个load语句和3个索引语句。

执行所有6个步骤以填充节点,然后再次单击指南上的向右箭头以前进至下一张幻灯片。 在此幻灯片上,我们还有2条语句来查找节点并在它们之间创建关系。

 

单击并运行这两个语句,然后我们可以通过再次运行模式过程来检查数据是否正确加载。 我们应该期望与产品节点有关系的供应商节点与类别节点有关系的供应商节点。

 

 

结果窗格中图表的颜色和位置可能会有所不同。 但是,如果在本指南中任何时候数据都不同步,则可以按照本文底部的步骤清除实例,然后再次尝试加载数据。

那就是我们所期望的! 我们可以再次运行通用测试查询以检索一些Northwind数据。

 

 

请注意,在数据模型或测试查询中,我们看不到任何电影数据库实体或关系。 这些都在我们的movieGraph数据库中,并且是完全分开的。 如果该图中存在这些节点和关系,则测试查询将检索它们,因为我们在搜索中未指定任何特定类型的节点和关系。

我们可以再做一个步骤来验证Northwind数据是否也不在我们的movieGraph数据库中。

在数据集和数据库之间导航

 

让我们再次使用 :use movieGraph命令切换回movieGraph数据库。 接下来,我们运行熟悉的CALL db.schema.visualization()过程以拉回我们的数据模型。

 

 

我们看到该图中没有Northwind数据。看起来不错。我们的通用测试查询也可以是另一种验证方法。

我们可以继续分别操作每个图形,但是可以在没有单独实例的情况下连接到同一Neo4j安装中的不同数据集。

 

4.6 清除同一实例中的数据库

 

最后一个管理上的区别是如何在不影响具有多个数据库的整个实例的情况下完全清除一个数据库。在处理单个实例和单个数据库方法时,用户可以删除整个实例并重新开始。但是,对于多个数据库,除非我们可以接受可以丢失其他数据库中的所有内容,否则我们无法做到这一点。

这种方法与其他DBMS相似,在这些DBMS中,我们可以删除并重新创建数据库,但保留其他所有内容。 Cypher的命令是CREATE OR REPLACE DATABASE <name>

。这将创建数据库(如果尚不存在)或将现有数据库替换为干净的数据库。

例如,在研究这些示例时,我们可能错误地更改了负载查询,或者意外地添加或删除了所需的数据。在这种情况下,删除所有数据将不会完全擦除数据模型的索引或幻影实体。相反,我们可以使用CREATE OR REPLACE DATABASE命令并重新开始。

命令:CREATE OR REPLACE DATABASE neo4j

结果:

本文原文链接:https://neo4j.com/developer/manage-multiple-databases/ 

 

  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
### 回答1: 《neo4j权威指南-数据库-大数据时代的新利器.pdf》是一本介绍Neo4j数据库的权威指南。Neo4j是一种高性能、可扩展的数据库,它能够处理大规模复杂数据,并提供了强大的查询和分析功能。 该书结构清晰,内容详细全面。首先介绍数据库的概念和基本原理,然后详细讲解了Neo4j的安装与配置。接下来,书介绍Neo4j数据库的基本操作,包括数据的创建、删除、更新和查询等。 除了基本操作,该书还介绍Neo4j的高级功能和应用场景。比如,如何构建复杂的结构、如何优化查询性能以及如何进行数据的分析和可视化等。同时,书介绍Neo4j与其他大数据工具(如Hadoop、Spark等)的集成方法。 这本书的优点在于,它不仅仅是一本理论性的指南,更注重实际应用。书通过大量的示例和案例,让读者能够更好地理解Neo4j的用法和原理,并且能够在实际项目灵活应用。 总而言之,该书是一本非常实用的数据库指南,对于想要学习和应用Neo4j的人来说是一本不可或缺的参考书。无论是对于数据库的初学者,还是对于有经验的开发者和数据分析师,这本书都能够提供很大的帮助。阅读它能够帮助读者更深入地理解和应用Neo4j数据库,从而在大数据时代获得新的利器。 ### 回答2: 《neo4j权威指南-数据库-大数据时代的新利器.pdf》是一本介绍Neo4j数据库的权威指南。Neo4j是一种基于模型的高性能、高可伸缩性的数据库管理系统,它的出现使得处理大数据变得更加方便和高效。 这本指南首先介绍数据库的概念和基本知识,包括的数据结构、节点、关系等。然后详细介绍了如何使用Neo4j进行数据建模,包括节点和关系的创建、属性的定义、查询语言的使用等。 接着,指南介绍Neo4j的高级功能和特性,如算法、遍历、索引和约束等。这些功能可以帮助用户更加灵活地处理和分析数据,并从获取有用的信息。 此外,指南还介绍Neo4j在大数据时代的应用场景,包括社交网络分析、推荐系统、网络安全等。数据库的优势在这些应用得到了充分展示,为用户提供了更加高效和快速的数据处理方法。 总的来说,《neo4j权威指南-数据库-大数据时代的新利器.pdf》是一本详细介绍Neo4j数据库的权威指南,对初学者提供了宝贵的知识和实践经验,同时也为有经验的用户提供了更多高级功能和应用场景的深入探讨。无论是对于学习者还是开发者来说,这本指南都是一本不可或缺的参考书。 ### 回答3: 《Neo4j权威指南-数据库-大数据时代的新利器》是一本介绍Neo4j数据库的权威指南。数据库是一种以形的形式存储和处理数据的数据库系统,与传统的关系型数据库相比,可以更好地处理复杂的关系和连接。 本书首先介绍数据库的基本概念和特点,探讨了为什么数据库在大数据时代成为新的利器。随着互联网的快速发展和数据的爆炸式增长,传统的数据库已经无法满足对数据的高效查询和分析的需求,而数据库作为一种新型数据库技术,能够有效解决这些问题。 接着,本书详细介绍Neo4j数据库的特点、架构和基本操作。Neo4j是目前最流行的数据库之一,它提供了一个高效、灵活和可扩展的数据库解决方案。读者可以通过本书学习如何安装、配置和使用Neo4j,并掌握Cypher查询语言进行数据的查询和分析。此外,本书还介绍数据库的关键技术,如算法和分析,帮助读者充分发挥数据库在数据挖掘和机器学习等领域的优势。 最后,本书还涵盖了Neo4j在实际应用的案例和经验。通过实际的案例分析,读者可以了解如何使用Neo4j解决实际的业务问题,并掌握在实际项目如何优化和调优Neo4j数据库。 总之,《Neo4j权威指南-数据库-大数据时代的新利器》是一本全面而深入的数据库入门指南,对于想要了解和使用数据库的读者来说是一本非常实用的参考书。无论是数据库开发人员、数据科学家还是大数据分析师,都可以从本书获得宝贵的知识和经验。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值