diff --git "a/data/2.Neo4j \344\270\255\351\230\266/3.\346\225\260\346\215\256\345\257\274\345\205\245/1.\344\273\216CSV\346\226\207\344\273\266\344\270\255\345\257\274\345\205\245/load-csv.md" "b/data/2.Neo4j \344\270\255\351\230\266/3.\346\225\260\346\215\256\345\257\274\345\205\245/1.\344\273\216CSV\346\226\207\344\273\266\344\270\255\345\257\274\345\205\245/load-csv.md" index d4027993119b2df1299f81bce1ab8b71608f07fd..827a03b45777572d7af6730a332b69bba41f6354 100644 --- "a/data/2.Neo4j \344\270\255\351\230\266/3.\346\225\260\346\215\256\345\257\274\345\205\245/1.\344\273\216CSV\346\226\207\344\273\266\344\270\255\345\257\274\345\205\245/load-csv.md" +++ "b/data/2.Neo4j \344\270\255\351\230\266/3.\346\225\260\346\215\256\345\257\274\345\205\245/1.\344\273\216CSV\346\226\207\344\273\266\344\270\255\345\257\274\345\205\245/load-csv.md" @@ -1 +1,55 @@ -# 使用 LOAD CSV 导入数据到Neo4j \ No newline at end of file +# 使用 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工具和自己写的导入程序 \ No newline at end of file