将数据从 BigQuery and/or Cloud Storage GCS 读取到 Dataproc
read data from BigQuery and/or Cloud Storage GCS into Dataproc
我正在将数据从 BigQuery 读取到 dataproc spark 集群中。如果在我的例子中 BigQuery table 中的数据最初是从 GCS 加载的,那么最好将数据从 GCS 直接读取到 spark 集群中,因为 dataproc (newAPIHadoopRDD) 的 BigQuery 连接器将数据下载到 Google Cloud先储物桶?这两种方法有什么优缺点吗?
使用 BigQuery 连接器最适合您希望尽可能抽象出 GCS export/import 并且不想在 GCS 内部显式管理数据集的情况。
如果您已经在 GCS 中拥有数据集,最好直接使用 GCS 数据集以避免额外的导出步骤,并且能够直接使用更简单的文件系统接口。缺点是维护数据集的两份副本(一份在 GCS 中,一份在 BQ 中)并保持同步的成本更高。但是,如果大小不是限制性的并且数据更新不是太频繁,您可能会发现保留 GCS 数据集以便直接访问是最简单的。
我正在将数据从 BigQuery 读取到 dataproc spark 集群中。如果在我的例子中 BigQuery table 中的数据最初是从 GCS 加载的,那么最好将数据从 GCS 直接读取到 spark 集群中,因为 dataproc (newAPIHadoopRDD) 的 BigQuery 连接器将数据下载到 Google Cloud先储物桶?这两种方法有什么优缺点吗?
使用 BigQuery 连接器最适合您希望尽可能抽象出 GCS export/import 并且不想在 GCS 内部显式管理数据集的情况。
如果您已经在 GCS 中拥有数据集,最好直接使用 GCS 数据集以避免额外的导出步骤,并且能够直接使用更简单的文件系统接口。缺点是维护数据集的两份副本(一份在 GCS 中,一份在 BQ 中)并保持同步的成本更高。但是,如果大小不是限制性的并且数据更新不是太频繁,您可能会发现保留 GCS 数据集以便直接访问是最简单的。