证券异常交易行为监控系统。九州证券系统开发部自主设计、研发的证券异常交易行为监控系统,采用Storm+Esper架构实现,支持金证交易系统的指令拦截 、复制与解析。
异常交易行为监控系统主要分为交易指令处理层、事前风控子系统、事中风控子系统、事后风控子系统、风控的web子系统。异常交易行为监控系统直接拦截和旁路集中交易系统的用户交易指令,并交给不同的风控子系统处理。
1.交易指令处理层
交易指令处理层主要是衔接集中交易系统和下游事前风控子系统与事中风控子系统的桥梁。对于事前风控子系统,交易指令处理层将集中交易系统中拦截到的交易指令发送给事前风控子系统,并将事前风控子系统的对用户本次交易行为的处理结果返回给集中交易系统的应答队列。对于事中风控之系统,交易指令处理层将从集中交易系统旁路出来的用户交易指令发送给事中风控分析接入层,事中风控子系统接到用户的交易指令后对用户的交易行为进行风控模型的计算。
集中交易系统指令旁路及拦截拓扑图:
消息队列 说明
req_acc 应用请求消息队列
resp_acc 应用应答消息队列
req_fk 事前风控过滤后的请求消息队列
resp_fk 应答消息队列
req_replica 应用请求消息的复制队列
storm介绍
Storm是一个免费并开源的分布式实时计算系统。利用Storm可以很容易做到可靠地处理无限的数据流,像Hadoop批量处理大数据一样,Storm可以实时处理数据。
在异常交易行为监控系统里,storm主要用在事中风控子系统里,负责任务的管理及分配。
storm架构图:
Esper介绍
Esper是一种cep(复杂事件处理)引擎。从成熟度以及规则语法上手速度,我们选择了业界广泛使用的且有着类SQL语法的EsperTech Esper(规则用EPL语句表达)作为CEP开发引擎。其他的开源CEP引擎还有JBoss Drools Fusion/Siddhi等。
数据窗口机制完善,Esper目前支持大约30种数据窗口,下面表格列出常用的几种:
EPL语句的语法与SQL相似,事件处理语言(EPL)是SQL标准语言并做了扩展,提供了SELECT、 FROM、 WHERE、 GROUP BY、HAVING和 ORDER BY等子句。
目前开源的规则在doc目录下epl_opensource.xlsx中有说明
目前开源的规则有:
系统详细的使用在doc目录下使用说明书.docx中有说明。