《Apache Flink 案例集(2022版)》——3.机器学习——奇安信-如何设计信息安全领域的实时安全基线引擎(2)

简介: 《Apache Flink 案例集(2022版)》——3.机器学习——奇安信-如何设计信息安全领域的实时安全基线引擎(2)

《Apache Flink 案例集(2022版)》——3.机器学习——奇安信-如何设计信息安全领域的实时安全基线引擎(1) https://developer.aliyun.com/article/1228167



平台建设

目前主流实时计算框架主要有两个,Spark 和 Flink,而奇安信最初设计安全基线引擎是在 2018 年左右,当时主流研究 Storm、Spark、Flink 这三个计算框架,综合各方面因素最终选择了 Flink 作为底层计算框架。当时使用的 Flink 是 1.4 版本左右,是一个比较成熟的版本,相比其它框架,它的 API 以及它的底层分布式和流计算实现方式比较符合奇安信的使用场景。

image.png


Flink 的优势点比较突出,它是分布式计算框架,部署灵活,适配目前常见大数据平台。它拥有很好的处理性能,能达到高吞吐低延迟,这非常适合进行实时安全分析。它还提供灵活的 DataStreaming API,方便实现定制化需求。另外,还支持简单易用的检查点和保存点机制。并且,作为目前非常热门的计算框架,社区活跃,有丰富的文档和场景样例。


image.png


奇安信的实时安全基线引擎应用框架分为三层:  


底层是部署层,通常是一个大数据集群;


第二层是安全分析层,基于 Flink DataStreaming API 来构建安全基线引擎,Flink 负责底层的分布式计算和事件流发送,具体的业务计算由安全基线引擎来完成。安全基线引擎向用户提供的使用接口为规则和 DSL,用户通过界面来下发规则 DSL 给引擎,引擎根据规则和 DSL 来对事件流进行分析和计算,同时根据规则语义使用外部的数据,比如知识数据、威胁情报、资产和漏洞等;


用户通过第三层的应用层来管理和使用引擎。并基于引擎数据结果态势分析,安全运营,资源监控等具体安全业务。

image.png


引擎的业务流程分为三块,即用户界面,引擎服务和引擎分析任务。用户通过用户界面来进行规则配置、基线管理和运行监控。引擎服务以 RESTfull API 的方式向用户提供规则下发、基线下发、状态监控等服务。引擎服务在接收到用户的规则下发请求后需要对下发的规则集进行解析、优化之后生成分析任务代码包,分析任务代码提交大数据集群运行,分析任务在运行过程中接收引擎服务的基线发下数据,对运行时基线进行增删改操作。


分析任务还向引擎服务报告任务运行状态,引擎服务将任务运行状态映射成业务监控信息,提供给用户查询和分析使用。


image.png


实时计算一个核心要素是时间,不同的时间处理方法和实现方案会带来差异很大甚至完全不同的计算结果。实时分析中,时间主要影响两个功能,即时间窗口和时间线。  


在安全分析场景里,时间窗口需要支持通用滑动时间窗口、也要支持自然时间滑动时间窗口,比如每年,每月,每星期等自然,甚至是变长时间、需要支持层叠窗口重复数据融合,降低数据存储量、能自动进行重复计算消除,避免重复告警、时间定时器归并、事件乱序正确处理,避免事件乱序引起错误计算。  


时间线可分为事件发生时间和时间处理两类,进而延伸出时间精度,不同的时间精度会对处理性能和存储造成很大的压力,比如需要对时间进行排序的场景。由于实时分析中事件可能是乱序的,因此需要支持延迟时间,解决大部分因为乱序而造成的计算不准确问题。部分计算场景涉及系统时间<->事件时间之间的相互转换,需要能提供两种时间的转换计算方法。由于执行图是大量子图融合而来,因此需要同时支持对全局和局部时间水位进行管理,保证图上时间线能正确推进。


image.png


基线处理流程主要分为三个部分:基线学习、基线检测和基线路由,其中穿插事件过滤、时间窗口、基线降噪、基线管理等流程。基线学习流程包含从消息队列和存储中读取事件流,经过事件过滤和时间窗口聚合,事件流中可能包含噪音数据,还需进行数据降噪流程,最后基线学习流程学习输入的事件流程,生成对应的安全基线。学习完成的安全基线在进行基线管理流程之后用于异常检测,用于预测和异常检测,如果发现异常行为,则产生异常事件,输出到后续的处理流程,用于后续的业务的使用。用户在使用过程中可能需要修改或删除一些学习好的基线或者自己新建一个基线,这些基线的增删改操作通过基线路由功能来完成,基线路由流程将用户编辑的基线在图上路由之后正确的分发到对应的图节点实例中。


image.png



《Apache Flink 案例集(2022版)》——3.机器学习——奇安信-如何设计信息安全领域的实时安全基线引擎(3) https://developer.aliyun.com/article/1228162

相关实践学习
基于Hologres+Flink搭建GitHub实时数据大屏
通过使用Flink、Hologres构建实时数仓,并通过Hologres对接BI分析工具(以DataV为例),实现海量数据实时分析.
实时计算 Flink 实战课程
如何使用实时计算 Flink 搞定数据处理难题?实时计算 Flink 极客训练营产品、技术专家齐上阵,从开源 Flink功能介绍到实时计算 Flink 优势详解,现场实操,5天即可上手! 欢迎开通实时计算 Flink 版: https://cn.aliyun.com/product/bigdata/sc Flink Forward Asia 介绍: Flink Forward 是由 Apache 官方授权,Apache Flink Community China 支持的会议,通过参会不仅可以了解到 Flink 社区的最新动态和发展计划,还可以了解到国内外一线大厂围绕 Flink 生态的生产实践经验,是 Flink 开发者和使用者不可错过的盛会。 去年经过品牌升级后的 Flink Forward Asia 吸引了超过2000人线下参与,一举成为国内最大的 Apache 顶级项目会议。结合2020年的特殊情况,Flink Forward Asia 2020 将在12月26日以线上峰会的形式与大家见面。
相关文章
|
12月前
|
存储 消息中间件 Kafka
基于 Flink 的中国电信星海时空数据多引擎实时改造
本文整理自中国电信集团大数据架构师李新虎老师在Flink Forward Asia 2024的分享,围绕星海时空智能系统展开,涵盖四个核心部分:时空数据现状、实时场景多引擎化、典型应用及未来展望。系统日处理8000亿条数据,具备亚米级定位能力,通过Flink多引擎架构解决数据膨胀与响应时效等问题,优化资源利用并提升计算效率。应用场景包括运动状态识别、个体行为分析和群智感知,未来将推进湖仓一体改造与三维时空服务体系建设,助力数字化转型与智慧城市建设。
1006 3
基于 Flink 的中国电信星海时空数据多引擎实时改造
|
存储 SQL 关系型数据库
拉卡拉 x Apache Doris:统一金融场景 OLAP 引擎,查询提速 15 倍,资源直降 52%
拉卡拉早期基于 Lambda 架构构建数据系统面临存储成本高、实时写入性能差、复杂查询耗时久、组件维护复杂等问题。为此,拉卡拉选择使用 Apache Doris 替换 Elasticsearch、Hive、Hbase、TiDB、Oracle / MySQL 等组件,实现了 OLAP 引擎的统一、查询性能提升 15 倍、资源减少 52% 的显著成效。
606 6
拉卡拉 x Apache Doris:统一金融场景 OLAP 引擎,查询提速 15 倍,资源直降 52%
|
存储 分布式计算 流计算
实时计算 Flash – 兼容 Flink 的新一代向量化流计算引擎
本文介绍了阿里云开源大数据团队在实时计算领域的最新成果——向量化流计算引擎Flash。文章主要内容包括:Apache Flink 成为业界流计算标准、Flash 核心技术解读、性能测试数据以及在阿里巴巴集团的落地效果。Flash 是一款完全兼容 Apache Flink 的新一代流计算引擎,通过向量化技术和 C++ 实现,大幅提升了性能和成本效益。
4273 74
实时计算 Flash – 兼容 Flink 的新一代向量化流计算引擎
|
SQL 存储 大数据
Flink 基础详解:大数据处理的强大引擎
Apache Flink 是一个分布式流批一体化的开源平台,专为大规模数据处理设计。它支持实时流处理和批处理,具有高吞吐量、低延迟特性。Flink 提供统一的编程抽象,简化大数据应用开发,并在流处理方面表现卓越,广泛应用于实时监控、金融交易分析等场景。其架构包括 JobManager、TaskManager 和 Client,支持并行度、水位线、时间语义等基础属性。Flink 还提供了丰富的算子、状态管理和容错机制,如检查点和 Savepoint,确保作业的可靠性和一致性。此外,Flink 支持 SQL 查询和 CDC 功能,实现实时数据捕获与同步,广泛应用于数据仓库和实时数据分析领域。
10548 42
|
机器学习/深度学习 传感器 运维
使用机器学习技术进行时间序列缺失数据填充:基础方法与入门案例
本文探讨了时间序列分析中数据缺失的问题,并通过实际案例展示了如何利用机器学习技术进行缺失值补充。文章构建了一个模拟的能源生产数据集,采用线性回归和决策树回归两种方法进行缺失值补充,并从统计特征、自相关性、趋势和季节性等多个维度进行了详细评估。结果显示,决策树方法在处理复杂非线性模式和保持数据局部特征方面表现更佳,而线性回归方法则适用于简单的线性趋势数据。文章最后总结了两种方法的优劣,并给出了实际应用建议。
852 7
使用机器学习技术进行时间序列缺失数据填充:基础方法与入门案例
|
SQL 分布式计算 NoSQL
大数据-164 Apache Kylin Cube优化 案例1 定义衍生维度与对比 超详细
大数据-164 Apache Kylin Cube优化 案例1 定义衍生维度与对比 超详细
247 1
大数据-164 Apache Kylin Cube优化 案例1 定义衍生维度与对比 超详细
|
监控 Cloud Native BI
8+ 典型分析场景,25+ 标杆案例,Apache Doris 和 SelectDB 精选案例集(2024版)电子版上线
飞轮科技正式推出 Apache Doris 和 SelectDB 精选案例集 ——《走向现代化的数据仓库(2024 版)》,汇聚了来自各行各业的成功案例与实践经验。该书以行业为划分标准,辅以使用场景标签,旨在为读者提供一个高度整合、全面涵盖、分类清晰且易于查阅的学习资源库。
570 8
|
消息中间件 存储 druid
大数据-156 Apache Druid 案例实战 Scala Kafka 订单统计
大数据-156 Apache Druid 案例实战 Scala Kafka 订单统计
270 3
|
机器学习/深度学习 人工智能 数据处理
【人工智能】项目实践与案例分析:利用机器学习探测外太空中的系外行星
探测外太空中的系外行星是天文学和天体物理学的重要研究领域。随着望远镜观测技术的进步和大数据的积累,科学家们已经能够观测到大量恒星的光度变化,并尝试从中识别出由行星凌日(行星经过恒星前方时遮挡部分光线)引起的微小亮度变化。然而,由于数据量巨大且信号微弱,传统方法难以高效准确地识别所有行星信号。因此,本项目旨在利用机器学习技术,特别是深度学习,从海量的天文观测数据中自动识别和分类系外行星的信号。这要求设计一套高效的数据处理流程、构建适合的机器学习模型,并实现自动化的预测和验证系统。
488 1
【人工智能】项目实践与案例分析:利用机器学习探测外太空中的系外行星
|
消息中间件 druid 大数据
大数据-153 Apache Druid 案例 从 Kafka 中加载数据并分析(二)
大数据-153 Apache Druid 案例 从 Kafka 中加载数据并分析(二)
238 2

相关产品

  • 实时计算 Flink版
  • 推荐镜像

    更多