交易报文规范性监控方法

文档序号:9826303阅读:322来源:国知局
交易报文规范性监控方法
【技术领域】
[0001] 本发明涉及金融交易技术领域,更具体地说,涉及一种交易报文规范性监控方法。
【背景技术】
[0002] 金融机构之间一般采用IS08583报文标准进行信息交换,在实际生产中,接入机 构的交易报文存在着一定的不规范的现象,如域值的长度、域值的取值、域值之间的关联关 系等都可能存在不同。这些现象给银行卡交易的成功率和稳定性带来一定风险。业界需要 通过一种监控方法,能够在机构接入测试环境和生产环境中对机构之间的交易报文进行监 控并找出不规范之处,以期推动相关机构进行改造,从而提高银行卡的交易质量以及推动 整个产业和市场的规范化。
[0003] 传统的银行卡组织的生产环节中,交易质量监控只限于针对数据库中的交易日志 表监控应答是否成功,且交易日志表并不是交易的原始数据,可能会经由交易系统处理后 产生形变。现有技术中未提供监控交易报文规范性的方法。
[0004] 此外,将交易报文规范性翻译成机器语言是一个难点,而且传统的IT技术无法满 足对海量报文规范性进行监控的超高数据量、运算量以及时效性的要求。
[0005] 因此,本领域技术人员期望获得一种能克服上述缺陷的交易报文规范性监控方 法。

【发明内容】

[0006] 本发明的目的在于提供一种交易报文规范性监控方法。
[0007] 为实现上述目的,本发明提供一种技术方案如下:
[0008] -种交易报文规范性监控方法,包括如下步骤:a)、从金融机构之间的通信日志中 获取多个交易报文;b)、针对每一交易报文,分别提取至少一个布尔表达式;其中,布尔表 达式指示该交易报文中的交易特征和/或交易特征之间的关系;c)、针对每一交易报文,分 别校验各布尔表达式的真假,以生成校验结果明细库;d)、对校验结果明细库进行数据统 计,以生成校验结果统计库;e)、基于校验结果统计库生成交易报文规范性监控报表。
[0009] 优选地,步骤b)包括针对每一交易报文执行如下步骤:以一级运算符为一级分割 点从该交易报文提取两个一级表达式;以二级运算符为二级分割点从每一一级表达式提取 至少一个布尔表达式。
[0010] 优选地,步骤C)包括针对每一交易报文执行如下步骤:依次校验各布尔表达式的 真假,至任一布尔表达式为假时停止,以形成一条校验结果并将该校验结果存入校验结果 明细库中。
[0011] 优选地,步骤d)包括:依据校验结果对应的机构代码中的地区码,针对校验结果 明细库中记录的各校验结果,统计各省份的报文规范率,和/或根据机构代码中的银行码, 统计各银行的报文规范率。
[0012] 优选地,步骤b)、步骤c)基于Hadoop分布式计算平台实现。
[0013] 本发明实施例提供的交易报文规范性监控方法,通过从交易报文中提取多个布尔 表达式进行校验,而以相对简单的实施方式实现了对金融机构之间交易报文的规范性的监 控,且这种提取及校验方式易于维护及扩展。此外,通过利用Hadoop分布式计算平台能够 高效地完成上述提取及校验过程,可满足超高数据量以及高时效性的要求。
【附图说明】
[0014] 图1示出本发明第一实施例提供的交易报文规范性监控方法的流程图。
[0015] 图2示出本发明第一实施例提供的交易报文规范性监控方法的数据流向图。
【具体实施方式】
[0016] 如图1所示,并结合图2的数据流向图,本发明第一实施例提供的交易报文规范性 监控方法,用于监控金融机构之间通信报文的规范性,其包括如下步骤:
[0017] 步骤S10、从金融机构之间的通信日志中获取多个交易报文101。
[0018] 最初,金融机构之间的通信日志存储于Hadoop环境所提供的HDFS (Hadoop Distributed File System,简称 HDFS)中。
[0019] 本领域技术人员理解,Hadoop实现了一个分布式文件系统,其具有高容错性的特 点,并且设计用来部署在低廉的硬件上;它提供高吞吐量来访问应用程序的数据,适合那些 有着超大数据集的应用程序。Hadoop框架下,HDFS为海量的数据提供了存储,Map/Reduce 为海量的数据提供了计算。
[0020] 例如,银联卡交易系统每天呈现驼峰式的交易特点,在每天上午、下午各有波峰 (类似正弦曲线),一般在早晨9点到晚上22点交易量最大,设计MapKey时使用分+秒组 合的形式作为MapKey的第一域,既可以保证交易的均分,又能避免内存溢出的情况,从而 可实现系统资源的均衡调度。
[0021] 步骤S11、针对每一交易报文101,分别提取至少一个布尔表达式;其中,布尔表达 式指示该交易报文中的交易特征和/或交易特征之间的关系。
[0022] 依据事先确定的交易报文解释规则100,对交易报文101进行解释并可从交易报 文的各个域值中提取相应的布尔表达式。例如,该步骤具体包括针对每一交易报文101执 行如下步骤:以一级运算符为一级分割点从该交易报文提取两个一级表达式;以二级运算 符为二级分割点从每一一级表达式提取至少一个布尔表达式。
[0023] 例如,一级运算符为因果运算符"=>",二级运算符为与运算符"&",一级表达式 包括条件表达式和结果表达式。即,以一级运算符进行拆分可从交易报文中提取出条件表 达式或结果表达式,以二级运算符进行拆分可从条件表达式和结果表达式中进一步提取出 下位的布尔表达式。
[0024] 步骤S12、针对每一交易报文101,分别校验各布尔表达式的真假,以生成校验结 果明细库。
[0025] 若某一交易报文存在不规范之处,在本文所述的多个"布尔表达式"中,应至少存 在一个布尔表达式的结果为FALSE。
[0026] 基于步骤S11所提取的、指示交易特征或其相互关系的多个布尔表达式,该步骤 S12包括针对每一交易报文执行如下步骤:依次校验各布尔表达式的真假,至任一布尔表 达式为假(FALSE)时停止,以形成一条校验结果并将该校验结果存入校验结果明细库102 中。校验结果明细库102可基于HIVE工具实现。
[0027] 其中,校验结果可包括机构代码、交易类型代码等。
[0028] 步骤S13、对校验结果明细库102进行数据统计,以生成校验结果统计库200。
[0029] 具体地,依据HQL语句查询,可对校验结果明细库102中的校验结果进行数据统 计,生成校验结果统计库200。
[0030] 上述统计包括如下步骤中至少一项:依据校验结果对应的机构代码中的地区码, 针对校验结果明细库中记录的各校验结果,统计各省份的报文规范率;根据机构代码中的 银行码,统计各银行的报文规范率。
[0031] 同样,根据机构代码中的其他下级地区码、机构码,还可统计各级机构的报文规范 率,根据校验
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1