代码之家  ›  专栏  ›  技术社区  ›  Andres Urrego Angel

GCP Dataproc火花消耗BigQuery

  •  1
  • Andres Urrego Angel  · 技术社区  · 6 年前

    主要目标是从BigQuery收集一些扩展表并应用一些转换。由于我计划使用Dataproc部署Pyspark脚本的表的大小,理想情况下,我可以使用sqlContext对DFs(从BQ提取的表)应用一些sql查询。最后,我可以轻松地将这些信息转储到数据存储桶中的文件中。

    问题:

    • 我能用吗 import google.datalab.bigquery as bq 在我的Pypark脚本中?

    • 我希望使用pandas和bq来读取查询结果,如下所示 example . 以后,我可能会用 sc.parallelize 从Spark转换成Spark-df。这种方法对吗?

    my script

    在与@Tanvee进行了反复讨论之后,我们得出结论,当您需要将数据存储中的数据读取到Dataproc中时,GCP需要一个中间分配步骤。简单地说,您的spark或hadoop脚本可能需要一个临时存储桶来存储表中的数据,然后将其放入spark。

    参考文献:

    Big Query Connector \ Deployment

    非常感谢

    1 回复  |  直到 6 年前
        1
  •  2
  •   Tanveer Uddin    6 年前

    BigQuery connector 为了火花。GCP文档中有一些示例 here here . 它将创建RDD,您可以将其转换为dataframe,然后您将能够执行所有典型的转换。希望有帮助。

        2
  •  0
  •   Sarang Shinde    5 年前

    您可以直接使用以下选项从spark连接bigquery表。

    1. https://github.com/samelamin/spark-bigquery 使用spark直接在dataproc上运行查询。

    2. https://github.com/GoogleCloudPlatform/spark-bigquery-connector 这是测试版的新连接器。这是bigquery的spark数据源api,很容易使用。

    Dataproc + BigQuery examples - any available?