【问题标题】:bigtable bulk update based on dynamic filter基于动态过滤器的bigtable批量更新
【发布时间】:2017-06-08 22:17:13
【问题描述】:

我正在寻找一种方法来扫描巨大的 Google BigTable,并根据事件动态组合过滤器,并对大量行进行批量更新/删除。

目前,我正在尝试将 BigTable 与基于 java 的 Dataflow 结合起来(以获得密集的无服务器计算能力)。我达到了可以根据事件使用动态过滤器组合“扫描”对象的地步,但我仍然找不到将结果从 CloudBigtableIO.read() 流式传输到后续数据流管道的方法。

感谢任何建议。

【问题讨论】:

    标签: google-cloud-dataflow google-cloud-bigtable


    【解决方案1】:

    AbstractCloudBigtableTableDoFn 扩展您的 DoFn。这将使您可以访问 getConnection() 方法。你会做这样的事情:

    try(Connection c = getConnection();
        Table t = c.getTable(YOUR_TABLE_NAME);
        ResultScanner resultScanner = t.getScanner(YOUR_SCAN)) {
      for(Result r : resultScanner) {
         Mutation m = ... // construct a Put or Delete
         context.output(m)
      }
    }
    

    我假设您的管道以CloudBigtableIO.read() 开头,接下来是AbstractCloudBigtableTableDoFn,然后是CloudBigtableIO.write()

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-01-02
      • 1970-01-01
      • 2018-03-03
      • 2017-05-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多