一种金融业务应用数据模型系统及其控制方法与流程

文档序号:16539629发布日期:2019-01-08 20:14阅读:237来源:国知局
一种金融业务应用数据模型系统及其控制方法与流程

本发明涉及大数据分析技术领域,具体来说是一种金融业务应用数据模型系统及其控制方法。



背景技术:

数据模型是现实世界数据特征的抽象,用于描述一组数据的概念和定义。数据模型是数据库中数据的存储方式,是数据库系统的基础。在数据库中,数据的物理结构又称数据的存储结构,是数据元素在计算机存储器中的表示及其配置;数据的逻辑结构则是指数据元素之间的逻辑关系,它是数据在用户或程序员面前的表现形式,数据的存储结构不一定与逻辑结构一致。任何系统都离不开数据模型的研发,好的数据模型更能够体现系统的先进性。

在金融数据分析领域,由于金融数据安全性、准确性的特殊需要,数据模型的设计则显得尤为重要。传统的金融数据模型系统多基于j2ee架构,使用b/s的访问模式,提供一些规范化、标准化的系统功能文档和api说明。但目前的数据模型系统只是基于数据分析的传统设计,未充分考虑数据传输过程中数据的安全性和完整性。

特别是金融业务应用数据,其区别于底层算法计算数据,金融业务应用数据涉及到客户端至服务器的传输、验证、响应、回馈等多环节。目前针对于金融业务应用数据而言,数据安全性和传输完整性多交给网络安全服务硬件(防火墙)或协议(传输协议)进行保证和校验,而数据模型系统自身不带有安全性和完整性的设计考虑。

因此,如何针对应用数据模型系统进行安全性和数据完整性考虑设计已经成为急需解决的技术问题。



技术实现要素:

本发明的目的是为了解决现有技术中应用数据模型系统自身不带有安全性和数据完整性设计的缺陷,提供一种金融业务应用数据模型系统及其控制方法来解决上述问题。

为了实现上述目的,本发明的技术方案如下:

一种金融业务应用数据模型系统,包括应用层、会话层和数据层,应用层用于定义金融业务数据活动,会话层用于定义数据通信协议和传输,数据层用于存储金融算法库;应用层包括资产定义模块、交易管理模块、核算模块和清算模块,数据层包括服务器、金融算法库和计算节点;应用层通过会话层与数据层进行数据通信。

一种金融业务应用数据模型系统的控制方法,包括以下步骤:

应用层需求的获取,数据层通过会话层获取到应用层的客户需求;

会话层进行incomming序列号的重置,会话层对应用层的incomming序列号和数据层的incomming序列号均进行重置处理;

数据层的数据处理,数据层的服务器对接收的信息进行解析,根据业务需求,生成相应的业务请求信息,调取金融算法库,控制计算节点生成应答信息;

应用层需求的反馈,数据层的服务器通过会话层将应答信息发送至应用层。

所述应用层需求的获取包括以下步骤:

会话层在应用层和数据层分别建立incomming序列号及outgoing序列号,incomming序列号用于检测序列号的乱序或跨越;

应用层的logon阶段,客户通过加密密钥登录应用层;

应用层将资产定义模块、交易管理模块、核算模块或清算模块的请求进行数据打包,每个数据包配套生成一个传输序列号,并对传输序列号按从小到大顺序对数据包进行排列;

会话层将数据包依传输序列号顺序传送至数据层,会话层每传输一个数据包及其配套传输序列号,将其在应用层建立的incomming序列号加1;

数据层依次接收会话层传送的数据包及其配套传输序列号,数据层每接收一个传输序列号,会话层将其在数据层建立的incomming序列号加1;

会话层比较其在应用层和数据层上的incomming序列号;若相同,表示传输成功;若不同,表示数据包丢失,进行重新传送;

会话层将所有数据包发送完后,向数据层发送一个应用层的outgoing序列,数据层接收到序列消息后,向应用层回复一个数据层outgoing序列,双方通信结束。

所述会话层进行incomming序列号的重置包括以下步骤:

会话层通知应用层向数据层的服务器发送incomming重置请求及重置请求时间;

应用层通过会话层向数据层的服务器发送testrequest消息;

数据层的服务器收到testrequest消息后,向应用层回复heartbeat消息;

应用层收到heartbeat消息后,确认连接正常;

应用层向会话层和数据层均发出testrequest消息,强制停止会话层与数据层的连接;

会话层将其在应用层中设的incomming序列号重置,并向数据层的服务器发送reset消息,reset消息包括序列号重置域和nextexceptedseqnumb域,reset消息中的序列号重置域设为y,并且序列号置为1;

数据层收到reset消息后,回复logout消息,数据层的incomming序列号重置,并结束incomming序列号的重置;

应用层恢复会话层与数据层的连接。

所述数据层的数据处理包括以下步骤:

数据层的服务器对数据包进行解析分析,解析出请求信息、广播信息、订单信息、协议域、信息类型定义和数据字典;

服务器根据解析内容,从订单信息和协议域中解析出算法,从信息类型定义和数据字典中解析出数值;

建立dp消息,dp消息格式为〈算法〉=〈数值〉;

服务器调取金融算法库中对应的算法地址,将其地址映射至dp消息中;

服务器将数值的存放地址映射到dp消息中;

服务器将dp消息发送给计算节点,计算节点引入数值和对应算法进行计算;

计算节点返回结果至服务器,服务器生成应答信息。

所述应用层需求的反馈包括以下步骤:

服务器对应答信息进行数据封装打包,应答数据包格式为{数据标签头,应答信息,数据类型,数据长度,数据标签尾};

服务器提取数据类型和数据长度,生成应答域消息,并通过会话层将应答域消息发送至应用层;

应用层解析应答域消息,并等待应答数据包的接收;

服务器将应答数据包通过会话层发送至应用层;

应用层接收应答数据包后进行解析,分析应答信息是否满足应答域消息内容;若满足,表明应答数据包传输完整;若不满足,表明应答数据包传输缺失,进行重新传输。

所述应用层的logon阶段包括以下步骤:

应用层获取客户的加密密钥,应用层将logon消息通过会话层传输到数据层的服务器;

服务器向应用层返回一个logon消息,此logon消息中包括所有密钥信息;

应用层获取服务器返回的logon消息,并核对加密密钥;若核对正确,向服务器发送logon应答消息。

有益效果

本发明的金融业务应用数据模型系统及其控制方法,与现有技术相比在数据模型系统中加入了保证数据安全性和完整性的设计,通过数据包

incomming序列号和传输序列号的设计,保证了数据包传输的完整性;通过会话层进行incomming序列号的重置步骤,在确保序列号传输准确性的同时,还保证了数据包传输的安全性;通过在应用层需求反馈中采用应答域消息的设计,确保了反馈数据的完整性。

本发明通过数据模型系统中应用层、会话层和数据层的三层结构设计,使得系统具有规范性和扩展性的特点,使得基于此开发的系统和使用的资源都有统一的描述和说明,保证了通用性、有效性,促进了优质资源的产生和共享;应用层的设计使得模块的添加更加便利,更加方便了与外部系统的业务交互。

附图说明

图1为本发明的系统结构示意图;

图2为本发明的方法顺序图。

具体实施方式

为使对本发明的结构特征及所达成的功效有更进一步的了解与认识,用以较佳的实施例及附图配合详细的说明,说明如下:

如图1所示,本发明所述的一种金融业务应用数据模型系统,包括应用层、会话层和数据层,应用层通过会话层与数据层进行数据通信。应用层用于定义金融业务数据活动,应用层包括资产定义模块、交易管理模块、核算模块和清算模块,通过层次化的设计,可以使得应用层能够方便地增加相关应用模块。会话层用于定义数据通信协议和传输,在此数据通信协议并非传统的网络传输协议,因为数据模型系统为内部系统,其对外的连接通信为传统的网络传输协议,内部的层次连接通信为本发明所述的控制方法。数据层用于存储金融算法库,数据层包括服务器、金融算法库和计算节点。金融算法库存放金融算法,为金融学相关算法,计算节点用于进行数值计算,以返回应用层的需求,为应用数据模型系统进行应用数据计算服务。

如图2所示,一种金融业务应用数据模型系统的控制方法,包括以下步骤:

第一步,应用层需求的获取,数据层通过会话层获取到应用层的客户需求。其具体步骤如下:

(1)会话层在应用层和数据层分别建立incomming序列号及outgoing序列号,incomming序列号用于检测序列号的乱序或跨越。

为了在数据模型系统内部增加检测数据传输正确性的功能,在此,会话层分别在应用层建立incomming序列号及outgoing序列号,同时在数据层建立incomming序列号及outgoing序列号,以此作为传输数据包完整性正确性的判断。

(2)应用层的logon阶段,客户通过加密密钥登录应用层。

应用层应用于不同客户从客户端的登录,为了实现数据模型系统的安全性功能,在此密钥验证过程不再按传统方式交于服务器进行判断,而是通过应用层从服务器获取相关信息后由应用层进行判断,以此使得客户端用户不直接访问数据层,保证了数据层在会话层阻挡下的安全隔离,以实现数据模型系统的安全性作用。

其中,应用层的logon阶段包括以下步骤:

a1、应用层获取客户的加密密钥,应用层将logon消息通过会话层传输到数据层的服务器,logon消息为获取密钥数据消息。

a2、服务器向应用层返回一个logon消息,此logon消息中包括所有密钥信息。在此,虽然服务器回复的logon消息中包括了所有密钥信息,客户端有获取所有密钥信息的可能性,但基于目前网上银行的密钥验证均采用动态化的方式,即使客户端获取了此次验证的所有密钥信息,对下次非正常登录而言,此次验证的所有密钥信息并无实际使用价值。

a3、应用层获取服务器返回的logon消息,并核对加密密钥;若核对正确,向服务器发送logon应答消息,表示登录验证通过。

(3)应用层将资产定义模块、交易管理模块、核算模块或清算模块的请求进行数据打包,并每个数据包配套生成一个传输序列号,并对传输序列号按从小到大顺序对数据包进行排列。

在此,传输序列号的作用不仅是为了进行有序传输,传输序列号也用于验证会话层在传输数据包时的完整性。例如,若数据层的incomming序列号只以数据包的到达为依据,进行incomming序列号加1操作,那只能表示数据包到达了数据层,但会话层在传输数据包过程中,是否有损坏、完整性如何却无法判断。通过传输序列号的加入,在数据包的传输过程中,即使产生数据损坏,与数据包并非封装结构的传输序列号最先丢失,这样当数据层判断不到传输序列号时,则可以认为数据包的传输过程有损坏,以此来判断会话层是否存在传输错误。

(4)会话层将数据包依传输序列号顺序传送至数据层,会话层每传输一个数据包及其配套传输序列号,将其在应用层建立的incomming序列号加1,通过传输序列号判断会话层是否正确传送。

(5)数据层依次接收会话层传送的数据包及其配套传输序列号,数据层每接收一个传输序列号,会话层将其在数据层建立的incomming序列号加1,同理,以此来判断会话层是否存在传输错误。

(6)会话层比较其在应用层和数据层上的incomming序列号;若相同,表示传输成功;若不同,表示数据包丢失,进行重新传送。针对多个数据包,若应用层上的incomming序列号和数据层上的incomming序列号相同,则说明会话层在传输过程中没有错误发生,即传输成功。

(7)会话层将所有数据包发送完后,向数据层发送一个应用层的outgoing序列,数据层接收到序列消息后,向应用层回复一个数据层outgoing序列,双方通信结束。

第二步,会话层进行incomming序列号的重置。为了配合下一次应用层的需求响应,在每次应用层需求到达数据层后,会话层均要对应用层的incomming序列号和数据层的incomming序列号进行重置处理。其具体步骤如下:

(1)会话层通知应用层向数据层的服务器发送incomming重置请求及重置请求时间。

(2)应用层通过会话层向数据层的服务器发送testrequest消息。

(3)数据层的服务器收到testrequest消息后,向应用层回复heartbeat消息。

(4)应用层收到heartbeat消息后,确认连接正常。

(5)应用层向会话层和数据层均发出testrequest消息,强制停止会话层与数据层的连接,为会话层和数据层的incomming序列号重置作准确。

(6)会话层将其在应用层中设的incomming序列号重置,并向数据层的服务器发送reset消息,

reset消息包括序列号重置域和nextexceptedseqnumb域(约定下次传输时间),reset消息中的序列号重置域设为y,并且序列号置为1。

(7)数据层收到reset消息后,回复logout消息,数据层的incomming序列号重置,并结束incomming序列号的重置。

(8)应用层恢复会话层与数据层的连接。

第三步,数据层的数据处理。数据层在获得应用层的需求后,数据层的服务器对接收的信息进行解析,根据业务需求,生成相应的业务请求信息,调取金融算法库,控制计算节点生成应答信息。其具体步骤如下:

(1)数据层的服务器对数据包进行解析分析,解析出请求信息、广播信息、订单信息、协议域、信息类型定义和数据字典。应用层针对数据包的打包技术为传统技术,同样,在此针对数据包的解析技术也为传统解析分析技术。

(2)服务器根据解析内容,从订单信息和协议域中解析出算法,从信息类型定义和数据字典中解析出数值。数值为需要计算的金融数据内容,算法为金融学的相关理论算法。

(3)建立dp消息,dp消息格式为〈算法〉=〈数值〉。

在此建立dp消息的目的是进一步保证数据模型系统的安全性。通常而言,针对于金融业务,其金融算法库是核心的商业机密,银行业之间竞争的重要手段。因此,在此服务器不直接调用金融算法库中的算法,只是给出映射地址,然后由计算节点通过映射地址调用金融算法库中的算法,再返回结果至服务器,从根本上杜绝了服务器对金融算法库中的算法直接处理。

(4)服务器调取金融算法库中对应的算法地址,将其地址映射至dp消息中。

(5)服务器将数值的存放地址映射到dp消息中。

(6)服务器将dp消息发送给计算节点,计算节点引入数值和对应算法进行计算。

(7)计算节点返回结果至服务器,服务器生成应答信息,应答消息为需要回复应用层的信息。

第四步,应用层需求的反馈,数据层的服务器通过会话层将应答信息发送至应用层。针对于数据层往应用层的数据信息反馈,采用应答域消息方式保证数据包的完整性,并不采用之前的incomming序列号的方式,以形成反馈、需求接收层叠方式的传输,即数据层在通过应用层反馈数据的同时,应用层又可以再向数据层发送需求,两个传输过程可以并行处理(应用层至数据层和数据层至应用层的传输方式不同),有助于传输效率的提高。其具体步骤如下:

(1)服务器对应答信息进行数据封装打包,应答数据包格式为{数据标签头,应答信息,数据类型,数据长度,数据标签尾}。

(2)服务器提取数据类型和数据长度,生成应答域消息,并通过会话层将应答域消息发送至应用层。

(3)应用层解析应答域消息,并等待应答数据包的接收。

(4)服务器将应答数据包通过会话层发送至应用层。

(5)应用层接收应答数据包后进行解析,分析应答信息是否满足应答域消息内容;若满足,表明应答数据包传输完整;若不满足,表明应答数据包传输缺失,进行重新传输。

本发明所述的金融业务应用数据模型系统,首先从层次划分上保证了数据层的安全性,并通过incomming序列号和应答数据包保证了会话层进行数据传输的安全性;其次通过logon消息在应用层的验证保证了数据层的隔离安全,通过dp消息的设定保证了金融算法库的安全,使得金融业务应用数据模型系统自身带有安全性、数据传输完整性的特点。

以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是本发明的原理,在不脱离本发明精神和范围的前提下本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明的范围内。本发明要求的保护范围由所附的权利要求书及其等同物界定。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1