TigerGraph数据导入:是否每种关系类型都需要单独的CSV文件?
TigerGraph边类型导入文件方案解答
首先明确:TigerGraph没有强制要求每种边类型必须对应单独的CSV文件,混合存储多类边的单文件也可以正常导入,是否拆分可以结合你的使用场景选择。
混合单文件导入的要求
如果把10种边类型存在同一个CSV中,只需要满足两个条件即可正常导入:
- CSV中设置专门的字段(比如
edge_type)标识每条记录对应的边类型 - 在导入配置(GraphStudio可视化向导或
gsql加载任务代码)中,为每种边类型配置对应的过滤规则和字段映射
比如你可以给每种边的加载规则加上过滤条件WHERE edge_type = "friendship",就能从混合文件中筛选对应数据导入到指定边类型。
拆分独立CSV的优势(绝大多数场景为更优方案)
生产环境和数据量较大的情况下,拆分10个独立CSV是更推荐的做法,核心优势如下:
- 导入性能更高:不需要在导入阶段执行逐行过滤判断,TigerGraph可直接全量读取文件映射到对应边类型,百万级以上数据量下性能差距十分显著
- 运维成本更低:单类边的数据修正、结构调整、增量导入都可以独立操作,排查数据问题时也不需要过滤其他类型的冗余数据
- 容错性更强:某类边的文件格式错误只会影响对应类型的导入任务,不会导致全部边类型的导入都失败,也能避免过滤规则配置错误引发的边类型映射错位问题
混合单文件的适用场景
只有在测试环境快速验证模型、所有边类型结构完全一致且单类数据量极小的场景下,使用混合单文件才更省事,可以减少文件管理的工作量。
内容的提问来源于stack exchange,提问作者Raphael10
相关产品推荐
相关产品推荐

