系列研究成果(十一):流批一体架构:助力构建全面感知的DNS安全预警体系
一、前言
在全球数字化和人工智能化的浪潮下,作为我国互联网“中枢神经系统”的国家顶级域名DNS系统,已经成为最重要的互联网基础服务。常见针对DNS的攻击手段有:DDOS(分布式拒绝服务)攻击、缓存投毒、DNS劫持、DNS隧道攻击。近年来,随着人工智能、移动互联网、物联网等高速发展,攻击者开展漏洞自动化发现以及生成式混淆攻击等新型攻击手段,这些手段具有长周期、低频、特征弱化的显著特点,使得传统基于已知特征检测的方式日趋捉襟见肘。
DNS全流量采集技术,是指通过在DNS系统关键节点部署采集设备,如流量镜像等,实现对网络中全量原始流量包的采集。该技术能够实时捕获网络链路中的所有数据流量,包括 TCP、UDP等各种协议类型的数据包,确保数据的完整性和全面性。DNS全流量采集的数据为后续的DNS流量分析与检测提供最原始的数据,有助于发现那些隐藏在海量原始数据中的潜在威胁。
持续的实时及回溯分析需求与海量的原始流量数据流动,给数据实时聚合计算带来了巨大的挑战。本文以当下流行的“流批一体”架构为例,简要剖析如何从根本上解决数据链路的实时流通问题,为构建全面感知的DNS安全预警体系提供流批一体化数据解决方案。
二、大数据处理的新范式:流式计算逐渐成为主流
传统的批处理模式通常是定时进行抽取、转换和加载数据,通常每小时甚至每天才执行1次,仅能分析昨天(T+1)甚至前天(T+2)的数据。这种模式在海量原始数据实时分析场景下越来越难以为继。与批处理相比,流式计算可以近乎实时地进行数据处理,从而快速响应外部事件。流式计算架构可以水平扩展,能够应对海量数据量和快速的数据增长速率,具有较高的灵活性和可扩展性。
下图展示了一个典型的流批一体处理架构:

实时采集DNS流量数据,并通过Kafka将数据以消息的方式传送给Flink。使用 Flink 完成数仓 ODS 到 DWD 、DWS 和ADS层的计算,通过使用 StarRocks 对各层数仓做统一的 OLAP 查询和在线分析。基于 Kafka的消息订阅与消费,Flink 实现全链路的流式计算,加上StarRocks多层物化视图的聚合,数据从采集到分析的时延可被缩短到秒级,为安全监测与快速预警提供数据基础。
三、Flink窗口操作
窗口操作是流式计算中的一个关键技术概念,它将无界的数据流分割为有限的块进行处理。窗口可以是时间窗口或计数窗口,时间窗口是基于时间长度的窗口,而计数窗口则是基于记录数量的窗口。窗口操作允许用户按照特定的粒度对数据进行聚合处理,如计算过去5分钟内的平均值、最大值或最小值。Flink支持高度灵活的窗口操作。
四、StarRocks物化视图与增量聚合
物化视图主要用于支持多表关联和丰富的聚合操作。StarRocks 的异步物化视图采用了主流的基于 SPJG(select-project-join-group-by)模式透明查询改写算法。在不修改查询语句的前提下,StarRocks 可以自动将在基表上的查询改写为在物化视图上的查询。通过其中包含的预计算结果,物化视图可以显著降低计算成本,并大幅加速查询执行。同时,当基表的数据发生变化时,物化视图也会进行相应的更新(自动或者手动),以保证数据的一致性和准确性。
StarRocks 的异步物化视图自动查询改写功能具有以下特点:
强数据一致性:如果基表是 StarRocks 内表,StarRocks 可以保证通过物化视图查询改写获得的结果与直接查询基表的结果一致。
基于 External Catalog 构建物化视图:可以通过该特性加速数据湖中的查询。
多表 Join:StarRocks 的异步物化视图支持各种类型的 Join,包括一些复杂的 Join 场景,如 View Delta Join 和 Join 派生改写,可用于加速涉及大宽表的查询场景。
Union 改写:可以将 Union 改写特性与物化视图分区的生存时间相结合,实现冷热数据的分离,允许从物化视图查询热数据,从基表查询历史数据。
五、结论
流批一体处理架构利用流式处理保证数据的时效性,并通过Flink、StarRocks等内置的增量聚合能力,在数据写入时就完成预处理与聚合计算。通过“计算与聚合前移”,将大数据量分析时的复杂清洗与计算过程,分布到数据链路的各个节点上,从而优化提升计算性能,显著降低计算成本,为整个架构提供了实时性和灵活性。随着互联网等高速发展,国家顶级域名DNS系统面临着海量数据访问与分析的挑战,通过引入流批一体增量聚合计算技术,可以为保障国家顶级域名DNS系统安全提供数据赋能。
作者简介:
黄永厚,中国互联网络信息中心工程师,主要研究方向为数据库技术、数据管理与分析。
王腾,中国互联网络信息中心工程师,主要研究方向为智能运维技术。
李帅良,中国互联网络信息中心工程师,主要研究方向为大数据分析。
王蒙,中国互联网络信息中心工程师,主要研究方向为数据库技术、数据管理与分析。
