安装

要创建 Neo4j JavaScript 应用程序,您首先需要安装 JavaScript 驱动程序并获取要连接到的 Neo4j 数据库实例。

安装驱动程序

使用 npm 安装 Neo4j JavaScript 驱动程序(需要 npm 和任何 LTS 版本的 node.js

npm i neo4j-driver

始终使用驱动程序的最新版本,因为它始终适用于以前的 Neo4j LTS 版本以及当前和下一个主要版本。最新的 5.x 驱动程序支持连接到任何 Neo4j 5 和 4.4 实例,并且也将与 Neo4j 6 兼容。有关跨版本更改的详细列表,请参阅 驱动程序的更改日志

Neo4j JavaScript 驱动程序还有一个 精简版,它包含与常规驱动程序相同的特性,但不支持 Reactive API。您可以使用 npm i neo4j-driver-lite 安装它。

包含驱动程序

除非您要 在 Web 浏览器中使用驱动程序,否则您可以在 Node.js 或 TypeScript 应用程序中使用 JavaScript 驱动程序。要在您的应用程序中包含驱动程序,请使用 require

const neo4j = require('neo4j-driver')

获取 Neo4j 实例

您需要一个正在运行的 Neo4j 数据库才能使用驱动程序。启动 **本地实例** 的最简单方法是通过 Docker 容器(需要 docker.io)。以下命令在 Docker 中运行最新的 Neo4j 版本,将管理员用户名设置为 neo4j,密码设置为 secretgraph

docker run \
   -p7474:7474 \                       # forward port 7474 (HTTP)
   -p7687:7687 \                       # forward port 7687 (Bolt)
   -d \                                # run in background
   -e NEO4J_AUTH=neo4j/secretgraph \   # set login credentials
   neo4j:latest

或者,您可以通过 Aura 获取免费的 **云实例**。

您还可以 在您的系统上安装 Neo4j,或使用 Neo4j 桌面版 创建本地开发环境(不适用于生产环境)。

术语表

LTS

长期支持版本是保证支持若干年的版本。Neo4j 4.4 是 LTS,Neo4j 5 也将有一个 LTS 版本。

Aura

Aura 是 Neo4j 的完全托管云服务。它提供免费和付费计划。

Cypher

Cypher 是 Neo4j 的图查询语言,允许您从数据库中检索数据。它类似于 SQL,但用于图。

APOC

Awesome Procedures On Cypher (APOC) 是一个(许多)函数库,这些函数本身无法用 Cypher 轻松表达。

Bolt

Bolt 是 Neo4j 实例和驱动程序之间交互使用的协议。默认情况下,它侦听端口 7687。

ACID

原子性、一致性、隔离性和持久性 (ACID) 是保证数据库事务可靠处理的特性。符合 ACID 的 DBMS 确保数据库中的数据即使在发生故障时也能保持准确和一致。

最终一致性

如果数据库保证所有集群成员将在某个时间点存储数据的最新版本,则该数据库最终一致。

因果一致性

如果读写查询按相同的顺序由集群中的每个成员看到,则数据库是因果一致的。这比最终一致性更强。

NULL

空标记不是类型,而是值不存在的占位符。有关更多信息,请参阅 Cypher → 使用 null

事务

事务是工作单元,要么完全提交,要么在失败时回滚。例如银行转账:它涉及多个步骤,但它们必须全部成功或被撤消,以避免从一个帐户中扣除资金但没有添加到另一个帐户中。

背压

背压是与数据流相反的力。它确保客户端不会被比其处理能力更快的速度的数据所淹没。