【问题标题】:Migrate Graphs in Janusgraph Between Instances在实例之间迁移 Janusgraph 中的图
【发布时间】:2020-06-24 13:41:44
【问题描述】:

我的团队正在考虑使用 2 种不同的方法在实例之间迁移 Janusgraph 数据(我们在 Google Cloud BigTable 之上使用 Janusgraph):

  1. 将图形导出为graphml 文件,然后将其导入到另一个实例中
  2. 导出底层BigTable表,并将其导入到另一个实例底层的表中

但是,对于每种方法,我们都面临问题:

  1. 我们的图表非常庞大,在导出过程中,我们一直面临java.io.IOException: Connection reset by peer 问题,即使在将 gremlin 服务器超时设置为超过 20 分钟后也是如此
  2. 我们尝试通过Cloud Dataflow 以3 种不同的格式导出BigTable 表(如here 建议的那样),但都面临不同的问题:
    • Avro 格式:导出avro 文件后,将它们重新导入新表时,我们会遇到以下错误:Error message from worker: java.io.IOException: At least 8 errors occurred writing to Bigtable. First 8 errors: Error mutating row ( ;�! with mutations [set cell ....] .... Caused by: java.lang.NullPointerException - 因为Janusgraph 将二进制数据存储到BigTable,所以数据流作业可能是无法正确导出avro 文件
    • SequenceFile 格式:重新导入这些文件时,我们会遇到以下错误:Error message from worker: org.apache.hadoop.hbase.client.RetriesExhaustedWithDetailsException: Failed 310 actions: StatusRuntimeException: 310 times, servers with issues: batch-bigtable.googleapis.com
    • Parquet 格式:这被证明是最有希望的,并且导入工作大部分已完成(除了在缩小dataflow 工人Root cause: The worker lost contact with the service. 期间看到的错误)。重新导入到目标表时,数据通常是完整的。但是,导入后索引似乎“古怪”(例如,在索引属性上使用 has() 过滤器查询特定节点时,查询很快完成,但不返回任何结果)

感谢您对上述问题的任何意见/投入,谢谢!

【问题讨论】:

  • 为了解决任何架构错误,您是否尝试过创建一个新实例,从您的生产表中写入一些元素并尝试导入它们?
  • 另外,如果你能够成功导入“测试环境”,你可以编写一个脚本来执行你的数据并以多块而不是大块的形式导入
  • @Emmanuel 我意识到在数据流作业中,由于处理的文件的突变太多,出现了突变错误:Could not complete RPC. Failure #0, got: Status{code=INVALID_ARGUMENT, description=Too many mutations: 119306 provided; limit 100000, cause=null} on channel 1. Trailers: Metadata(bigtable-channel-id=1)。有没有办法增加这个 100k 突变限制?我已经尝试增加分片的数量以减小文件大小(如果相关的话),但仍然有问题。

标签: janusgraph google-cloud-bigtable


【解决方案1】:

所以这里的问题似乎是Dataflow 导致每行超过 100k 突变的突变请求失败(由于 BigTable 的限制)。但是,较新版本的ParquetToBigTable template provided by Google 似乎有一个名为“splitLargeRows”的新参数,它有助于拆分大行,从而使突变数量保持在

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-10-07
    • 1970-01-01
    • 1970-01-01
    • 2021-05-21
    • 1970-01-01
    • 1970-01-01
    • 2018-04-02
    • 1970-01-01
    相关资源
    最近更新 更多