Databricks

IP Functions are Generally Available, bringing high-performance network analytics to the Lakehouse

6.9内容质量

TL;DR · AI 摘要

IP Functions are Generally Available for Lakehouse Databricks Blog Skip to main content Lakehouse October 1, 2026 IP Fun...

核心要点

  • 主题聚焦:IP Functions are Generally Available, bringing h
  • 来源:Databricks,建议结合原文判断细节。
  • AI 分析暂不可用,本条为保底评分与摘要。
#AI#编程#后端#云计算#安全
打开原文

Lakehouse 的 IP 函数现已正式发布 | Databricks 博客

跳至主要内容

Lakehouse

2026 年 10 月 1 日

IP 函数正式发布,为 Lakehouse 带来高性能网络分析能力

作者:Michael Andersen 和 Benjamin Mathew

摘要

  • Databricks 现在提供了一组原生内置的 IP 函数,用于解析、验证、规范化以及连接 IPv4 和 IPv6 地址及 CIDR 块,无需使用 UDF、正则表达式或脆弱的位运算。
  • 一流的 SQL、PySpark 和 Scala 函数通过 Photon 进行优化,使高要求的网络工作负载的运行时间从分钟级缩短到秒级。在直接对比的基准测试中,Databricks 完成 IP CIDR 连接的速度比另一家领先的云数据仓库快 3.1 倍,成本低 6.4 倍。
  • 今天已在 Databricks Runtime 18.3+ 中正式发布。

IP 数据即仓库数据

每台防火墙、负载均衡器、VPN、CDN 边缘节点、DNS 解析器、Kubernetes 集群和应用服务器都会生成以 IP 地址为键的记录流。对于大型企业而言,这些流每天共同产生数十亿事件,是组织运行的最有价值分析的基础,包括威胁检测、欺诈调查和网络可观测性。历史上,行业将这些网络可观测性用例视为需要专用技术栈的特殊场景,导致了数据孤岛、治理碎片化和供应商锁定。

这一局面现已改变。今天,IP 函数正式发布。通过此次发布,IP 地址分析成为 Lakehouse 上的一等公民,可作为高性能 SQL 工作负载运行,使安全团队能够在统一的治理模型下,将其高流量的 IP 数据与其余分析数据一同解析、丰富和分析。

为什么网络分析过去如此困难

过去,IP 地址在 SQL 中处理起来具有欺骗性地困难。IPv4 地址看起来像字符串,但行为像 32 位整数;IPv6 则是 128 位。一个 CIDR 块如 10.0.0.0/8 并不是一个值,而是 1600 万个地址的范围。询问“这个 IP 是否在该子网内?”实际上是一个隐藏在文本背后的范围包含问题。

在没有原生支持的情况下,团队被迫采用几种脆弱的模式——每种模式都会牺牲正确性、性能或可维护性:

常见变通方法

付出的代价

使用正则表达式从字符串中提取八位组

处理畸形或 IPv6 输入时缓慢、脆弱且静默错误

手动位运算将地址转换为整数

只有作者能理解的不可读 SQL;在 IPv4/IPv6 边界处失效

自定义 UDF 实现 CIDR 包含

破坏向量化和查询优化器感知;规划器无法下推或广播的黑盒

在外部流水线中预展开 CIDR 为范围

需要维护的独立流水线

完全放弃 IPv6

现代流量的整个类别在分析中被静默排除

结果是两败俱伤。仅使用 SQL 的分析师因需要过程代码而无法进行基本的 IP 过滤。数据工程师则耗费大量资源维护 UDF 库和 CIDR 扩展作业。最重要的是,关键工作负载(如将数十亿事件与威胁情报和地理 IP 表进行关联分析)在业务需要分钟级响应时却需要运行超过一小时。在 PB 级规模下,这种差距意味着要么能及时发现正在进行的入侵,要么只能在事后分析中读到相关报告。

Databricks 引入了一整套内置的 IP 函数,使网络数据成为湖仓一体架构中的一等公民。这些函数可以统一处理 IPv4 和 IPv6,支持可读性良好的 STRING 格式和紧凑的 BINARY 表示,原生理解 CIDR 表示法,并在引擎内部实现,使优化器和 Photon 能够对其进行加速。

以下示例通过威胁情报丰富原始网络流量日志,然后识别出正在扫描大量目标地址和端口的可疑源网络。过去需要自定义解析逻辑和专用 IP 库才能实现的功能,现在可以直接通过原生的 IP 和 CIDR 操作在 SQL 中表达。

$

/$

无需 UDF。无需正则表达式。无需整数转换。它就像分析师实际提出的问题一样自然。

函数说明

GA 版本发布包含完整的工具集,用于解析、规范化、检查和关联 IP 数据:

包含关系与关联

  • ip_cidr_contains(cidr, needle) - 检测某个 IP 地址或另一个 CIDR 块是否位于指定 CIDR 块内。这是 CIDR 块关联和大流量过滤的核心判断条件,也是整个优化工作重点支持的函数。

解析与规范化

  • ip_host(ip) - 将 IPv4 或 IPv6 地址规范化为标准形式(例如将 2001:0db8:0000::1 压缩为 2001:db8::1)。
  • ip_cidr(cidr) - 生成 CIDR 块的规范表示形式。

CIDR 检查

  • ip_network(cidr) / ip_network_first(cidr) - 返回 CIDR 块的第一个(网络)地址。
  • ip_network_last(cidr) - 返回 CIDR 块的最后一个地址。
  • ip_prefix_length(cidr) - 返回前缀长度(/ 后的数字)。
  • ip_version(ip_or_cidr) - 返回 4 或 6,使混合协议地址可通过分支逻辑处理而无需特殊判断。

性能优化的表示转换

  • ip_as_binary(ip_or_cidr) - 将地址或 CIDR 转换为规范的紧凑二进制形式(IPv4 为 4 字节,IPv6 为 16 字节)。基于 BINARY 进行存储和关联可跳过重复解析并减少存储空间。
  • ip_as_string(ip_or_cidr) - 将二进制表示转换回可读文本,用于报告输出。

处理脏数据的安全变体

  • try_ip_host(ip) , try_ip_cidr(cidr) , try_ip_as_binary(ip_or_cidr) , try_ip_as_string(ip_or_cidr) - 与对应函数功能相同,但遇到无效输入时返回 NULL 而非报错。在处理原始日志时至关重要,因为部分记录始终存在格式错误,但不会因单条错误记录导致百万级任务失败。

这些原生函数可自然地与 SQL 其他部分组合使用,所有 SQL 用户均可直接使用,无需任何配置。优化器理解这些函数,这正是实现高性能的关键所在。

Rearc 是一家帮助企业构建 GenAI、数据和云平台的公司,他们正在利用 IP 函数为大规模客户提供网络可观测性用例。

我们为一家大型金融机构开发了一款产品,该机构每天定期处理超过30TB的数据,性能和成本效率至关重要。借助Databricks引擎原生支持的IP功能,我们能够直接在SQL中解析、验证和连接IP数据,取代了之前临时的实现方式,使解决方案更加优雅且易于维护。由于这些功能是引擎内置的,我们在不牺牲性能的前提下实现了这一目标。这让我们的网络分析在湖仓一体架构上变得更简单、更快捷。" ——Dara Kharabi,Rearc人工智能与数据实践负责人

为PB级规模而生:秒级响应,而非分钟级

常见的IP分析挑战是在一个更大范围内查找单个地址或子CIDR,这对快速检测威胁、调查欺诈和大规模监控网络活动至关重要。这种用例代表了范围连接(range join),传统引擎一直难以处理,因为标准连接算法依赖于等值匹配。Databricks引擎通过ip_cidr_contains支持优化的IP地址范围连接。

Databricks的ip_cidr_contains在所有探测表(即“针”)和块表(即“ haystack”)规模上,均在价格和速度上优于传统数据仓库。我们对ip_cidr_contains进行了五种典型场景的基准测试:

场景

探测表规模(即针的数量)

CIDR块表规模(即 haystack数量)

团队每日访问日志与精心整理的黑名单连接

10M IP地址

1K块

大型客户每日活动与中等威胁情报连接

1B IP地址

100K块

将一个季度的防火墙和VPN日志与已知云提供商范围进行关联

10B IP地址

1M块

大型企业将所有认证事件与整合的身份风险表匹配

5M块

一周流量与大规模威胁情报连接

10M块

结果显示,即使在规模扩大时,Databricks的IP函数性能仍显著优于竞争对手。当探测数量超过10B IP地址且块数量超过1M CIDR时,查询速度开始趋于平缓。

成本差距同样显著。即使工作负载扩展,Databricks的费用仍低至竞争对手的2倍至6.4倍。

Stanby很快看到了直接在湖仓一体架构上运行网络监控用例的价值,而非依赖外部系统:

"Databricks原生的IP函数让我们可以直接在SQL中处理IP和CIDR数据。我们不再依赖脆弱的字符串解析或手动位运算逻辑。能够将IP数据的解析、验证和连接作为一流的SQL操作,使我们的团队工作变得更简单、更易于维护。这与在湖仓一体架构上运行网络和流量分析的其余数据自然契合。" ——Stanby,数据工程负责人

最终,这些高性能的IP函数使得整个类别的网络工作负载可以直接在湖仓一体架构上构建。

这将释放什么价值

借助快速且原生的IP函数,以前无法在湖仓一体架构上运行的整个工作负载现在都可以迁移过来:

  • 大规模CIDR富化连接——在几秒钟内为每个事件添加GeoIP、ASN、威胁情报或所有权元数据,使下游检测和调查查询能够基于富化数据运行。
  • 高吞吐量实时过滤 - "过去24小时内显示来自这个可疑/16的所有连接" 变为交互式查询而非批处理作业。
  • 统一的IPv4和IPv6分析 - 混合协议表开箱即用,现代流量会被分析而非丢弃。
  • CIDR内的CIDR匹配 - 检查整个子网是否包含在另一个子网中,性能与IP在CIDR中的匹配相同,适用于网络拓扑和策略分析。
  • 一流的SQL访问能力 - 分析人员可通过纯SQL实现IP过滤和连接操作,无需过程代码或UDF库。

这些功能在lakehouse原生支持后,网络工作负载可与企业其他系统共享统一的数据副本 - 无需单独部署专用系统进行授权、安全防护和同步维护。

立即开始使用

原生IP功能现已在Databricks Runtime 18.3及更高版本中正式发布。

查看IP函数参考文档获取完整函数列表和参数说明。网络流量数据一直是您最大的数据集之一 - 现在终于可以与其它分析数据存储在同一个位置。

订阅获取最新文章

订阅我们的博客,最新文章将直接发送到您的邮箱。

立即注册

查看所有博客

slice-start id="_gatsby-scripts-1"

slice-end id="_gatsby-scripts-1"