下面是我在上传一个有一百万条记录的文件时遇到的几个问题。帮我解决问题。当我试图在博客中找到解决方案时,所有人都建议修改一些逻辑。但我直接使用redisgraph批量加载工具。
unicodedecodeerror:“utf-8”编解码器无法解码3565位置的字节0xe8:无效的连续字节
_csv.error:行包含空字节
如果列值包含引号和逗号,则不起作用。
redisgraph\u bulk\u loader.bulk\u insert.csverror:/home/ec2 user/test。csv:2 expected 4列,遇到5('1,3,4,“5,6”')
graphname对于每次新上传都应该是唯一的。在这种情况下,如果我想向同一个图中添加更多的节点,或者如果我想从其他文件中建立关系,如何实现这一点。
1条答案
按热度按时间h9vpoimq1#
正如您在redisgraph批量加载程序存储库上打开的问题中所回答的:
如果列值包含引号和逗号,则不起作用。
这可以通过使用
--quote
参数更改输入引用行为。然而,下一个建议将使这变得不必要。unicodedecodeerror:'utf-8'编解码器无法解码3565位置的字节0xe8:无效的延续字节\u csv。错误:行包含空字节
这些也可能是类型推理逻辑的问题。您可能希望尝试使用引入强制模式的更新分支(即将合并);这也会解决你的第一个问题。
git checkout improve-loader-logic
并按照更新的分支文档中的描述更新标题行。如果这不能解决您的问题,您可能需要深入研究编码问题。
graphname对于每次新上传都应该是唯一的。在这种情况下,如果我想向同一个图中添加更多的节点,或者如果我想从其他文件中建立关系,如何实现这一点。
批量加载器是一个一次性工具,当前对现有图的所有更新都必须使用cypher查询。