最近,谷歌宣布了 Bigtable 联合查询的全面可用性,BigQuery 允许客户通过 BigQuery 更快地查询驻留在 Bigtable 中的数据。此外,据该公司称,查询无需移动或复制所有 Google Cloud 区域中的数据,并增加了联合查询并发限制,从而缩小了运营数据和分析之间长期存在的差距。
BigQuery是 Google Cloud 的无服务器、多云数据仓库,它通过将来自不同来源的数据整合在一起来简化分析——而Cloud Bigtable是 Google Cloud 的完全托管的 NoSQL 数据库,用于处理时间敏感的事务和分析工作负载。后者适用于实时欺诈检测、推荐、个性化和时间序列等多种用例。
以前,客户必须使用Dataflow等 ETL 工具或自研 Python 工具将数据从 Bigtable 复制到 BigQuery;但是,现在,他们可以直接使用 BigQuery SQL 查询数据。联合查询 BigQuery 可以访问存储在 Bigtable 中的数据。
要查询 Bigtable 数据,用户可以通过提供 Cloud Bigtable URI(可通过 Cloud Bigtable 控制台获取)为 Cloud Bigtable 数据源创建外部表。URI 包含以下内容:
- project_id是包含 Cloud Bigtable 实例的项目
- instance_id是 Cloud Bigtable 实例 ID
- (可选)app_profile是要使用的应用配置文件 ID
- table_name是要查询的表名

资料来源:https ://cloud.google.com/blog/products/data-analytics/bigtable-bigquery-federation-brings-hot--cold-data-closer
创建外部表后,用户可以像查询 BigQuery 中的任何其他表一样查询 Bigtable。此外,除了用于训练机器学习模型的 AutoML 表和 BigQuery 的 Spark 连接器外,用户还可以利用 BigQuery 的功能,例如用于流行商业智能的 JDBC/ODBC 驱动程序和连接器以及 Data Studio、Looker 和 Tableau 等数据可视化工具将数据加载到他们的模型开发环境中。
大数据爱好者 Christian Laurer 在一篇中篇文章中解释了 Bigtable 联合查询的新方法的好处:
使用新方法,您可以克服传统 ETL 方法的一些缺点。如:
• 更高的数据新鲜度(为您的业务提供最新见解,无需数小时甚至数天前的数据)
• 无需为存储相同数据支付两次费用(客户通常在 Bigtable 中存储 TB 甚至更多)
• 更少的监控和维护ETL 管道
最后,文档页面上提供了有关 Bigtable 与 BigQuery 的联合查询的更多详细信息。此外,在所有受支持的 Cloud Bigtable区域中都可以查询 Cloud Bigtable 中的数据。
关于作者
Steef-Jan Wiggers
文章来源:https://www.infoq.com/news/2022/08/bigtable-bigquery-zero-etl/





