load-csv.md 2.8 KB
Newer Older
Neo4j 开发者's avatar
Neo4j 开发者 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55
# 使用 LOAD CSV 导入数据到Neo4j

在Neo4j中有几种不同的方法可以将 CSV 数据导入 Neo4j,每种方法都有不同的标准和功能。您选择的选项取决于数据集的大小,以及您对各种工具的熟悉程度。

让我们看看 Neo4j 读取和导入 CSV 文件的一些方法。

1. `LOAD CSV`Cypher 命令:此命令是一个很好的起点,可以处理中小型数据集(最多 1000 万条记录)。 *适用于任何设置,包括 AuraDB。*
2. `neo4j-admin`批量导入工具:命令行工具可用于直接加载大型数据集。 *适用于 Neo4j 桌面、Neo4j EE Docker 镜像和本地安装。*
3. Kettle 导入工具:映射并执行数据处理流程的步骤,适用于非常大的数据集,特别是如果开发人员已经熟悉使用此工具。 *适用于任何设置,包括 AuraDB。*

`LOAD CSV`子句是 Cypher 查询语言的一部分。我们的[Cypher 手册](https://neo4j.com/docs/cypher-manual/current/)包含一个专门介绍其用法的页面,并且 Neo4j 的各种博客、视频、解决方案和其他材料都使用了该命令。它使用简单,适用范围广。 `LOAD CSV`不仅仅是您的基本数据摄取机制,因为它将多个方面组合到一个操作中。

- 支持从 URI 加载/摄取 CSV 数据
- 将输入数据直接映射到复杂的图/域结构
- 处理数据转换
- 支持复杂的计算
- 创建或合并实体、关系和结构

`LOAD CSV`可以处理本地和远程文件,并且每个文件都有一些相关的语法。这很容易被忽略并最终导致访问错误,因此我们将尝试在此处澄清规则。

可以使用`file:///`文件名前的前缀加载**本地文件**。Neo4j 安全有一个默认设置,本地文件只能从 Neo4j 导入目录中读取,这取决于您的操作系统。

可以直接使用其 URL 引用**Web 托管的文件**,例如`https://host/path/data.csv`. 但是,必须设置权限,以便外部源可以读取该文件。

有几件事需要牢记,`LOAD CSV`还有一些有用的技巧可以处理您可能遇到的各种数据场景。

- 所有的CSV文件中的数据读取为字符串,所以你需要使用`toInteger()``toFloat()``split()`或类似功能的转换数值。
- 检查您的 Cypher 导入语句是否有拼写错误。标签、属性名称、关系类型和变量**区分大小写**
- 数据越干净,加载就越容易。尝试在加载前处理复杂的清理/操作。

问题:

关于`LOAD CSV`的描述不正确的是?

## 答案

`LOAD CSV`可以处理任意量级的数据

## 选项

### A

可以从Neo4j Browser中直接运行`LOAD CSV`来加载数据

### B

`LOAD CSV`可以加载本地和远程的CSV数据

### C

`LOAD CSV`可以处理任意量级的数据

### D

除了`LOAD CSV`还可以用批量导入工具、ETL工具和自己写的导入程序