KDADK-MMPM超大规模规则匹配库
KDADK( Kunpeng Data Analytics Development Kit )是华为开发的高性能数据分析开发套件,MMPM( Million-rule Multi-Pattern Matcher )是其中的超大规模规则匹配库,可有效处理千万数量级的规则匹配。
规则匹配是智能数据分析场景的核心需求,而超大规模规则匹配是常见痛点,以Hyperscan为代表的规则匹配库在面对十万以上数量的规则集时性能会急剧衰减,需要定制对超大规模规则匹配的专用算法库。
MMPM针对两类场景定制了不同的算法:对十万数量级不定长规则集使用基于AC(Aho-Corasick)前缀树的浮动多模式匹配算法;对千万数量级定长规则集使用基于Hash的固定多模式匹配算法。

MMPM的工作流程分两阶段:规则预处理阶段和规则匹配阶段。

面对超大规模规则集时,MMPM使用二级hash结构维护规则,在保证增删改效率不劣化的情况下提升搜索速度。

MMPM的关键技术包括:AC前缀树数组化查表优化,AC自动机;多级Hash,Hash并行化,向量化冲突校验。
MMPM的适用场景包括:网络安全数据分流,运营商数据精细分流,公安、技侦数据分流,IDP,WAF,大模型应用防火墙等。
父主题: 方案特性