如何从不同地区的另一个项目中读取 table 的数据?

How to read data from table from another project from different region?

我们有来自位于美国区域的项目 1 的 FACT1 table & FACT2 table 来自位于亚洲地区的项目 2。

我们想在 2 table 秒之间做一个 union/join 并坚持到 Project2 中的 table。 但是 GCP 不允许在 2 个不同的区域查询 tables。

  1. 推荐的理想方法是什么?
  2. 如果我们想从 FACT1(美国)读取数据并在项目 2 (FACT1_COPY) 中作为持久性 table 复制,我们如何在 GCP 中设置同步服务?
  3. 同步过程将如何工作 - 是只同步新记录还是始终将整个 table 作为截断负载传输?有任何成本影响吗? 注意:我们不知道其他项目的实现细节,只想按原样读取数据。 事实 table 有大约 30 GB 的数据。

请就正确的架构提出建议。

谢谢, 基兰

您可以使用 BigQUery 数据传输和 select 数据集副本。

https://cloud.google.com/bigquery-transfer/docs/locations

您可以选择是否覆盖您的数据,并设置自定义时间表 运行 它以您想要的频率。

该功能是免费的,但您需要支付从亚洲到我们的区域间流量以传输您的数据。并且因为您复制了数据,您还将支付美国位置的亚洲数据存储费用。