CN110427354B - 一种分布式研判系统、方法及计算机存储介质、电子设备 - Google Patents
一种分布式研判系统、方法及计算机存储介质、电子设备 Download PDFInfo
- Publication number
- CN110427354B CN110427354B CN201910630426.8A CN201910630426A CN110427354B CN 110427354 B CN110427354 B CN 110427354B CN 201910630426 A CN201910630426 A CN 201910630426A CN 110427354 B CN110427354 B CN 110427354B
- Authority
- CN
- China
- Prior art keywords
- judging
- task
- storage device
- message queue
- study
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/546—Message passing systems or structures, e.g. queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/54—Indexing scheme relating to G06F9/54
- G06F2209/547—Messaging middleware
Abstract
一种分布式研判系统、方法及计算机存储介质、电子设备,包括:业务管理平台、数据存储装置、消息中间件、以及执行节点,数据存储装置包括第一存储装置和第二存储装置,第一存储装置预先存储有被监控主体的相关信息,第二存储装置存储任务分派消息队列和任务反馈消息队列;业务管理平台接收研判对象的相关信息并生成研判对象的研判任务包;将研判任务包通过消息中间件发送至任务分派消息队列;执行节点从任务分派消息队列中获取研判对象的研判任务,根据任务要求从第一存储装置获取数据执行研判任务,并将研判结果发送至任务反馈消息队列;业务管理平台从任务反馈消息队列获取研判结果。本申请可以根据实际需要进行功能定制化,大大降低开发难度。
Description
技术领域
本申请涉及技术,具体地,涉及一种分布式研判系统、方法及计算机存储介质、电子设备。
背景技术
随着物联网、社交网络、云计算等技术不断融入我们的生活以及现有的计算能力、存储空间、网络宽带的高速发展,人类积累的数据在互联网、通信、金融、商业、医疗等诸多领域不断增长。各行各业每天都产生庞大的数据量,通过对数据进行数据挖掘和研判分析,可以从海量的数据中提取隐含其中的有价值信息,从而将这些信息应用到现实业务中,提高生产效率,优化管理等。要完成一个整体业务,实现数据从信息到知识,需要一个完整的系统来将这些单独的功能管理起来,组成一个业务流程,最后完成数据的挖掘和研判功能,让信息变成有价值的结论,辅助相关人员完成决策。
现有技术中存在的问题:
现有的数据分析研判系统大多基于关系数据库和开源的Spark、HBase或者Hive等技术架构,虽然开源架构功能强大,但结构复杂,在功能的定制开发上往往有很高的技术门槛。
发明内容
本申请实施例中提供了一种分布式研判系统、方法及计算机存储介质、电子设备,以解决上述技术问题。
根据本申请实施例的第一个方面,提供了一种分布式研判系统,包括:业务管理平台、数据存储装置、消息中间件、以及一个或多个执行节点,
所述数据存储装置包括第一存储装置和第二存储装置,所述第一存储装置预先存储有若干被监控主体的相关信息,所述第二存储装置用于存储任务分派消息队列和任务反馈消息队列;其中,所述第一存储装置预先存储的所述若干被监控主体的相关信息,包括以下一个或多个:被监控主体的金融账号信息、通话记录、身份信息、联系方式、活动区域;
所述业务管理平台包括接收模块、任务生成模块、发送模块和获取模块,其中,
所述接收模块,用于接收研判对象的相关信息;
所述任务生成模块,用于根据所述研判对象与所述被监控主体的通话记录生成第一研判任务包;和/或,根据所述研判对象与所述被监控主体的金融账号信息生成第二研判任务包;和/或,根据所述研判对象与所述被监控主体的活动区域生成第三研判任务包;所述研判对象的研判任务包根据预设研判算法的不同包括有一个或多个研判任务;
所述发送模块,用于将所述研判对象的研判任务包通过所述消息中间件的接口发送至任务分派消息队列;
所述执行节点,用于从所述任务分派消息队列中获取所述研判对象的研判任务,根据任务要求从所述第一存储装置中获取数据执行研判任务,并将研判结果发送至所述任务反馈消息队列;
所述获取模块,用于从所述任务反馈消息队列获取研判结果,所述研判结果包括每个研判任务的执行结果。
根据本申请实施例的第二个方面,提供了一种分布式研判方法,包括:
业务管理平台接收研判对象的相关信息;根据所述研判对象与被监控主体的通话记录生成第一研判任务包;和/或,根据所述研判对象与所述被监控主体的金融账号信息生成第二研判任务包;和/或,根据所述研判对象与所述被监控主体的活动区域生成第三研判任务包;所述研判对象的研判任务包根据预设研判算法的不同包括有一个或多个研判任务;将所述研判对象的研判任务包通过消息中间件的接口发送至第二存储装置的任务分派消息队列;并从所述第二存储装置的任务反馈消息队列获取研判结果,所述研判结果包括每个研判任务的执行结果;
一个或多个执行节点从所述任务分派消息队列中获取所述研判对象的研判任务,根据任务要求从第一存储装置中获取数据执行研判任务,并将研判结果发送至所述任务反馈消息队列;所述第一存储装置预先存储有若干被监控主体的相关信息,其中,所述第一存储装置预先存储的所述若干被监控主体的相关信息,包括以下一个或多个:被监控主体的金融账号信息、通话记录、身份信息、联系方式、活动区域;
根据本申请实施例的第三个方面,提供了一种计算机存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述方法的步骤。
根据本申请实施例的第四个方面,提供了一种电子设备,包括存储器、以及一个或多个处理器,所述存储器用于存储一个或多个程序;所述一个或多个程序被所述一个或多个处理器执行时,实现如上所述的方法。
有益效果:
采用本申请实施例中提供的技术方案,消息中间件实现了业务管理平台与任务执行节点间链路的分离,让系统可以进行分布式部署,业务管理平台不用关心执行节点的状态,只需要对研判任务的逻辑和业务流程进行规划和管理,回收处理任务执行结果。执行节点也不需要关心研判的内容,只需要通过消息队列来执行任务反馈结果。通过消息队列和缓存数据库实现研判任务的实时处理和异步处理,可以根据实际需要进行功能定制化,大大降低了开发难度。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1示出了本申请实施例1中分布式研判系统的结构示意图;
图2示出了本申请实施例2中分布式研判方法实施的流程示意图;
图3示出了本申请实施例3中隐毒人员研判系统的结构示意图。
具体实施方式
发明人在发明过程中注意到:
现有的数据分析研判系统大多基于关系数据库和开源的Spark、HBase或者Hive等技术架构。虽然这些开源架构功能强大,但是结构复杂,在功能的定制开发上往往有很高的技术门槛,例如:想要根据自身需要定制数据分析研判系统则会因为现有技术架构结构复杂而难以实现。
发明人经检索发现如下相关技术:
CN201710105031.7,公开了一种可以配置的分布式统计分析系统,虽然名为分布式系统,但该系统增加了配置节点作为中心节点对任务执行节点进行负载均衡管理,让分布式的系统有了中心化的限制,执行节点均依赖于所述配置节点的管理才能正常工作。
CN201610074884.4,公开了一种基于Redis数据库的分布式服务系统,用redis来管理任务的状态,但对于任务流程需要有一个状态机来监控和执行,导致任务流程长,任务执行逻辑复杂,增加了业务系统的开发难度。
针对现有技术存在的技术问题,本申请提出了一种分布式研判系统架构,消息中间件实现了业务平台与任务执行节点间链路的分离,任务调度平台不需要关心执行节点的状态,只需要对研判任务的逻辑和业务流程进行规划和管理,回收处理任务执行结果;执行节点也不需要关心研判的内容,只需要通过消息队列来执行任务反馈结果。消息中间件只负责消息队列的管理,缓存服务器只对业务中间数据做缓存、不进行逻辑处理,业务模块(执行节点)通过对消息队列的竞争读取来实现分布式的目的。
本申请实施例中的方案可以采用各种计算机语言实现,例如,面向对象的程序设计语言Java和直译式脚本语言JavaScript等。
为了使本申请实施例中的技术方案及优点更加清楚明白,以下结合附图对本申请的示例性实施例进行进一步详细的说明,显然,所描述的实施例仅是本申请的一部分实施例,而不是所有实施例的穷举。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
实施例1
本申请实施例提供了一种分布式研判系统,下面进行说明。
图1示出了本申请实施例1中分布式研判系统的结构示意图。
如图所示,所述分布式研判系统,包括:业务管理平台11、数据存储装置12、消息中间件13、以及一个或多个执行节点14,
所述数据存储装置包括第一存储装置和第二存储装置,所述第一存储装置预先存储有若干被监控主体的相关信息,所述第二存储装置用于存储任务分派消息队列和任务反馈消息队列;
所述业务管理平台包括接收模块、任务生成模块、发送模块和获取模块,其中,
所述接收模块,用于接收研判对象的相关信息;
所述任务生成模块,用于根据所述研判对象的相关信息生成所述研判对象的研判任务包;所述研判对象的研判任务包根据预设研判算法的不同包括有一个或多个研判任务;
所述发送模块,用于将所述研判对象的研判任务包通过所述消息中间件的接口发送至任务分派消息队列;
所述执行节点,用于从所述任务分派消息队列中获取所述研判对象的研判任务,根据任务要求从所述第一存储装置中获取数据执行研判任务,并将研判结果发送至所述任务反馈消息队列;
所述获取模块,用于从所述任务反馈消息队列获取研判结果,所述研判结果包括每个研判任务的执行结果。
具体实施时,所述研判对象可以为被监控主体之一,所述研判对象的相关信息可以包括研判对象的身份信息、通讯方式、金融账号等信息。例如:所述接收模块可以接收用户A的身份证号码,所述任务生成模块根据所述身份证号码以及多个研判算法生成该用户A的多个研判任务。所述执行节点在获取到该研判任务后,可以从第一存储装置中获取用户A的手机号码以及通话记录、还可以从第一存储装置中获取用户A的银行卡号码以及账单流水(可以包括转账记录等),根据获取到的这些数据执行相应的研判算法。
在一种实施方式中,所述业务管理平台可以分布式部署在多个服务器。
在一种实施方式中,所述业务管理平台可以进一步包括:
解析模块,用于在所述获取模块获取到研判任务的执行结果之后,对研判任务的执行结果进行解析,根据不同的算法对研判任务的执行结果进行相应的解码和数据处理。
所述第一存储装置可以预先存储有若干被监控主体的多源信息,这些多源信息可以为公安数据、社会数据、互联网数据和专题数据等,具体的,公安数据可以从公安内部的系统库建立连接获取得到,社会数据可以包括人口、法人、铁路、航空、金融等社会资源数据,互联网数据可以包括物流数据、外卖数据、共享单车数据等,专题数据则可以包括轨迹、区域、通道等数据,具体可以通过手机定位、人脸识别等手段获取。
采用本申请实施例中提供的分布式研判系统,消息中间件实现了业务管理平台与任务执行节点间链路的分离,让系统可以进行分布式部署,业务管理平台不用关心执行节点的状态,只需要对研判任务的逻辑和业务流程进行规划和管理,回收处理任务执行结果。执行节点也不需要关心研判的内容,只需要通过消息队列来执行任务反馈结果。通过消息队列和缓存数据库实现研判任务的实时处理和异步处理,可以根据实际需要进行功能定制化,大大降低了开发难度。
考虑到分布式部署时,单个研判任务反馈时不能确定是由哪个执行节点获取并处理的,无法确定该单个研判任务属于哪个研判对象,因此,本申请实施例还可以采用如下方式实施。
在一种实施方式中,所述业务管理平台进一步包括:
处理模块,用于根据所述研判结果获取每个研判任务的标识,并根据所述研判任务的标识将所述研判任务的执行结果增加至所述第二存储装置中所述任务分派消息队列中的所述研判任务的数据中。
这样处理的原因是,当分布式部署的时候,任务反馈不能确定是由哪一个节点获取并处理的,需要实时反馈给前端的数据就能通过读取第二存储装置实时获取任务的反馈。当有一些异步处理的研判任务时,根据所述研判任务的关键字或者标识ID,调用相应的解析模块。比如:话单分析中,与研判对象通话这个研判任务的数据返回,调用针对该任务的解析模块,解析算法结果,对第二存储装置中该研判对象的该条记录进行更新,并更新该研判对象的累积值,以此类推,当获取到所有基于账单和话单的研判结果以后,该研判对象的所有记录都得到更新,每次更新,都将获得一个新的研判累计值,直至异步研判任务完成。
在一种实施方式中,所述业务管理平台进一步包括:
预警模块,用于在确定研判对象为所要确定的对象时,产生预警指令、或者将该研判对象的相关信息和指令推送至处理终端等。
具体实施时,所述处理终端可以为智能手机、车辆卡口处电子设备、电子围栏等。
例如:当确定研判对象为隐毒人员时,可以产生预警指令并将该隐毒人员的相关信息发送至警务人员的手机设备,以便警务人员执行任务。
在一种实施方式中,所述第一存储装置预先存储的所述若干被监控主体的相关信息,包括以下一个或多个:
被监控主体的金融账号信息、通话记录、身份信息、联系方式、活动区域。
具体实施时,所述被监控主体可以为企业、科研院所、或者个人,若所述被监控主体为个人,则其相关信息可以包括:姓名、银行卡号、手机号码、手机通话记录、身份证号、所在位置、经常活动的区域、户籍地址、车牌号、照片等;若所述监控主体为企业、科研院所等实体,则其相关信息可以包括:名称、注册号、所在位置、通讯方式(例如座机号码)、收款或付款账号等。
在一种实施方式中,根据所述研判对象的相关信息生成所述研判对象的研判任务包,包括:
根据所述研判对象的通话记录生成第一研判任务包;和/或,
根据所述研判对象的金融转账信息生成第二研判任务包;和/或,
根据所述研判对象的经常活动的区域生成第三研判任务包;
所述执行节点根据任务要求执行研判任务,包括:根据第一研判任务包、第二研判任务包和/或第三研判任务包、以及各研判任务包的权重,计算得到研判对象的研判结果。
具体实施时,可以根据研判对象的通话记录按照预设的通话算法生成第一研判任务包,根据研判对象的金融转账信息按照预设的金融算法生成第二研判任务包,根据所述研判对象的经常活动的区域按照预设的区域算法生成第三研判任务包,最后,再将这些研判任务包按照各自的权重进行计算,得到最终所述研判对象的研判结果。
所述研判对象的经常活动的区域可以根据所述研判对象的手机位置信息、银行卡刷卡位置信息等来确定。经常活动的区域可以指所处该区域的次数或时间大于预设区域阈值的区域。
在一种实施方式中,在研判对象的通话记录中包括所述研判对象通话时所处的基站位置,本申请实施例可以根据通话记录(或称话单)中在每个基站区域通话的次数和通话的时间来确定研判对象经常活动的区域以及在该经常活动的区域活动的时间。
在一种实施方式中,所述根据所述研判对象的经常活动的区域生成第三研判任务包,包括:
根据研判对象的通话记录得到所述研判对象通话时所处基站信息;
根据所述基站信息以及预先标识的敏感基站,生成第三研判任务包。
具体实施时,一般违法犯罪行为在某些区域比较常见,例如在边境地区可能容易出现涉毒或涉赌等违法犯罪行为。本申请实施例可以将这些区域贴上标签(或者将这些区域的基站作为敏感基站进行标识),如果研判对象的通话记录中,主叫电话经常在涉毒的敏感基站区域拨出、或者主叫时间在敏感时间、或者研判对象被叫时对端号码是从涉毒的敏感基站区域拨出,则可以根据这些信息生成研判任务包。
在一种实施方式中,所述根据所述研判对象的通话记录生成第一研判任务包,包括:
根据所述研判对象与已知的涉毒人员的通话记录,生成第一研判任务;
根据所述研判对象在涉毒区域内的通话记录,生成第二研判任务;
根据所述研判对象在预设时间范围内的通话记录,生成第三研判任务;
所述第一研判任务包的权重为根据所述第一研判任务的权重、第二研判任务的权重、以及第三研判任务的权重计算得到;
所述研判对象的研判结果为所述研判对象是否为涉毒人员。
具体实施时,所述第一存储装置中被监控主体中可能已经有部分被监控主体被标识为涉毒人员,可以根据所述研判对象与已知的涉毒人员的通话记录生成第一研判任务;
或者,
可以通过监管部门的标记,通常监管部门不仅有话单数据,还有很多其他涉毒数据,本申请实施例可以综合这些数据对敏感区域进行标记得出涉毒人员常出现的区域(涉毒区域),进而根据所述研判对象在涉毒区域内的通话记录生成第二研判任务;
对于涉毒区域的判定可以通过监管部门对该区域经常发生的案件的总结(例如对区域进行贴标签),如果某些区域经常发现涉毒人员交易,涉毒人员活动这个区域就可以被标记为涉毒区域;该区域内的基站可以标识为涉毒区域中的敏感基站。如果研判对象的通话记录中连接的基站属于该涉毒区域的敏感基站,则可以判定该通话是来自涉毒区域或者从涉毒区域发起的主叫。
或者,
可以根据所述第一存储装置中被监控主体统计得出涉毒人员经常在后半夜通话,那么可以根据所述研判对象在预设时间范围内(例如:03:00-05:00)的通话记录生成第三研判任务。
例如:
假设获取到用户A的近半年来的通话记录,其中,
有13个记录是与已知的涉毒人员B的通话;
有45个记录是在涉毒区域内(假设分别在涉毒区域L01、L05、L07)的通话;
有78个记录是在后半夜凌晨3点至5点之间的通话;
用户可以通过操作界面发起研判任务,确定用户A为研判对象。Java管理平台收到用户的研判任务后获取相关的数据(例如可以包括研判对象用户A、研判对象与涉毒人员的通话、涉毒区域内的通话、后半夜的通话等),并根据这些数据封装研判任务指令数据结构,数据结构包括:研判任务的唯一标识、研判对象在数据库中的目标信息的唯一标识、研判任务调取的算法代号等。
研判任务的上述数据存入Redis缓存数据库中,本申请实施例将研判任务数据包发送至任务分派消息队列。
算法节点读取任务分派消息队列中的任务包,解析数据包得到任务ID、研判对象ID和研判算法标识,调用相应的研判算法对研判任务进行处理。
在处理完成后,执行节点将研判任务的执行结果填写到研判任务包中,例如与涉毒人员通话有13个记录,根据专家打分模型13个通话记录计为3分,则在研判任务的执行结果中填入3;将带执行结果的任务包发送到任务反馈消息队列中。
研判管理平台从任务反馈消息队列中获取研判任务的执行结果,拆包找出研判任务的ID、更新redis缓存数据库中的任务包数据,并对研判任务进行解码、调用相应的算法对执行结果进行解码,找出研判任务的研判结果(例如分数等),更新研判对象的涉毒通话的积分,重新计算研判对象的涉毒积分,更新总分。
至此,研判任务完成。
在一种实施方式中,所述研判任务的权重可以预先设置,例如,可以根据研判特征的属性的信息增益大小来排序,计算这些研判特征的信息增益,将这些信息增益占信息增益总和的比例作为所述研判任务的权重。
实施例2
基于同一发明构思,本申请实施例提供了一种分布式研判方法,其解决问题的原理与一种分布式研判系统相似,重复之处不再赘述。
图2示出了本申请实施例2中分布式研判方法实施的流程示意图。
如图所示,所述分布式研判方法包括:
步骤201、业务管理平台接收研判对象的相关信息;
步骤202、业务管理平台根据所述研判对象的相关信息生成所述研判对象的研判任务包;所述研判对象的研判任务包根据预设研判算法的不同包括有一个或多个研判任务;
步骤203、业务管理平台将所述研判对象的研判任务包通过所述消息中间件的接口发送至第二存储装置的任务分派消息队列;
步骤204、一个或多个执行节点从所述任务分派消息队列中获取所述研判对象的研判任务,根据任务要求从第一存储装置中获取数据执行研判任务,所述第一存储装置预先存储有若干被监控主体的相关信息;
步骤205、所述执行节点将研判结果发送至所述任务反馈消息队列;
步骤206、业务管理平台从所述第二存储装置的任务反馈消息队列获取研判结果,所述研判结果包括每个研判任务的执行结果。
采用本申请实施例中提供的分布式研判方法,消息中间件实现了业务管理平台与任务执行节点间链路的分离,让系统可以进行分布式部署,业务管理平台不用关心执行节点的状态,只需要对研判任务的逻辑和业务流程进行规划和管理,回收处理任务执行结果。执行节点也不需要关心研判的内容,只需要通过消息队列来执行任务反馈结果。通过消息队列和缓存数据库实现研判任务的实时处理和异步处理,可以根据实际需要进行功能定制化,大大降低了开发难度。
在一种实施方式中,所述方法进一步包括:
所述业务管理平台根据所述研判结果获取每个研判任务的标识,并根据所述研判任务的标识将所述研判任务的执行结果增加至所述第二存储装置中所述任务分派消息队列中的所述研判任务的数据中。
在一种实施方式中,所述第一存储装置预先存储的所述若干被监控主体的相关信息,包括以下一个或多个:
被监控主体的金融账号信息、通话记录、身份信息、联系方式、活动区域。
在一种实施方式中,所述业务管理平台根据所述研判对象的相关信息生成所述研判对象的研判任务包,包括:根据所述研判对象与所述被监控主体的通话记录生成第一研判任务包;和/或,根据所述研判对象与所述被监控主体的金融账号信息生成第二研判任务包;和/或,根据所述研判对象与所述被监控主体的活动区域生成第三研判任务包;
所述一个或多个执行节点根据任务要求执行研判任务包括:根据第一研判任务包、第二研判任务包和/或第三研判任务包、以及各研判任务包的权重,计算得到研判对象的研判结果。
在一种实施方式中,所述业务管理平台根据所述研判对象与所述被监控主体的通话记录生成第一研判任务包,包括:根据所述研判对象与已知的涉毒人员的通话记录,生成第一研判任务;根据所述研判对象在涉毒区域内的通话记录,生成第二研判任务;根据所述研判对象在预设时间范围内的通话记录,生成第三研判任务;所述第一研判任务包的权重为根据所述第一研判任务的权重、第二研判任务的权重、以及第三研判任务的权重计算得到;所述研判对象的研判结果为所述研判对象是否为涉毒人员。
实施例3
本申请实施例以隐毒人员的研判系统作为具体实例进行说明。
图3示出了本申请实施例3中隐毒人员研判系统的结构示意图。
如图所示,本申请实施例的研判系统可以包括用户交互界面、业务管理平台、基础数据库、消息中间件、以及算法执行节点,其中,
1、用户交互界面
用户交互界面是用户使用系统的入口,可以包括以下功能:
1)系统配置:可以通过用户交互界面对研判系统进行配置。
2)业务操作:可以通过用户交互界面进行业务操作、检索资料、下达业务指令等。
3)查看结果:可以通过用户交互界面展示业务执行结果。
2、业务管理平台
业务管理平台是整个系统的枢纽,负责任务管理、数据读取和存储等,可以包括如下功能:
1)用户操作响应:响应用户的操作并提供操作反馈。
2)业务管理:根据用户操作生成任务数据包,将任务数据包发送到消息中间件,从消息中间件中获取算法反馈的结果,按照任务逻辑处理算法反馈结果,完成业务流程。
3、数据库
数据库可以分为基础数据库和缓存数据库。
1)基础数据库,也可以是数据仓库,提供研判分析的基础数据,业务管理平台也可以将需要固化的研判结果按照业务规则存储至基础数据库中。
2)缓存数据库,业务管理平台可以将业务处理产生的中间数据存储至缓存数据库中,在系统分布式部署时达到所有的业务管理平台能共享业务数据的目的。
4、消息中间件
消息中间件可以作为系统的通信链路,为业务管理平台和算法执行节点提供数据通道。
1)消息中间件提供消息链路的通道,将业务管理平台和算法执行节点分离。
2)维护消息队列,提供消息持久化机制,保证任务数据包能被业务管理平台或者算法执行节点接收。
5、算法执行节点
算法执行节点为研判任务执行的节点,根据从任务包中获取的指令和参数,调用相应的算法进行研判分析,并按任务数据包格式反馈研判结果。
本申请实施例中,各个业务模块之间可以通过网络访问。数据库、消息中间件在分布式部署时可以使用自带的分布式部署方案进行部署,基础数据库可以使用mySql实现,缓存数据库可以使用redis实现,消息中间件可以使用rabbitMq实现。
前端用户交互界面、业务管理平台和算法执行节点可以自行开发。其中,
前端用户界面访问业务管理平台可以通过nignix等工具进行负载均衡的分布式部署;
算法执行节点可以通过读取消息队列来驱动工作,算法执行节点可以部署多个,共同读取相同的消息队列,根据算法执行节点中配置的可用算法来竞争获取可以执行的任务数据包。
业务管理平台的任务反馈处理也可以通过读取消息队列来驱动程序工作。业务管理平台和算法执行节点之间没有直接的通信关系。
前端、业务管理平台、数据库、消息中间件、执行节点等任一功能模块,都可以至少部署一个服务节点,根据研判系统的负载情况进行冗余部署,实现分布式架构。
下面本申请实施例以隐毒人员的识别过程来详细描述分布式研判系统的工作流程。
隐毒人员的识别可以从多维度考虑,例如:通话记录、账单流水、经常活动的区域等线索进行分析。本申请实施例采用专家积分模型来实现隐毒人员的研判,将所有能得到的信息分为几个维度,例如:资金维度、话单维度等,在每个维度根据专家景燕进行分值与权重的配置。
例如:
本申请实施例以资金和话单维度为例,假设总权重为1,资金维度和话单维度的权重相同,均为0.5,分值为总分100分,资金维度和话单维度的分值各为50分。
积分研判可能需要一段时间得到计算结果,因此,对于大型的研判任务可以将研判方案的执行在后台完成。
在每种维度下可以有多种研判方案,例如:话单维度的研判方案有以下几种:
1、与已知的涉毒人员的通话;
2、在涉毒区域的通话;
3、后半夜的通话等。
本申请实施例可以对上述研判方案也设置专家评分方案并分别赋予权重。
对于资金维度等其他维度参照上述操作方式进行处理,最后算法根据规则计算后可以得到每个研判方案的分值,反馈给业务管理平台汇总后即可得到研判对象的涉毒积分。
研判的整体流程可以如下:
1、用户可以通过用户交互界面上传或导入研判对象的身份证信息、电话号码或者银行账号信息等,发起隐毒研判任务。
2、业务管理平台可以根据上述信息从其它平台或自身数据库中获取研判对象的账单和话单,生成隐毒研判任务。
假设研判对象为用户A,那么业务管理平台可以在收到用户A的身份证号、手机号码或者银行卡号后,在数据库中查找该用户A的账单、话单等数据。具体的账单可以如下表1.1所示,话单可以如下表1.2所示:
表1.1:
时间 | 转出/转入 | 相关账号 | 相关金额 |
2019.3.2 | 转出 | 6238847232… | 32万 |
2019.3.3 | 转出 | 6238847232… | 43万 |
2019.4.2 | 转入 | 6238847232… | 62万 |
… |
表1.2:
时间 | 拨出/接入 | 相关电话号码 | 通话时长 |
2019.3.2 | 拨出 | 13483475… | 01:20:00 |
2019.3.3 | 接入 | 030-83475… | 00:20:02 |
2019.4.2 | 接入 | 030-83475… | 00:10:08 |
… |
在生成任务过程中,根据研判算法的不同,每个研判算法可以单独作为一个任务生成,也可以将这些任务组成一个总的任务包。
任务数据可以包括任务的标识ID、研判调用的算法关键字或标识ID、研判参数等任务需要的其他相关信息。
具体可以如下表1.3所示:
表1.3
以表1.1的账单处理为例:
用户通过操作界面前端向业务管理平台发起资金模型研判任务,传入账单/研判对象身份信息。业务管理平台收到任务请求以后,解析参数,找到研判目标的唯一ID,组建资金分析任务包,任务流程同上述的话单分析举例类似,本申请实施例在此不做赘述。
操作界面前端调用账单分析服务,后台接收请求,资金分析模型有与涉毒人员交易、后半夜交易、高危地区转账等。其中,高危地区转账,指通过高危地区的ATM或者网点转账。
业务管理平台创建研判任务,可以使用任务包,主任务为资金分析标识,子任务为与涉毒人员交易、后半夜交易和高危地区转账标识,对于每个子任务分别创建一个ID以便对返回的结果进行匹配,也可以将每个子任务单独作为一个任务。业务管理平台将研判任务存入redis,并将研判任务发送到任务分派消息队列。
算法执行节点获取到任务后,调取相应的算法模型进行分析,得到最后的得分填入执行结果中,将执行结果填入任务数据包中,发送到任务反馈消息队列。
业务管理平台读取到任务的执行结果,寻找redis中对应的任务,填写执行结果,redis数据库中key即是任务ID,value即是任务包数据包。业务管理平台调用解码器,对相应算法的执行结果进行解码,解码器就是根据算法模型标识,调用相应的解码规则,将执行结果记录入数据库,对分数进行加总等一系列操作。
由于算法模型反馈是异步的,所以每次收到一个任务结果就会对相应的字段进行修改,重新计算目标总分。
这样就完成了资金模型分析。
对于表1.2中的话单处理,任务流程与表1.1的资金研判任务相同,主要区别是将分析的素材从账单转为话单,算法模型变为与涉毒人员通话、高危地区通话、后半夜通话等,其余的流程与与表1.1的资金研判任务相同。
3、业务管理平台生成任务数据包之后,在缓存数据库中建立一个以任务ID为主键的记录,并通过消息中间件接口将任务包发送至任务分派消息队列。
4、算法执行节点从任务分派消息队列中获取任务数据包,根据任务要求从基础数据库中获取数据完成研判任务,并将结果发送至任务反馈消息队列中。
5、业务管理平台获取任务反馈消息队列,对反馈的任务包数据进行解析,读取任务数据包中的任务ID来更新缓存数据库中的数据,缓存数据库中有任务ID的记录条目中加入任务反馈的数据信息。
本申请的发明人注意到:当分布式部署的时候,任务反馈不能确定是由哪个节点获取并处理的,对于需要实时反馈给前端的数据而言,采用上述方式就可以通过缓存数据库实时获取任务的反馈。
对于异步处理的任务,本申请实施例可以根据任务的关键字或者ID,调用相应的解析模块。比如话单分析中,与隐毒人员通话这个研判任务的数据返回,调用针对该任务的解析模块,解析算法结果,对数据库中该研判对象的该条积分记录进行更新,并更新该研判人员的累积总分,以此类推,当获取到所有基于账单和话单的研判结果以后,该人员的所有积分记录都得到更新,每次更新,都将获得一个新的研判总分。
最终,隐毒人员分析的异步研判任务完成。
6、用户交互界面通过检索隐毒人员账号、手机号或者身份证号码来查询该研判对象的隐毒积分及其明细,根据分数情况来判断该研判对象是否为隐毒人员。
本申请实施例提供了一种基于消息中间件的分布式研判系统架构,可以实现任务的异步分发和结果反馈。为了完成任务的实时响应,本申请实施例增加了缓存数据库的机制,记录业务处理的中间数据,当业务需要实时反馈时,只需要读取缓存数据库中的存储的业务结果数据就可以将结果展示给前端,不需要业务管理平台与算法执行节点保持长连接来完成业务的实时反馈。本申请实施例利用消息中间件机制,分离了业务管理平台与算法执行节点,让业务管理平台与算法执行节点只需要关注消息队列,这样简化了整个研判系统的分布式部署方式,只需要增加或者删除节点就可以扩大或者缩小分布式规模。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种分布式研判系统,其特征在于,包括:业务管理平台、数据存储装置、消息中间件、以及一个或多个执行节点,
所述数据存储装置包括第一存储装置和第二存储装置,所述第一存储装置预先存储有若干被监控主体的相关信息,所述第二存储装置用于存储任务分派消息队列和任务反馈消息队列;其中,所述第一存储装置预先存储的所述若干被监控主体的相关信息,包括以下一个或多个:被监控主体的金融账号信息、通话记录、身份信息、联系方式、活动区域;
所述业务管理平台包括接收模块、任务生成模块、发送模块和获取模块,其中,所述接收模块,用于接收研判对象的相关信息;
所述任务生成模块,用于根据所述研判对象与所述被监控主体的通话记录生成第一研判任务包;和/或,根据所述研判对象与所述被监控主体的金融账号信息生成第二研判任务包;和/或,根据所述研判对象与所述被监控主体的活动区域生成第三研判任务包;所述研判对象的研判任务包根据预设研判算法的不同包括有一个或多个研判任务;
所述发送模块,用于将所述研判对象的研判任务包通过所述消息中间件的接口发送至任务分派消息队列;
所述执行节点,用于从所述任务分派消息队列中获取所述研判对象的研判任务,根据任务要求从所述第一存储装置中获取数据执行研判任务,并将研判结果发送至所述任务反馈消息队列;
所述获取模块,用于从所述任务反馈消息队列获取研判结果,所述研判结果包括每个研判任务的执行结果。
2.根据权利要求1所述的分布式研判系统,其特征在于,所述业务管理平台进一步包括:
处理模块,用于根据所述研判结果获取每个研判任务的标识,并根据所述研判任务的标识将所述研判任务的执行结果增加至所述第二存储装置中所述任务分派消息队列中的所述研判任务的数据中。
3.根据权利要求1所述的分布式研判系统,其特征在于,所述执行节点根据任务要求执行研判任务,包括:根据第一研判任务包、第二研判任务包和/或第三研判任务包、以及各研判任务包的权重,计算得到研判对象的研判结果。
4.根据权利要求3所述的分布式研判系统,其特征在于,所述根据所述研判对象与所述被监控主体的通话记录生成第一研判任务包,包括:
根据所述研判对象与已知的涉毒人员的通话记录,生成第一研判任务;
根据所述研判对象在涉毒区域内的通话记录,生成第二研判任务;
根据所述研判对象在预设时间范围内的通话记录,生成第三研判任务;
所述第一研判任务包的权重为根据所述第一研判任务的权重、第二研判任务的权重、以及第三研判任务的权重计算得到;
所述研判对象的研判结果为所述研判对象是否为涉毒人员。
5.一种分布式研判方法,其特征在于,包括:
业务管理平台接收研判对象的相关信息;根据所述研判对象与被监控主体的通话记录生成第一研判任务包;和/或,根据所述研判对象与所述被监控主体的金融账号信息生成第二研判任务包;和/或,根据所述研判对象与所述被监控主体的活动区域生成第三研判任务包;所述研判对象的研判任务包根据预设研判算法的不同包括有一个或多个研判任务;将所述研判对象的研判任务包通过消息中间件的接口发送至第二存储装置的任务分派消息队列;并从所述第二存储装置的任务反馈消息队列获取研判结果,所述研判结果包括每个研判任务的执行结果;
一个或多个执行节点从所述任务分派消息队列中获取所述研判对象的研判任务,根据任务要求从第一存储装置中获取数据执行研判任务,并将研判结果发送至所述任务反馈消息队列;所述第一存储装置预先存储有若干被监控主体的相关信息,其中,所述第一存储装置预先存储的所述若干被监控主体的相关信息,包括以下一个或多个:被监控主体的金融账号信息、通话记录、身份信息、联系方式、活动区域。
6.根据权利要求5所述的方法,其特征在于,进一步包括:
所述业务管理平台根据所述研判结果获取每个研判任务的标识,并根据所述研判任务的标识将所述研判任务的执行结果增加至所述第二存储装置中所述任务分派消息队列中的所述研判任务的数据中。
7.根据权利要求5所述的方法,其特征在于,
所述一个或多个执行节点根据任务要求执行研判任务包括:根据第一研判任务包、第二研判任务包和/或第三研判任务包、以及各研判任务包的权重,计算得到研判对象的研判结果。
8.根据权利要求7所述的方法,其特征在于,所述业务管理平台根据所述研判对象与所述被监控主体的通话记录生成第一研判任务包,包括:根据所述研判对象与已知的涉毒人员的通话记录,生成第一研判任务;根据所述研判对象在涉毒区域内的通话记录,生成第二研判任务;根据所述研判对象在预设时间范围内的通话记录,生成第三研判任务;所述第一研判任务包的权重为根据所述第一研判任务的权重、第二研判任务的权重、以及第三研判任务的权重计算得到;所述研判对象的研判结果为所述研判对象是否为涉毒人员。
9.一种计算机存储介质,其特征在于,其上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求5至8任一所述方法的步骤。
10.一种电子设备,其特征在于,包括存储器、以及一个或多个处理器,所述存储器用于存储一个或多个程序;所述一个或多个程序被所述一个或多个处理器执行时,实现如权利要求5至8任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910630426.8A CN110427354B (zh) | 2019-07-12 | 2019-07-12 | 一种分布式研判系统、方法及计算机存储介质、电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910630426.8A CN110427354B (zh) | 2019-07-12 | 2019-07-12 | 一种分布式研判系统、方法及计算机存储介质、电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110427354A CN110427354A (zh) | 2019-11-08 |
CN110427354B true CN110427354B (zh) | 2022-04-15 |
Family
ID=68409325
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910630426.8A Active CN110427354B (zh) | 2019-07-12 | 2019-07-12 | 一种分布式研判系统、方法及计算机存储介质、电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110427354B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111061461B (zh) * | 2019-12-16 | 2023-09-26 | 武汉云辅材科技有限公司 | 一种零售连锁响应式系统 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103780655A (zh) * | 2012-10-24 | 2014-05-07 | 阿里巴巴集团控股有限公司 | 一种消息传递接口任务和资源调度系统及方法 |
CN106656863A (zh) * | 2016-12-31 | 2017-05-10 | 广东欧珀移动通信有限公司 | 业务监控方法、装置和计算机设备 |
CN107092522A (zh) * | 2017-03-30 | 2017-08-25 | 阿里巴巴集团控股有限公司 | 实时数据的计算方法及装置 |
CN107479984A (zh) * | 2016-09-29 | 2017-12-15 | 北京超图软件股份有限公司 | 基于消息的分布式空间数据处理系统 |
CN109327509A (zh) * | 2018-09-11 | 2019-02-12 | 武汉魅瞳科技有限公司 | 一种主/从架构的低耦合的分布式流式计算框架 |
-
2019
- 2019-07-12 CN CN201910630426.8A patent/CN110427354B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103780655A (zh) * | 2012-10-24 | 2014-05-07 | 阿里巴巴集团控股有限公司 | 一种消息传递接口任务和资源调度系统及方法 |
CN107479984A (zh) * | 2016-09-29 | 2017-12-15 | 北京超图软件股份有限公司 | 基于消息的分布式空间数据处理系统 |
CN106656863A (zh) * | 2016-12-31 | 2017-05-10 | 广东欧珀移动通信有限公司 | 业务监控方法、装置和计算机设备 |
CN107092522A (zh) * | 2017-03-30 | 2017-08-25 | 阿里巴巴集团控股有限公司 | 实时数据的计算方法及装置 |
CN109327509A (zh) * | 2018-09-11 | 2019-02-12 | 武汉魅瞳科技有限公司 | 一种主/从架构的低耦合的分布式流式计算框架 |
Also Published As
Publication number | Publication date |
---|---|
CN110427354A (zh) | 2019-11-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107609708B (zh) | 一种基于手机游戏商店的用户流失预测方法及系统 | |
CN109767322A (zh) | 基于大数据的可疑交易分析方法、装置和计算机设备 | |
CN108647962A (zh) | 征信系统、征信数据的存储方法、装置、设备及介质 | |
CN107145587A (zh) | 一种基于大数据挖掘的医保反欺诈系统 | |
CN106651213B (zh) | 服务订单的处理方法及装置 | |
CN111340542B (zh) | 资源的分配方法和装置、存储介质、电子装置 | |
US11068885B2 (en) | Method and system for deanomymizing cryptocurrency users by analyzing bank transfers to a cryptocurrency exchange | |
US10706704B1 (en) | Utilizing a high generation cellular network for identifying devices associated with unauthorized activities and notifying enterprise facilities | |
CN111476460B (zh) | 一种银行自助设备智慧运营调度的方法、设备和介质 | |
CN109784316B (zh) | 一种追溯地铁闸机逃票的方法、装置及存储介质 | |
Voican | Credit Card Fraud Detection using Deep Learning Techniques. | |
CN111161104A (zh) | 一种社区用户画像的生成方法及装置 | |
CN109685336A (zh) | 催收任务分配方法、装置、计算机设备及存储介质 | |
CN107729448A (zh) | 一种基于数据仓库的数据处理系统 | |
CN110427354B (zh) | 一种分布式研判系统、方法及计算机存储介质、电子设备 | |
CN114626735A (zh) | 催收案件分配方法、装置、设备及计算机可读存储介质 | |
CN108737138A (zh) | 服务提供方法及服务平台 | |
CN113792089A (zh) | 基于人工智能的非法行为检测方法、装置、设备及介质 | |
CN113343058A (zh) | 语音会话监管方法、装置、计算机设备及存储介质 | |
CN117094764A (zh) | 银行积分处理方法及装置 | |
CN110706122A (zh) | 基于大数据分析提升社保代理效率方法、设备及可读介质 | |
CN110399818A (zh) | 一种风险预测的方法和设备 | |
CN110046233A (zh) | 问题派发方法及装置 | |
CN114372892A (zh) | 支付数据监控方法、装置、设备及介质 | |
CN113450011A (zh) | 任务分配方法和装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |