近日,Google Cloud 正式宣布其云数据仓库 BigQuery 推出了一项重大功能更新——支持在远程函数(Remote Functions)中实现并发查询(Concurrent Queries)。这一特性不仅突破了传统数据仓库中函数执行的单线程瓶颈,更将数据分析的实时性和可扩展性提升至全新高度,为大数据从业者和企业级用户带来了切实的生产力跃升。
远程函数:从“本地”到“云端”的范式升级
远程函数是 BigQuery 提供的一种扩展机制,允许用户将自定义逻辑部署在 Cloud Functions、Cloud Run 等外部服务中,并通过 SQL 语句直接调用。与传统内建函数不同,远程函数能够利用外部计算的弹性,处理更复杂的业务逻辑,如调用第三方 API、执行机器学习推理、集成专有算法等。
此前,远程函数默认以单实例模式执行,即每次查询仅触发一个远程端点。当需要处理海量数据或高并发请求时,单实例极易成为性能瓶颈,导致查询响应时间显著增加。尤其是在实时报表、用户画像分析、IoT 数据流处理等场景下,数据量与查询并发度的持续增长,使得优化远程函数的执行模式成为迫切需求。
并发查询:解锁多实例并行执行
最新的更新允许用户为远程函数显式指定“并发查询”模式。这意味着在一条 SQL 查询中,BigQuery 可以将数据分片后,同时向多个远程函数实例发送请求,每个实例独立处理一部分数据,最后聚合结果。从开发者视角看,这等效于让远程函数拥有了“横向扩缩容”的能力。
具体实现上,用户只需在创建远程函数时通过 max_batching_rows 或 max_parallelism 等参数控制并发度。BigQuery 的调度引擎会自动根据数据量和集群负载,生成最优的并行请求策略。最大并发数理论上受限于项目的 Cloud Functions 或 Cloud Run 配额,但足以覆盖绝大多数生产需求。
性能飞跃:实测数据与场景验证
Google 内部测试表明,在百万行级数据集上运行包含复杂逻辑的远程函数(例如调用图像识别 API 并返回标签),启用并发查询后,总执行时间从数分钟压缩至数十秒,加速比接近线性。对于常驻型工作负载,用户可将远程函数的并发数设置为 8 到 64,显著提升数据管道吞吐量。
这一能力尤其适合以下场景: - 实时数据清洗与增强:将原始数据中的 URL 通过并发请求调用外部验证服务,一次性处理数百个链接。 - 批量推理:在电商推荐中,对百万级用户行为数据调用远程模型进行评分,并发计算大幅缩短离线更新周期。 - 混合云集成:BigQuery 的用户中,大量企业已依赖远程函数连接本地私有服务(如加密机、认证库),并发模式让这些交互不再受限于单点延迟。
编排与成本:无需牺牲可控性
尽管并发度提升,Google Cloud 依然保留了精细化的控制能力。用户可根据远程函数的资源消耗(如 CPU、内存)和外部 API 的速率限制,设置合理的并发上限。此外,BigQuery 的计费仍按扫描的数据量与远程函数调用次数(包含并发调用的计费)结算,透明且可预测。
安全方面,所有并发请求均通过 VPC 网络或云间 VPN 传输,数据在传输中加密,远程服务可通过 IAM 进行细粒度访问控制。
行业影响与展望
在数据湖仓一体、存算分离的大背景下,BigQuery 的此次更新标志着云原生数据仓库正在从“纯存储计算平台”向“可编程数据中枢”演进。远程函数+并发查询的组合,本质上打破了 SQL 与外部服务的硬边界,让数据流能像微服务一样灵活编排。
对于开发者而言,无需再因为性能顾虑而将复杂逻辑写成繁琐的 UDF(用户定义函数)或预计算 ETL;对于数据工程师,这意味着可以更自由地利用云上丰富的 Serverless 资源。随着生成式 AI 与大模型推理的普及,BigQuery 的并发远程函数极有可能成为企业数据与 AI 模型之间的快速连接器。
Google Cloud 官方表示,该功能已在所有 BigQuery 区域开放,用户只需更新相关权限设置即可启用。目前不支持自定义并发策略的预览阶段,未来有望引入基于负载的自动扩缩容机制。
数据是新时代的石油,而 BigQuery 正在为这口油井装上更高效的泵。当每个函数调用都能被并发加速,云端数据分析的想象空间才刚刚打开。