大规模高并发场景下新一代警务搜索系统关键技术研究
2023-01-19崔涛于忠杨志清刘昱晓山东省青岛市公安局
崔涛 于忠 杨志清 刘昱晓 山东省青岛市公安局
引言
从公安信息化的发展历史看,围绕治安防控、打击破案、勤务指挥及行政执法过程中对信息的搜索、查询是公安应用信息化手段的主要方式[1],同时随着4G、5G移动网络及智能手机技术的发展,携带便捷的移动警务终端搭载的信息搜索查询功能,更是成为了民警喜欢使用的警务信息化工具。
从实际的信息化发展情况看,搜索系统是信息检索的核心工具[2],因此警务搜索系统的建设一直是全国各省市公安机关信息化建设的重点。但受限于技术的发展和数据处理能力,常规的搜索系统存在搜索结果不准确、搜索效率低、只能搜结构化数据等缺点,尚不足以有效支撑民警充分使用大数据,造成了很多民警不想用或者用不了的局面。同时,近年来数据量和业务量的高速发展,使得满足大规模高并发场景的搜索需求日益旺盛,为此本文重点研究基于知识图谱和语义识别技术的新一代警务搜索系统,力图可以保障海量数据下的高并发快速检索,使得大数据成果可以充分赋能全体民警。
一、警务搜索系统演进
从使用模式上来说,警务搜索系统主要可以分为独立信息检索系统、信息综合查询系统、网站信息搜索系统和多媒体信息搜索系统。从技术角度看,警务搜索系统的发展历程已经历了两代。
第一代搜索系统主要以单词、分词的形式进行检索,如图1所示,需手动进行数据关联,无任何联想功能。
第二代搜索系统立足于技术的发展,能够基于字符串匹配搜索,如图2所示,查询内容主要集中在证件和车牌等号码、姓名、出生年份等少数字段,在实现逻辑上属于单表类搜索,底层数据和查询语句中的字符串要精确才能查出结果,无法进行跨表搜索。
随着云计算、大数据、语义分析、知识图谱等创新技术的成熟应用,以知识图谱和语义搜索为核心特点的新一代智能搜索系统正逐步走入实战。
二、大规模高并发场景对搜索系统的挑战
从公安实战业务场景看,搜索系统需要对汇聚的所有数据资源进行检索和查询,同时在结果呈现上需要展示的是经过收集、解析及处理过的数据资源。这就意味着满足警务大数据场景的搜索系统将面临如下挑战:
(1)PB级别数据资源搜索能力
近年来各地大数据建设成果显著,笔者所在地市局经过多年的信息化发展,已经汇聚了以万亿为计算单位的大体量数据资源,且每天以千亿条规模体量进行增加。如何实现对如此规模体量的数据资源进行快速搜索,是当前面临的首要挑战。
(2)高并发稳定使用能力
笔者所在地市有超过一万名的民警数量,作为高频使用对象的搜索系统必须要有能够支撑全市所有民警的高并发搜索能力,尤其在安保、疫情防控等关键任务保障期间,全市所有民警都会使用搜索系统进行业务的开展,这就对整个系统及相应支撑平台的高并发能力提出了更高的要求。
(3)具备语义理解搜索能力
受限于业务的复杂性和多样性,基层民警在案件侦破、治安防控及疫情流调等一系列警务实战工作中,往往无法能够精确搜索出目标,需要综合各式信息进行综合性、模糊式的搜索。
(4)具备跨模态式搜索能力
经过近几年感知设备的大跨步建设,各地基本建成了海量的视频监控体系,积累了大量的视频、图片及结构化数据[3],这类数据资源对于公安业务有着非常重要的意义,但是无统一的平台能够实现对跨模态资源的统一查询和搜索,迫切需要通过建设新型搜索系统实现多维度数据的价值发挥。
三、新一代警务搜索系统关键技术设计
基于上文的需求分析,笔者结合当前相关技术发展趋势和所在地市局的实际情况,对该搜索系统的架构进行设计,系统主要包含数据接口服务、智搜应用服务、智搜引擎服务、全息档案服务、语义搜索引擎、多模态搜索、全文搜索引擎等内容。其中,智搜应用服务是用户进行查询搜索的直接交互界面,通过调用智搜引擎服务实现对语义搜索和全文搜索;语义搜索引擎实现用户通过自然语言方式进行搜索;全文搜索引擎实现对全局所有数据资源的每个字段都被索引并可被搜索;MaxCompute实现对搜索系统的底层大数据组件支撑。
区别于前两代搜索系统的实现方式,新一代警务搜索系统的核心关键技术点包括交互式分析能力大数据组件、全文搜索引擎、语义搜索引擎、知识图谱和多模态搜索五个方面内容,如图3标色内容所示。
(一)查询加速的交互式分析能力大数据组件
新一代搜索系统的大规模高并发要求需要依赖底层云计算大数据组件的强有力支撑。在设计中,笔者选择MaxCompute作为系统底层核心的大数据支撑组件。全局多种数据源同步到大数据计算服务,在此基础上进行全局所有数据资源的大规模和高并发计算分析,为搜索系统能够从全局亿万级数据资源中进行查询、分析,提供离线、实时的查询计算支撑。从实际的运行结果分析,选择的大数据组件能够快速上手、服务稳定、安全可靠,且能够同时处理搜索系统涉及到的结构化数据和非结构数据计算要求。
针对搜索系统低延时、高并发要求的场景,通过使用MaxCompute高效低延迟的资源调度策略,如图5所示,并且使用独立执行资源池,实现了秒级查询响应计算能力。
针对搜索场景涉及到的对语义处理需求,使用MaxCompute对非结构化语音、自然语言文本进行语音识别、语义分析和数据处理,如图6所示。
(二)基于Elastic Search引擎的全文搜索引擎
在全文搜索引擎方面,采用能够处理PB级结构化或非结构化数据的Elastic Search引擎,构建了分布式、多用户的全文搜索引擎能力,借助引擎强大的分布式实时分析检索性能、实现ms级数据全文查询时效性。在具体研究和实现的核心内容上,一是通过引擎构建索引库,承接全局所有民警警务实战过程中查询流量;二是针对全局新增的数据资源,进行实时全增量同步,全量通过标准JDBC协议获取数据,通过Binlog订阅同步增量,如图7所示;三是用户在查询过程中通过调用全文搜索引擎服务进行结果的生成。
在实际搜索系统使用过程中,全文搜索引擎能够实现分布式的实时文件存储和搜索,每个字段都被索引并可被搜索,整体上保障搜索稳定、可靠、快速[4],满足全局警务实战需求。
(三)基于语义解析技术的语义搜索引擎
为充分提升搜索引擎的交互智能化,特设计语义搜索引擎(NLS)作为智能搜索的重要组成部分。该引擎可以提供对以自然语言形式表述的查询语句进行语义分析、查询语句转化,最终提供查询结果的能力。通过深度学习语义解析模型得到自然语言查询中独立、明确的语义信息,结合元数据知识图谱在语义信息和目标数据之间建立关联[5],完成查询语句的生成,然后由查询执行模块完成数据库查询,实现搜索结果的输出。语义搜索引擎(NLS)功能包括语义解析模块(QP)、元数据知识图谱管理模块(MKG)、查询语句生成模块(Analyzer)、查询执行模块(Executor),如图8所示。
语义解析模块通过调用深度学习模型的在线服务,解析流程如图9所示,提供对用户输入的自然语言查询进行分词、分段、命名实体识别、语义标注、意图识别等功能。其输出内容作为下一阶段“查询语句生成模块(Analyzer)”的输入。
(四)基于知识加工和推理的知识图谱
知识图谱在语义搜索引擎中不可或缺,它将查询数据的元数据信息以及用户查询内容进行分类、抽象、依赖关系梳理,以不同类型节点的形式进行保存,在语义搜索中起到辅助解析、查询生成重要作用,是连接用户查询Query和查询数据之间的的桥梁。在研究和实现过程中,结合当前主流的技术体系,把知识图谱按照搜索的业务逻辑分为三个流程内容,分别是图谱应用、图谱存储&编辑以及图谱生成。图谱应用立足语义解析结果,通过查询字段、取值及操作,实现对表的中间结果查询,通过查询适配器形成最终的查询语言生成逻辑内容;图谱存储&编辑对图谱应用的语义解析结果和知识图谱内容进行存储,同时按照图谱生成器进行标准格式的存储和展示,并进行实时的修改和反馈。图谱生成立足图谱生成器的存储和展示内容进行元数据信息选择、修改操作,详细管理流程如图10所示。
(五)多模态的智能搜索能力
基于自然语言理解和图像识别,对人的属性(含标签)、行为、关系和体貌特征进行组合搜索。适用于没有ID类信息,也没有人员信息,仅有视频监控类信息,通过其体貌特征对人员身份进行快速落地。
在实际研究和建设过程中,通过使用文本Query对图像内容属性抽取检索,包括语义解析模型升级和知识图谱更新配置;对于识别不出人员ID的图片,根据Reid对结果进行Grouping。语义解析模块会判别搜索Query的搜索意图,判断需要对单主题域进行搜索,还是对多主题进行跨模态搜索,进而根据知识图谱中虚拟实体->实体表的映射关系,生成针对不同主题域的SQL,召回搜索结果。详细技术流程如图11所示。
结合笔者所在地市局当前的信息化建设水平以及视频监控建设规模体量,目前已围绕一线警务实战过程中需求比较迫切的功能内容,初步实现了围绕性别、着装、体态等共计40多类的多模态搜索能力。
四、结语
警务搜索系统属于智慧警务中必建且高频的基础应用软件,支撑着各类数据资源系统对外的呈现。本文在搜索技术上开展了大胆的创新尝试,以满足大规模和高并发为核心需求,在交互式分析能力大数据组件、全文搜索引擎、语义搜索引擎、知识图谱和多模态搜索这五个方面进行创新探索,架构了新一代警务搜索系统,为某市公安局乃至全国公安机关进行大数据下的全警赋能提供了丰富的宝贵经验。实战验证数据基本上反映了民警的搜索目标,满足低门槛普适性需求。本文所研究之内容可以作为搜索技术在公安警务大数据建设中相关研究的理论基础,也可以为大数据智能应用规划设计提供一定的参考价值和工程意义。