Exchange中的vertex参数是必填的吗?

对于数据源中无VertexID的场景,我尝试再application.conf中将vertex参数省略,但是报错:No configuration setting found for key ‘vertex’

请问Exchange必须要求数据源中包含代表VertexID的字段是吗?

vertexid是必须的,这是nebula的要求

好的,这个了解。

我这边尝试设置了vertex,但好像值不合法,大致场景是这样:

源数据

hive生成的parquet格式,包含两个字段:id和name,例如:

1 jack
2 tom

构建tag

create tag ppp(name string);

application.conf相关tag配置

{
      fields: [parquet-field-1]
      nebula.fields: [name]
      vertex: parquet-field-0
}

报错内容是: Field “parquet-field-0” does not exist

因为现在还没有parquet导入的文档作为参考,需要麻烦帮忙看看怎么调整配置?

Field “parquet-field-0” does not exist。 查看parquet文件中是否存在该列

ps:为啥不直接从hive导入到NebulaGraph,exchange是支持Hive导数据到NebulaGraph的。

1 个赞

参考 Nebula Graph:Exchange 工具 Hive 数据导入的踩坑之旅

2 个赞

因为这边数据源不是我们侧控制的,对方给到的是parquet文件,我们这边没有访问hive的权限。所以目前的导入测试是基于这种场景测试的。

然后field not exist的问题找到原因了,之前看示例配置以为parquet-field-0能直接拿到parquet的第0列,这边改成parquet中实际的列名就可以了。

感谢。

好的,示例配置只是给了一个列名的示例,还是要根据实际列名来配哈

1 个赞