交易報(bào)文規(guī)范性監(jiān)控方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及金融交易技術(shù)領(lǐng)域,更具體地說(shuō),涉及一種交易報(bào)文規(guī)范性監(jiān)控方法。
【背景技術(shù)】
[0002] 金融機(jī)構(gòu)之間一般采用IS08583報(bào)文標(biāo)準(zhǔn)進(jìn)行信息交換,在實(shí)際生產(chǎn)中,接入機(jī) 構(gòu)的交易報(bào)文存在著一定的不規(guī)范的現(xiàn)象,如域值的長(zhǎng)度、域值的取值、域值之間的關(guān)聯(lián)關(guān) 系等都可能存在不同。這些現(xiàn)象給銀行卡交易的成功率和穩(wěn)定性帶來(lái)一定風(fēng)險(xiǎn)。業(yè)界需要 通過(guò)一種監(jiān)控方法,能夠在機(jī)構(gòu)接入測(cè)試環(huán)境和生產(chǎn)環(huán)境中對(duì)機(jī)構(gòu)之間的交易報(bào)文進(jìn)行監(jiān) 控并找出不規(guī)范之處,以期推動(dòng)相關(guān)機(jī)構(gòu)進(jìn)行改造,從而提高銀行卡的交易質(zhì)量以及推動(dòng) 整個(gè)產(chǎn)業(yè)和市場(chǎng)的規(guī)范化。
[0003] 傳統(tǒng)的銀行卡組織的生產(chǎn)環(huán)節(jié)中,交易質(zhì)量監(jiān)控只限于針對(duì)數(shù)據(jù)庫(kù)中的交易日志 表監(jiān)控應(yīng)答是否成功,且交易日志表并不是交易的原始數(shù)據(jù),可能會(huì)經(jīng)由交易系統(tǒng)處理后 產(chǎn)生形變。現(xiàn)有技術(shù)中未提供監(jiān)控交易報(bào)文規(guī)范性的方法。
[0004] 此外,將交易報(bào)文規(guī)范性翻譯成機(jī)器語(yǔ)言是一個(gè)難點(diǎn),而且傳統(tǒng)的IT技術(shù)無(wú)法滿 足對(duì)海量報(bào)文規(guī)范性進(jìn)行監(jiān)控的超高數(shù)據(jù)量、運(yùn)算量以及時(shí)效性的要求。
[0005] 因此,本領(lǐng)域技術(shù)人員期望獲得一種能克服上述缺陷的交易報(bào)文規(guī)范性監(jiān)控方 法。
【發(fā)明內(nèi)容】
[0006] 本發(fā)明的目的在于提供一種交易報(bào)文規(guī)范性監(jiān)控方法。
[0007] 為實(shí)現(xiàn)上述目的,本發(fā)明提供一種技術(shù)方案如下:
[0008] -種交易報(bào)文規(guī)范性監(jiān)控方法,包括如下步驟:a)、從金融機(jī)構(gòu)之間的通信日志中 獲取多個(gè)交易報(bào)文;b)、針對(duì)每一交易報(bào)文,分別提取至少一個(gè)布爾表達(dá)式;其中,布爾表 達(dá)式指示該交易報(bào)文中的交易特征和/或交易特征之間的關(guān)系;c)、針對(duì)每一交易報(bào)文,分 別校驗(yàn)各布爾表達(dá)式的真假,以生成校驗(yàn)結(jié)果明細(xì)庫(kù);d)、對(duì)校驗(yàn)結(jié)果明細(xì)庫(kù)進(jìn)行數(shù)據(jù)統(tǒng) 計(jì),以生成校驗(yàn)結(jié)果統(tǒng)計(jì)庫(kù);e)、基于校驗(yàn)結(jié)果統(tǒng)計(jì)庫(kù)生成交易報(bào)文規(guī)范性監(jiān)控報(bào)表。
[0009] 優(yōu)選地,步驟b)包括針對(duì)每一交易報(bào)文執(zhí)行如下步驟:以一級(jí)運(yùn)算符為一級(jí)分割 點(diǎn)從該交易報(bào)文提取兩個(gè)一級(jí)表達(dá)式;以二級(jí)運(yùn)算符為二級(jí)分割點(diǎn)從每一一級(jí)表達(dá)式提取 至少一個(gè)布爾表達(dá)式。
[0010] 優(yōu)選地,步驟C)包括針對(duì)每一交易報(bào)文執(zhí)行如下步驟:依次校驗(yàn)各布爾表達(dá)式的 真假,至任一布爾表達(dá)式為假時(shí)停止,以形成一條校驗(yàn)結(jié)果并將該校驗(yàn)結(jié)果存入校驗(yàn)結(jié)果 明細(xì)庫(kù)中。
[0011] 優(yōu)選地,步驟d)包括:依據(jù)校驗(yàn)結(jié)果對(duì)應(yīng)的機(jī)構(gòu)代碼中的地區(qū)碼,針對(duì)校驗(yàn)結(jié)果 明細(xì)庫(kù)中記錄的各校驗(yàn)結(jié)果,統(tǒng)計(jì)各省份的報(bào)文規(guī)范率,和/或根據(jù)機(jī)構(gòu)代碼中的銀行碼, 統(tǒng)計(jì)各銀行的報(bào)文規(guī)范率。
[0012] 優(yōu)選地,步驟b)、步驟c)基于Hadoop分布式計(jì)算平臺(tái)實(shí)現(xiàn)。
[0013] 本發(fā)明實(shí)施例提供的交易報(bào)文規(guī)范性監(jiān)控方法,通過(guò)從交易報(bào)文中提取多個(gè)布爾 表達(dá)式進(jìn)行校驗(yàn),而以相對(duì)簡(jiǎn)單的實(shí)施方式實(shí)現(xiàn)了對(duì)金融機(jī)構(gòu)之間交易報(bào)文的規(guī)范性的監(jiān) 控,且這種提取及校驗(yàn)方式易于維護(hù)及擴(kuò)展。此外,通過(guò)利用Hadoop分布式計(jì)算平臺(tái)能夠 高效地完成上述提取及校驗(yàn)過(guò)程,可滿足超高數(shù)據(jù)量以及高時(shí)效性的要求。
【附圖說(shuō)明】
[0014] 圖1示出本發(fā)明第一實(shí)施例提供的交易報(bào)文規(guī)范性監(jiān)控方法的流程圖。
[0015] 圖2示出本發(fā)明第一實(shí)施例提供的交易報(bào)文規(guī)范性監(jiān)控方法的數(shù)據(jù)流向圖。
【具體實(shí)施方式】
[0016] 如圖1所示,并結(jié)合圖2的數(shù)據(jù)流向圖,本發(fā)明第一實(shí)施例提供的交易報(bào)文規(guī)范性 監(jiān)控方法,用于監(jiān)控金融機(jī)構(gòu)之間通信報(bào)文的規(guī)范性,其包括如下步驟:
[0017] 步驟S10、從金融機(jī)構(gòu)之間的通信日志中獲取多個(gè)交易報(bào)文101。
[0018] 最初,金融機(jī)構(gòu)之間的通信日志存儲(chǔ)于Hadoop環(huán)境所提供的HDFS (Hadoop Distributed File System,簡(jiǎn)稱 HDFS)中。
[0019] 本領(lǐng)域技術(shù)人員理解,Hadoop實(shí)現(xiàn)了一個(gè)分布式文件系統(tǒng),其具有高容錯(cuò)性的特 點(diǎn),并且設(shè)計(jì)用來(lái)部署在低廉的硬件上;它提供高吞吐量來(lái)訪問(wèn)應(yīng)用程序的數(shù)據(jù),適合那些 有著超大數(shù)據(jù)集的應(yīng)用程序。Hadoop框架下,HDFS為海量的數(shù)據(jù)提供了存儲(chǔ),Map/Reduce 為海量的數(shù)據(jù)提供了計(jì)算。
[0020] 例如,銀聯(lián)卡交易系統(tǒng)每天呈現(xiàn)駝峰式的交易特點(diǎn),在每天上午、下午各有波峰 (類似正弦曲線),一般在早晨9點(diǎn)到晚上22點(diǎn)交易量最大,設(shè)計(jì)MapKey時(shí)使用分+秒組 合的形式作為MapKey的第一域,既可以保證交易的均分,又能避免內(nèi)存溢出的情況,從而 可實(shí)現(xiàn)系統(tǒng)資源的均衡調(diào)度。
[0021] 步驟S11、針對(duì)每一交易報(bào)文101,分別提取至少一個(gè)布爾表達(dá)式;其中,布爾表達(dá) 式指示該交易報(bào)文中的交易特征和/或交易特征之間的關(guān)系。
[0022] 依據(jù)事先確定的交易報(bào)文解釋規(guī)則100,對(duì)交易報(bào)文101進(jìn)行解釋并可從交易報(bào) 文的各個(gè)域值中提取相應(yīng)的布爾表達(dá)式。例如,該步驟具體包括針對(duì)每一交易報(bào)文101執(zhí) 行如下步驟:以一級(jí)運(yùn)算符為一級(jí)分割點(diǎn)從該交易報(bào)文提取兩個(gè)一級(jí)表達(dá)式;以二級(jí)運(yùn)算 符為二級(jí)分割點(diǎn)從每一一級(jí)表達(dá)式提取至少一個(gè)布爾表達(dá)式。
[0023] 例如,一級(jí)運(yùn)算符為因果運(yùn)算符"=>",二級(jí)運(yùn)算符為與運(yùn)算符"&",一級(jí)表達(dá)式 包括條件表達(dá)式和結(jié)果表達(dá)式。即,以一級(jí)運(yùn)算符進(jìn)行拆分可從交易報(bào)文中提取出條件表 達(dá)式或結(jié)果表達(dá)式,以二級(jí)運(yùn)算符進(jìn)行拆分可從條件表達(dá)式和結(jié)果表達(dá)式中進(jìn)一步提取出 下位的布爾表達(dá)式。
[0024] 步驟S12、針對(duì)每一交易報(bào)文101,分別校驗(yàn)各布爾表達(dá)式的真假,以生成校驗(yàn)結(jié) 果明細(xì)庫(kù)。
[0025] 若某一交易報(bào)文存在不規(guī)范之處,在本文所述的多個(gè)"布爾表達(dá)式"中,應(yīng)至少存 在一個(gè)布爾表達(dá)式的結(jié)果為FALSE。
[0026] 基于步驟S11所提取的、指示交易特征或其相互關(guān)系的多個(gè)布爾表達(dá)式,該步驟 S12包括針對(duì)每一交易報(bào)文執(zhí)行如下步驟:依次校驗(yàn)各布爾表達(dá)式的真假,至任一布爾表 達(dá)式為假(FALSE)時(shí)停止,以形成一條校驗(yàn)結(jié)果并將該校驗(yàn)結(jié)果存入校驗(yàn)結(jié)果明細(xì)庫(kù)102 中。校驗(yàn)結(jié)果明細(xì)庫(kù)102可基于HIVE工具實(shí)現(xiàn)。
[0027] 其中,校驗(yàn)結(jié)果可包括機(jī)構(gòu)代碼、交易類型代碼等。
[0028] 步驟S13、對(duì)校驗(yàn)結(jié)果明細(xì)庫(kù)102進(jìn)行數(shù)據(jù)統(tǒng)計(jì),以生成校驗(yàn)結(jié)果統(tǒng)計(jì)庫(kù)200。
[0029] 具體地,依據(jù)HQL語(yǔ)句查詢,可對(duì)校驗(yàn)結(jié)果明細(xì)庫(kù)102中的校驗(yàn)結(jié)果進(jìn)行數(shù)據(jù)統(tǒng) 計(jì),生成校驗(yàn)結(jié)果統(tǒng)計(jì)庫(kù)200。
[0030] 上述統(tǒng)計(jì)包括如下步驟中至少一項(xiàng):依據(jù)校驗(yàn)結(jié)果對(duì)應(yīng)的機(jī)構(gòu)代碼中的地區(qū)碼, 針對(duì)校驗(yàn)結(jié)果明細(xì)庫(kù)中記錄的各校驗(yàn)結(jié)果,統(tǒng)計(jì)各省份的報(bào)文規(guī)范率;根據(jù)機(jī)構(gòu)代碼中的 銀行碼,統(tǒng)計(jì)各銀行的報(bào)文規(guī)范率。
[0031] 同樣,根據(jù)機(jī)構(gòu)代碼中的其他下級(jí)地區(qū)碼、機(jī)構(gòu)碼,還可統(tǒng)計(jì)各級(jí)機(jī)構(gòu)的報(bào)文規(guī)范 率,根據(jù)校驗(yàn)