Google BigQuery Omni 扩展多云能力,支持直接查询 Azure 和 AWS 数据
Google Cloud 升级 BigQuery Omni 服务,扩展了直接在 Azure Blob Storage 和 AWS S3 上运行查询的能力。企业无需将数据迁移到 Google Cloud,即可在数据所在位置执行分析查询,这标志着跨云数据分析进入了一个新阶段。
核心能力与架构
BigQuery Omni 的核心设计理念是「计算靠近数据」——使用与 Google Cloud 相同的 BigQuery API 和 SQL 引擎,但计算节点运行在 Azure 和 AWS 的基础设施上。
架构原理
用户查询请求
↓
Google Cloud 控制台 / API
↓
BigQuery Omni 控制平面(Google Cloud 管理)
↓
计算节点在目标云平台运行
├── Azure → 在 Azure 内部执行查询,读取 Azure Blob Storage
└── AWS → 在 AWS 内部执行查询,读取 AWS S3
↓
查询结果返回给用户(数据不离开源平台)
关键特性:
- 数据不迁移:数据始终保留在源云平台,满足数据驻留和合规要求
- 统一 SQL 接口:使用标准 BigQuery SQL 语法,无需学习不同平台的查询语言
- 统一权限管理:通过 Google Cloud IAM 管理跨云数据访问权限
- 加密传输:所有跨云通信使用 TLS 加密
- 审计日志:查询操作记录在 Cloud Audit Logs 中
支持的存储格式
| 云平台 | 存储服务 | 支持格式 |
|---|---|---|
| AWS | S3 | Parquet, Avro, ORC, CSV, JSON, Iceberg |
| Azure | Blob Storage, ADLS Gen2 | Parquet, Avro, ORC, CSV, JSON, Delta Lake |
适用场景分析
最佳场景
场景一:跨云数据分析
企业同时在多个云上运行应用时,希望获得统一的分析视图。例如:SAP 运行在 Azure 上,电商平台运行在 AWS 上,数据分析团队需要整合两个平台的数据进行业务洞察。
场景二:数据迁移评估
在正式将数据迁移到 Google Cloud 之前,先通过 Omni 查询现有数据,评估数据质量、容量和结构,制定更精准的迁移计划。
场景三:多云合规需求
金融、医疗等受监管行业的数据不得离开特定区域或平台。BigQuery Omni 让数据不离开源平台即可完成分析,满足数据驻留合规要求。
场景四:临时的跨组织数据查询
合作伙伴的数据在 AWS 上,你的数据在 GCP 上。通过 Omni 建立短期查询通道,无需设置复杂的数据共享管道。
不适用场景
| 场景 | 不推荐的原因 |
|---|---|
| 数据全部在 GCP | 使用标准 BigQuery 更高效、更便宜 |
| 低频简单查询 | 设置 Omni 连接的开销大于收益 |
| 实时分析 | Omni 查询延迟较高,不适合毫秒级实时查询 |
| 大规模 ETL | 与其每次远程查询,不如将数据一次性迁移到 GCP |
性能与成本
性能特点
BigQuery Omni 的查询性能比标准 BigQuery 慢 2-5 倍,这是远程查询的固有折衷:
- 数据本地性:远程计算节点读取远程存储,网络延迟比本地查询高
- 资源竞争:计算节点运行在其他云平台,资源调度不如 GCP 内部灵活
- 缓存策略:远程数据源的缓存机制不如标准 BigQuery 成熟
性能优化建议:
- 尽量只查询必要的列(避免 SELECT *)
- 使用分区和聚类减少扫描数据量
- 对于重复查询,考虑将中间结果物化到 GCP
- 定期运行的报告考虑调度在低峰时段执行
定价模型
BigQuery Omni 的定价基于以下因素:
- 分析容量:按查询使用的 slot 数量计费
- 扫描数据量:与标准 BigQuery 类似,按扫描的数据量计费
- 跨云出口流量:虽然数据不迁移,但元数据和查询结果的传输会产生少量流量
注意:相比标准 BigQuery,Omni 的单价通常高 20-40%,因此在选择前应评估性价比。
与竞品对比
| 产品 | 厂商 | 查询目标 | 核心优势 | 局限 |
|---|---|---|---|---|
| BigQuery Omni | Google Cloud | AWS S3, Azure Blob | 统一 BigQuery 体验 | 仅查询,不支持写入 |
| AWS Athena Federated Query | AWS | GCP, Azure, 更多数据源 | 亚马逊生态深度集成 | 配置复杂 |
| Azure Synapse Serverless | Microsoft | Azure Blob, ADLS | Azure 原生集成 | 跨云能力有限 |
| Starburst (Trino) | 独立 | 任意数据源 | 最灵活的多云查询 | 需要自建基础设施 |
实际部署案例
案例:某跨国零售企业的跨云分析
该企业在 AWS 上运行电商平台(订单数据存储在 S3),在 GCP 上运行数据分析平台。
传统方案:每日将 AWS S3 中的订单数据导出 → 压缩 → 通过跨云网络传输到 GCP → 加载到 BigQuery。每周数据传输量约 500GB,传输时间 2-3 小时。
Omni 方案:直接通过 BigQuery Omni 查询 S3 数据。省略了导出、传输、加载三步,数据从产生到可分析的时间从 T+1 缩短到实时。
效果:
- 数据分析时效性从次日提升到实时
- 跨云数据传输费用减少 70%
- 运维复杂度显著降低(无需维护数据管道)
16IDC 观察
多云已经成为大型企业的标配架构。据 Gartner 调查,超过 80% 的大型企业已采用多云策略,但跨云数据分析一直是未解决的核心痛点。
BigQuery Omni 的策略不是让数据迁移,而是让计算靠近数据——这是一个更务实的方向。但需要注意的是,Omni 不是替代标准 BigQuery 的产品,而是应对多云数据孤岛问题的特定方案。
对于有计划采用 BigQuery Omni 的团队,建议:
- 先从非关键业务数据开始试用
- 评估查询性能是否满足业务要求
- 比较 Omni 与数据迁移方案的总成本
- 考虑混合方案——频繁查询的数据迁移到 GCP,偶发查询通过 Omni 访问
原始来源:Google Cloud Blog