【问题标题】:How to import CSV file into Cloud Bigtable via Cloud Dataflow with Python?如何使用 Python 通过 Cloud Dataflow 将 CSV 文件导入 Cloud Bigtable?
【发布时间】:2019-07-31 02:54:20
【问题描述】:

描述我正在做的最简单的方法基本上是遵循本教程:Import a CSV file into a Cloud Bigtable table,但在他们开始数据流作业的部分中,他们使用 Java:

mvn package exec:exec \
    -DCsvImport \
    -Dbigtable.projectID=YOUR_PROJECT_ID \
    -Dbigtable.instanceID=YOUR_INSTANCE_ID \
    -Dbigtable.table="YOUR_TABLE_ID" \
    -DinputFile="YOUR_FILE" \
    -Dheaders="YOUR_HEADERS"

有没有办法在 python 中执行此特定步骤?我能找到的最接近的是 apache_beam.examples.wordcount 示例 here,但最终我希望看到一些代码,我可以在其中使用 Python 将一些自定义添加到 Dataflow 作业中。

【问题讨论】:

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


    【解决方案1】:

    a connector for writing to Cloud Bigtable,您可以将其用作导入 CSV 文件的起点。

    【讨论】:

      【解决方案2】:

      Google Dataflow 没有用于 BigTable 的 Python 连接器。

      这里是用于 Java 和 Python 的 Apache Beam 连接器的链接:

      Built-in I/O Transforms

      【讨论】:

        【解决方案3】:

        我建议做这样的事情。

        DataFrame.to_gbq(destination_table, project_id, chunksize=10000, verbose=True, reauth=False, if_exists='fail', private_key=None)
        

        您可以在下面的链接中找到所有参数以及每个参数的说明。

        https://pandas.pydata.org/pandas-docs/version/0.21/generated/pandas.DataFrame.to_gbq.html#pandas.DataFrame.to_gbq

        【讨论】:

        • 这决不能回答这个问题。 Dataflow 不使用 pandas DataFrames,BigQuery 是与 Bigtable 截然不同的存储解决方案。
        猜你喜欢
        • 1970-01-01
        • 2015-07-02
        • 1970-01-01
        • 1970-01-01
        • 2018-01-01
        • 2022-12-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多