写点什么

Snowflake Optima:您的查询功能迎来重磅升级 | 技术趋势

  • 2025-11-13
    北京
  • 本文字数:1328 字

    阅读完需:约 4 分钟

大小:652.16K时长:03:42
Snowflake Optima:您的查询功能迎来重磅升级 | 技术趋势

还在为手动调整查询、费心分析查询配置文件而烦恼吗?Snowflake 全新 Optima 功能已正式推出,它能为你的工作负载带来显著提升,而最棒的一点是,你无需进行任何操作。


可以将 Optima 理解为你在 Snowflake 工作负载中的智能助手。它不需要你花时间分析性能,而是会持续观察你的查询模式,并自动应用最佳优化策略。这意味着——查询更快、成本更低,而你无需动一根手指。

性能提升的秘密武器:Optima Indexing


那它到底是怎么做到的?核心就在于 Optima Indexing 技术。


Optima 会持续分析你的工作负载。当它发现某类重复出现、且可以加速的 point-lookup query(点查查询)时——比如查找某条特定记录的查询,如:SELECT * FROM users WHERE user_id = 12345,它会主动创建一个隐藏索引来加速该查询。


这些索引会在“尽力而为”的基础上自动构建与维护。它们实际上运行在 Snowflake 的 Search Optimization Service 之上,但有一个关键区别:你不需要管理它们。Optima 免去了你思考应该对哪些列建立索引、何时创建索引的麻烦,使性能调优真正变得毫不费力。

无需额外费用,获得全部性能


Optima 最吸引人的特点之一是:用于构建和维护这些索引所消耗的计算与存储 没有额外费用。这正回归了 Snowflake 创立时的愿景:让用户在无需调优的情况下即可获得轻松、高效的性能体验。


然而,有一点需要特别注意:Optima 目前仅适用于 Snowflake 最新、最先进的计算仓库,也就是 Gen2 warehouses 。该功能在 Gen1 或 Snowpark-optimized warehouses 中均不可用。若你想了解有关 Optima 工作机制的更多技术细节,可以参考官方文档

真实案例:查询速度提升 15 倍


一家汽车行业客户在启用 Snowflake Optima 后,查询性能直接飞升。原本需要 17 秒多才能跑完的查询,现在只要 1 秒多一点——实现了 15 倍 的加速。其核心原因在于 Optima 自动为这些常用查询建立了隐藏索引,让微分区裁剪( micro-partition pruning )的命中率从 30% 飙升到 96%,大幅减少了扫描数据量。这一成功案例已经发布在官方博客,有兴趣可以进一步查看。

如何确认 Optima 是否在发挥作用


当你查看 Query Profile 选项卡时,打开 Statistics 面板。你会看到一行名为 Partitions pruned by Snowflake Optima 的数据。它会告诉你,有多少数据分区因为 Optima 在执行查询时被自动跳过,由此你能很直观地看到 Optima 对性能提升的贡献。



以文中案例为例,Optima Indexing 帮忙额外裁剪掉了 10,389 个微分区中的 8,343 个,裁剪效率提升了约 80%。再结合系统原本的元数据优化,最终整体裁剪率达到了 96%,因此查询只用大约 636 毫秒 就执行完毕。


Optima 的优势并不止于此。通过让经常运行的查询变得更高效,它能够释放计算仓库资源,从而减少其他工作负载之间的资源竞争。这意味着即使是那些没有被 Optima 直接优化的查询,也可以运行得更快,最终使整个仓库中任务运行的平均时间得到整体改善。


有了 Snowflake Optima ,你可以不再为手动调优而烦恼,把精力放回真正有价值的业务上。这才是真正实现轻松性能优化的智能方式。


原文地址:https://medium.com/@ratheeshnellikkal/snowflake-optima-your-queries-just-got-a-major-upgrade-052dd66d75ef



点击链接立即报名注册:Ascent - Snowflake Platform Training - China

2025-11-13 09:327424

评论

发布
暂无评论

JavaScript——数据类型

胖虎不秃头

前端 js 10月月更

docker-maven-plugin:自动构建Docker镜像,并推送到Docker Registry或阿里云

琦彦

Docker maven 10月月更 docker-maven-plugin

JavaScript——JS事件

胖虎不秃头

前端 js 10月月更

JVM——垃圾回收算法

琦彦

Java JVM 垃圾回收 10月月更

前端培训学习比较实用的方法

小谷哥

利用Vue自定义指令让你的开发变得更优雅

茶无味的一天

Vue 前端 vue指令

构建Java镜像的10个最佳实践

琦彦

Java应用 Docker 镜像 10月月更

如何以非root用户运行Docker容器

琦彦

Docker 10月月更 root用户

Python应用之寻求两个数对之间的最大乘积

芯动大师

Python语法 10月月更 split函数

开发者有话说|以码为梦,心向远方,路在脚下

乌龟哥哥

个人成长 10月月更

《Rust for Rustaceans》读书笔记2

袁世超

rust

自学java培训之间学习方法有哪些

小谷哥

二分查找

掘金安东尼

算法 10月月更

ESP32-C3 学习测试 蓝牙 篇(七、GATT 数据通信 — 发送自定义数据)

矜辰所致

蓝牙 ESP32-C3 10月月更

大数据培训学习如何选择?

小谷哥

浅谈前端工程化的发展以及相关工具介绍

茶无味的一天

Timestone: Netflix的高吞吐、低延迟优先级队列系统

俞凡

架构

基于BuildKit优化Dockerfile的构建

琦彦

Dockerfile 10月月更

陈宗绵|关于研发效能的理想与现实

laofo

DevOps cicd 研发效能 持续集成 持续交付

用纯CSS实现优惠券剪卡风格

茶无味的一天

CSS 前端

Docker可视化工具Portainer的安装和使用

琦彦

Docker Portainer 10月月更 可视化管理工具

JavaScript——关于JavaScript、在HTML中嵌入JS代码的三种方式、变量

胖虎不秃头

前端 js 10月月更

2022 Kubernetes 批处理和HPC发展一览

琦彦

HPC 批处理 KubeCON 10月月更

vue快速入门---高速版

楠羽

笔记 VUE 3.0 源码 10月月更

Qt|控件的事件过滤使用与总结

中国好公民st

c++ qt 10月月更

Python应用之丑数的判断

芯动大师

Python 10月月更 丑数

【C语言难点突破】指针和数组名的爱恨情仇

Geek_65222d

10月月更

如何零基础学习大数据培训

小谷哥

国庆perfetto学习

留白的艺术

Docker层和虚悬镜像(dangling image)介绍

琦彦

Docker 10月月更

Python应用之拉力赛求最短时间

芯动大师

10月月更 Python语法应用 函数构建

Snowflake Optima:您的查询功能迎来重磅升级 | 技术趋势_Snowflake_Ratheesh Nellikal_InfoQ精选文章