CN111400283B - 一种数据处理方法、系统、电子设备及存储介质 - Google Patents

一种数据处理方法、系统、电子设备及存储介质 Download PDF

Info

Publication number
CN111400283B
CN111400283B CN202010195779.2A CN202010195779A CN111400283B CN 111400283 B CN111400283 B CN 111400283B CN 202010195779 A CN202010195779 A CN 202010195779A CN 111400283 B CN111400283 B CN 111400283B
Authority
CN
China
Prior art keywords
record
rolling
current
historical
trigger event
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
Application number
CN202010195779.2A
Other languages
English (en)
Other versions
CN111400283A (zh
Inventor
刘成杰
郑炜杰
孙思骏
任林涛
黄文宝
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
China Construction Bank Corp
Original Assignee
China Construction Bank Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by China Construction Bank Corp filed Critical China Construction Bank Corp
Priority to CN202010195779.2A priority Critical patent/CN111400283B/zh
Publication of CN111400283A publication Critical patent/CN111400283A/zh
Application granted granted Critical
Publication of CN111400283B publication Critical patent/CN111400283B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • G06F16/219Managing data history or versioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/176Support for shared access to files; File sharing support
    • G06F16/1767Concurrency control, e.g. optimistic or pessimistic approaches
    • G06F16/1774Locking methods, e.g. locking methods for file systems allowing shared and concurrent access to files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/23Updating
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0635Risk analysis of enterprise or organisation activities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q40/00Finance; Insurance; Tax strategies; Processing of corporate or income taxes
    • G06Q40/04Trading; Exchange, e.g. stocks, commodities, derivatives or currency exchange

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Resources & Organizations (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Economics (AREA)
  • Data Mining & Analysis (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Business, Economics & Management (AREA)
  • Marketing (AREA)
  • Development Economics (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Tourism & Hospitality (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Game Theory and Decision Science (AREA)
  • Educational Administration (AREA)
  • Technology Law (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例公开了一种数据处理方法、系统、电子设备及存储介质。该方法包括:当监测到新增轧差记录的第一触发事件时,获取与第一触发事件对应的待新增的当前轧差记录和已增加的历史轧差记录;根据历史轧差记录的历史数据版本号和预设数值条件,设置当前轧差记录的当前数据版本号;重新获取历史轧差记录,并根据重新获取结果更新历史轧差记录;若当前数据版本号与历史数据版本号间的数值关系满足预设数值条件,则根据当前轧差记录对历史轧差记录执行更新操作。本发明实施例的技术方案,可以实现交割风险管控过程中涉及到的各个数据的精准处理,尤其是轧差记录的精准计算。

Description

一种数据处理方法、系统、电子设备及存储介质
技术领域
本发明实施例涉及计算机应用技术领域,尤其涉及一种数据处理方法、系统、电子设备及存储介质。
背景技术
在金融领域中,交割风险是指在金融合约交割时,交易一方无法按照合约履行义务而造成损失的风险,其包括交易对手违约风险(信用风险的一种形式)和流动性风险(即,交易对手最终履约,但不是在合约约定的时间内履约)。因此,交割风险的有效管控对各大金融企业而言,至关重要。
目前的交割风险管控方案主要依赖于某供应商开发的第三方系统,该第三方系统虽然可以基本满足企业的交割风险的管控需求,但在技术上受到该供应商的约束,无法结合企业的实际业务需求对该第三方系统的业务逻辑进行相应调整,自主可控性较差。
因此,一个可与企业的实际业务需求完全匹配的且可自主调整的交割风险管控系统,更有利于企业的长期发展。而且,在交割风险管控过程中涉及到的各个数据的精准处理,正是交割风险管控系统的实现过程的核心内容。
发明内容
本发明实施例提供了一种数据处理方法、系统、电子设备及存储介质,实现了交割风险管控过程中涉及到的各个数据的精准处理的效果。
第一方面,本发明实施例提供了一种数据处理方法,可以包括:
当监测到新增轧差记录的第一触发事件时,获取与第一触发事件对应的待新增的当前轧差记录和已增加的历史轧差记录;
根据历史轧差记录的历史数据版本号和预设数值条件,设置当前轧差记录的当前数据版本号;
重新获取历史轧差记录,并根据重新获取结果更新历史轧差记录;
若当前数据版本号与历史数据版本号间的数值关系满足预设数值条件,则根据当前轧差记录对历史轧差记录执行更新操作。
可选的,上述数据处理方法,还可以包括:
若数值关系未满足预设数值条件,则重复执行根据历史轧差记录的历史数据版本号和预设数值条件,设置当前轧差记录的当前数据版本号的步骤,直至当前轧差记录更新成功。
可选的,上述数据处理方法,还可以包括:
若数值关系未满足预设数值条件,则重复执行根据历史轧差记录的历史数据版本号和预设数值条件,设置当前轧差记录的当前数据版本号的步骤,直至当前轧差记录更新成功。
可选的,上述数据处理方法,还可以包括:
若未获取到历史轧差记录,则对当前轧差记录执行插入操作;
若在执行插入操作时出现预设异常,则执行获取与第一触发事件对应的已增加的历史轧差记录的步骤,其中,预设异常包括存在历史轧差记录。
可选的,上述数据处理方法,还可以包括:
在监测到计算额度的第二触发事件时,获取与第二触发事件对应的独享锁,其中,独享锁用于阻止更新操作和插入操作的执行;
若独享锁获取成功,则获取与第二触发事件对应的已存轧差记录,其中,已存轧差记录包括至少一个币种的历史轧差记录;
以预设额度币种为基准,对已存轧差记录执行汇率转换操作,分别得到各币种的汇率转换数据,并根据各汇率转换数据计算交割额度。
可选的,上述数据处理方法,还可以包括:
若独享锁获取失败,则开始执行计时操作,并等待独享锁释放;
若在预设时间内获取到独享锁,则获取已存轧差记录,执行以预设额度币种为基准,对已存轧差记录执行汇率转换操作,分别得到各币种的汇率转换数据,并根据各汇率转换数据计算交割额度的步骤。
可选的,上述数据处理方法,还可以包括:
当监测到更新额度计算参数的第三触发事件时,获取与第三触发事件对应的当前的额度计算参数,并根据额度计算参数生成重估文件;
根据重估文件更新交割额度。
第二方面,本发明实施例还提供了一种数据处理系统,该系统可以包括:
轧差记录管理模块,用于当监测到新增轧差记录的第一触发事件时,获取与第一触发事件对应的乐观锁和待新增的当前轧差记录,并基于乐观锁对当前轧差记录执行更新操作和/或插入操作;
其中,乐观锁是基于数据版本号实现的且用于允许更新操作和插入操作的执行,当前轧差记录包括当前数据版本号。
可选的,上述数据处理系统,还可以包括额度计算模块,其中,该额度计算模块可以包括:
轧差记录调用单元,用于在监测到计算额度的第二触发事件时,获取与第二触发事件对应的独享锁,并调用轧差记录管理模块输出的与第二触发事件对应的已存轧差记录,其中,独享锁用于阻止更新操作和插入操作的执行,已存轧差记录包括至少一个币种的历史轧差记录;
汇率转换单元,用于以预设额度币种为基准,对已存轧差记录执行汇率转换操作,分别得到各币种的汇率转换数据;
汇总计算单元,用于根据各汇率转换数据计算交割额度。
第三方面,本发明实施例还提供了一种电子设备,该电子设备可以包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当一个或多个程序被一个或多个处理器执行,使得一个或多个处理器实现本发明任意实施例所提供的数据处理方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现本发明任意实施例所提供的数据处理方法。
本发明实施例的技术方案,当前线程在监测到新增轧差记录的第一触发事件时,通过获取到的与第一触发事件对应的待新增的当前轧差记录和已增加的历史轧差记录,可根据历史轧差记录的历史数据版本号和预设数值条件,设置当前轧差记录的当前数据版本号;进一步,可重新获取历史轧差记录,若当前数据版本号和重新获取的历史轧差记录的历数数据版本号间的数值关系满足预设数值条件,这说明未存在其余线程已对初始获取的历史轧差记录执行更新操作,当前数据版本号和重新获取的历史数据版本号仍是匹配的,则可根据当前轧差记录对历史轧差记录执行更新操作。上述技术方案,可以实现交割风险管控过程中涉及到的各个数据的精准处理,尤其是轧差记录的精准计算。
附图说明
图1是本发明实施例一中的一种数据处理方法的流程图;
图2a是本发明实施例一中的一种数据处理方法中轧差记录管理的示意图;
图2b是本发明实施例一中的一种数据处理方法中额度计算的示意图;
图3是本发明实施例二中的一种数据处理系统的优选实施例的构框图;
图4是本发明实施例三中的一种电子设备的结构示意图。
具体实施方式
下面结合附图和实施例对本发明作进一步详细说明。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
实施例一
图1是本发明实施例一中提供的一种数据处理方法的流程图。本实施例可适用于对交割风险管控过程中涉及到的各个数据进行精准处理的情况。该方法可以由本发明实施例提供的数据处理系统来执行,该系统可以由软件和/或硬件的方式实现,该系统可以集成在各种用户终端或服务器上。
参见图1,本发明实施例的方法具体包括如下步骤:
S110、当监测到新增轧差记录的第一触发事件时,获取与第一触发事件对应的待新增的当前轧差记录和已增加的历史轧差记录。
其中,当前线程在监测到新增轧差记录的第一触发事件时,可以获取与第一触发事件对应的待新增的当前轧差记录。与此同时,还可以根据主键查询确定是否存在与第一触发事件或是说与当前轧差记录对应的已增加的历史轧差记录。若存在,则可以获取该历史轧差记录,并根据当前轧差记录对历史轧差记录执行更新操作;否则,可以直接对当前轧差记录执行插入操作。由此,插入操作或是更新操作的执行都可实现当前轧差记录的新增。
具体的,针对存在历史轧差记录的情况,需要说明的是,当前轧差记录的获取操作和历史轧差记录的查询操作没有严格的先后执行顺序,先获取后查询、先查询后获取、同时获取查询均可,在此未做具体限定。历史轧差记录可以存储在预设数据库、分布式缓存等等,在此未做具体限定。每条轧差记录可以认为是一条币种业务数据,该币种业务数据可以包括数据版本号、至少一个币种的额度等等,该数据版本号可作为轧差记录的标识信息。由此,示例性的,第一触发事件可以是某个客户的至少一个币种的额度出现变化时的触发事件。
S120、根据历史轧差记录的历史数据版本号和预设数值条件,设置当前轧差记录的当前数据版本号。
其中,由上可知,当前轧差记录包括当前数据版本号,历史轧差记录包括历史数据版本号,由此,可以根据历史数据版本号和预设数值条件设置当前数据版本号,比如,若预设数值条件是两者间的数值差为预设数值,则可将加上预设数值的历史数据版本号作为当前数据版本号。
根据历史数据版本号设置当前数据版本号的原因在于,轧差记录的更新操作可以由不同的线程执行,其可能存在如下情况:当前线程在监测到第一触发事件时,可获取到与第一触发事件分别对应的当前轧差记录和历史轧差记录;此时,当前线程在根据当前轧差记录对历史轧差记录执行更新操作前,其余线程先根据其获取到的其余轧差记录对历史轧差记录执行更新操作,该其余线程是除当前线程以外的任一线程。这样一来,当前线程获取到的历史轧差记已被更新,当前线程的更新操作对象应该是其余线程更新后的历史轧差记录(即,其余轧差记录)。因此,为保证当前线程的更新操作对象是存在的,需要重新获取历史轧差记录;与此同时,为保证当前数据版本号与最新的历史数据版本号相匹配,可先判断两者间的数值关系是否满足预设数值条件,若满足则可直接执行更新操作,若不满足则说明历史轧差记录已被其余线程更新,需要根据最新的历史数据版本号重新设置当前数据版本号后再执行更新操作。
S130、重新获取历史轧差记录,并根据重新获取结果更新历史轧差记录。
其中,重新获取的历史轧差记录与初始获取的历史轧差记录可能相同也可能不同,这取决于在初始获取历史轧差记录和重新获取历史轧差记录的这段时间内,是否存在其余线程对初始获取的历史轧差记录执行更新操作。由此,在重新获取历史轧差记录后,可根据重新获取的历史轧差记录更新初始获取的历史轧差记录,由此保证了更新操作对象是存在的。
S140、若当前数据版本号与历史数据版本号间的数值关系满足预设数值条件,则根据当前轧差记录对历史轧差记录执行更新操作。
其中,正如上文所述,在根据当前轧差记录对历史轧差记录执行更新操作前,可先判断一下是否存在其余线程已对历史轧差记录执行更新操作。一个可选的判断方案是,判断当前数据版本号与历史数据版本号间的数值关系是否满足预设数值条件。若是,这说明未存在其余线程已对初始获取的历史轧差记录执行更新操作,即重新获取的历史轧差记录与初始获取的历史轧差记录是相同的,则可以根据当前轧差记录直接对历史轧差记录执行更新操作,这可以保证当前数据版本号与最新的历史数据版本号相匹配;若否,这说明历史轧差记录的历史数据版本号已更新,则可以根据重新获取的最新的由其余线程更新过的历史轧差记录的历史数据版本号重新设置当前数据版本号,并再次执行如上文所述的更新操作。
在此基础上,可选的,在因未存在历史轧差记录而对当前轧差记录执行插入操作时,也有可能存在类似情况,比如,当前线程在监测到第一触发事件时,未获取到与第一触发事件对应的历史轧差记录,此时,当前线程可对其获取到的当前轧差记录执行插入操作。但是,在当前线程对当前轧差记录执行插入操作前,其余线程先对其获取到的其余轧差记录执行插入操作。这样一来,其余轧差记录可作为历史轧差记录,这使得当前线程的插入操作出现预设异常,该预设异常可以包括存在历史轧差记录。由此,当前线程可先获取历史轧差记录,并对历史轧差记录执行如上文所述的更新操作。
需要说明的是,上述步骤是基于轧差规则实现的交割风险管控,其中,轧差规则是在额度占用计算时,按交割日期、交易方向、交易币种进行交易加总,以实现更精准的交割风险控制。上述步骤设置的原因在于,针对交割风险管控过程中涉及到的各个环节,在轧差记录管理前的很多环节都是可以支持多线程并发处理的,但在轧差记录管理环节无法支持多线程并发处理,这将直接影响轧差记录管理的精准性。为此,本发明实施例在轧差记录管理方案的入口处设置了一个乐观锁,该乐观锁是基于数据版本号实现的,基于乐观锁实现上述步骤时可以实现多线程同步处理,满足了并发情况下的同步处理兼顾处理效率,由此保证了轧差记录的计算精度。
本发明实施例的技术方案,当前线程在监测到新增轧差记录的第一触发事件时,通过获取到的与第一触发事件对应的待新增的当前轧差记录和已增加的历史轧差记录,可根据历史轧差记录的历史数据版本号和预设数值条件,设置当前轧差记录的当前数据版本号;进一步,可重新获取历史轧差记录,若当前数据版本号和重新获取的历史轧差记录的历数数据版本号间的数值关系满足预设数值条件,这说明未存在其余线程已对初始获取的历史轧差记录执行更新操作,当前数据版本号和重新获取的历史数据版本号仍是匹配的,则可根据当前轧差记录对历史轧差记录执行更新操作。上述技术方案,可以实现交割风险管控过程中涉及到的各个数据的精准处理,尤其是轧差记录的精准计算。
为了更好地理解上述步骤的具体实现过程,下面结合具体示例,对本实施例的数据处理方法进行示例性的说明。
示例性的,如图2a所示,当前线程在监测到新增轧差记录的第一触发事件时,可先根据主键查询数据库中是否已存在相应的历史轧差记录,若否则执行插入操作,若是则执行更新操作。在执行插入操作时,若发生重复主键异常,这说明数据库中已存在相应的历史轧差记录,其可能是在当前线程查询后由其余线程插入的轧差记录,此时则执行更新操作。在执行更新操作前,先将查询结果中的历史数据版本号加1,并将加和结果作为当前轧差记录的当前数据版本号;重新获取数据库中的历史轧差记录。在执行更新操作时,先判断当前数据版本号和重新获取的历史轧差记录的历史数据版本号的差值是否为1,若是则基于当前轧差记录更新数据库中的历史轧差记录,此时更新成功;若否则说明其余线程在本次更新操作前已经更新过该历史轧差记录,即初始查询得到的历史数据版本号和数据库中的历史数据版本号不一致,此时更新失败,需要重新获取最新的历史轧差记录以重新执行更新操作。
一个具体示例,通过主键查询得到的已存在的历史数据版本号是1,此时,可将当前数据版本号设置为2;但是,在执行更新操作时,从数据库中获取的历史数据版本号是2,这说明其余线程已在本次更新执行前将历史数据版本号由1更新为2,那么,可将当前数据版本号设置为3,并再次执行更新操作,直至更新成功或者重试次数达到预设的重试上限。
在此基础上,可选的,上述数据处理方法还可以包括:在监测到计算额度的第二触发事件时,获取与第二触发事件对应的独享锁,其中,独享锁用于阻止更新操作和插入操作的执行;若独享锁获取成功,则获取与第二触发事件对应的已存轧差记录,其中,已存轧差记录包括至少一个币种的历史轧差记录;以预设额度币种为基准,对已存轧差记录执行汇率转换操作,分别得到各币种的汇率转换数据,并根据各汇率转换数据计算交割额度。
其中,额度计算是计算某个客户在某个交割日下的交割额度的使用情况,该交割额度主要应用于外汇交易及CCS交易,对每天与交易对手进行交割的交易总金额加以有效的约束和限制。交割计算可包括汇总记录查询、轧差记录汇率转换、转换结果加总处理等等,其通常需要汇总该客户在该交割日下的全部币种的轧差记录,每条轧差记录可与至少一个币种相对应,可选方式是每个币种对应一条轧差记录,这条轧差记录可进行一些汇总计算比如汇率转换、轧差进制处理等等。一个可能存在的情况是,在多线程并发时,汇总记录查询操作可能会发生幻读,这是因为当前线程在根据已查询的该客户在该交割日下的全部轧差记录进行额度计算时,若在当前线程查询后存在其余线程执行的作用于该客户的轧差记录的新增操作,这会导致当前线程的额度计算出现问题。
为此,本发明实施例提供了一个用于阻止其余线程的更新操作或插入操作的并发执行的独享锁(即,计算锁),该独享锁可以是基于数据库实现的,比如在数据库中增加一条独享锁记录,任何线程需要获取到这条独享锁记录后方能执行额度计算操作;也可以是基于其它方式实现的比如分布式缓存,等等,在此未做具体限定。独享锁的应用可在并发计算时同步处理以保证计算结果的准确性,实现了额度计算的同步机制。而且,当基于数据版本号实现的乐观锁和基于数据库实现的独享锁共同应用于一个事务中的不同阶段时,这可既考虑了并发处理的性能,又确保了并发场景下计算的准确性。
具体的,在计算额度前或是说在获取该客户的已存轧差记录前,当前线程需要先获取独享锁,该已存轧差记录可以是该客户的至少一个币种的历史轧差记录,尤其可以是该客户涉及到的全部币种的历史轧差记录。若独享锁获取成功,这说明其余线程并未应用这一独享锁,则可获取已存轧差记录,并以预设额度币种为基准,对已存轧差记录执行汇率转换操作,分别得到各币种的汇率转换数据,即将每个币种的额度转换为预设额度币种的额度;将各汇率转换数据按照加总规则做汇总计算,得到该客户在该交割日应该占用的交割额度。
当然,若当前线程获取独享锁失败,这说明其余线程正在应用这一独享锁执行额度计算操作或其余操作,则需要等待独享锁释放;若其余线程在预设时间内释放独享锁,则当前线程可以获取到该独享锁,并执行如上文所述的额度计算操作,示例性的,具体过程可如图2b所示。
在此基础上,可选的,上述数据处理方法还可以包括:当监测到更新额度计算参数的第三触发事件时,获取与第三触发事件对应的当前的额度计算参数,并根据额度计算参数生成重估文件;根据重估文件更新交割额度,由此实现交割额度重估。其中,交割额度重估是对存续期的交易按最新的额度计算参数重新计算交割额度,该额度计算参数可以是交易对手参数、交割额度产品参数、交割额度币种参数、汇率等等。也就是说,若额度计算参数出现变更,则额度计算结果就会随之发生变更。交割额度重估也可称为日终重估,其是一个日终批处理作业。在重估期间,新的交易允许正常进入,重估线程与联机交易线程因均需先获取到独享锁后方能执行后续操作,则它们依赖独享锁可实现同步处理。由此,通过参数化的设置可使用户更加灵活方便的调整额度计算方式。
实施例二
本发明实施例二提供的数据处理系统可用于执行上述任意实施例所提供的数据处理方法。该系统与上述各实施例的数据处理方法属于同一个发明构思,在数据处理系统的实施例中未详尽描述的细节内容,可以参考上述数据处理方法的实施例。其中,该系统可以包括轧差记录管理模块,该轧差记录管理模块可用于当监测到新增轧差记录的第一触发事件时,获取与第一触发事件对应的乐观锁和待新增的当前轧差记录,并基于乐观锁对当前轧差记录执行更新操作和/或插入操作;其中,乐观锁是基于数据版本号实现的且用于允许更新操作和插入操作的执行,当前轧差记录包括当前数据版本号。
在此基础上,该轧差记录管理模块,具体可用于:当监测到新增轧差记录的第一触发事件时,获取与第一触发事件对应的待新增的当前轧差记录和已增加的历史轧差记录;根据历史轧差记录的历史数据版本号和预设数值条件,设置当前轧差记录的当前数据版本号;重新获取历史轧差记录,并根据重新获取结果更新历史轧差记录;若当前数据版本号与历史数据版本号间的数值关系满足预设数值条件,则根据当前轧差记录对历史轧差记录执行更新操作。
可选的,该轧差记录管理模块还可用于:若数值关系未满足预设数值条件,则重复执行根据历史轧差记录的历史数据版本号和预设数值条件,设置当前轧差记录的当前数据版本号的步骤,直至当前轧差记录更新成功。
可选的,该轧差记录管理模块还可用于:若未获取到历史轧差记录,则对当前轧差记录执行插入操作;若在执行插入操作时出现预设异常,则执行获取与第一触发事件对应的已增加的历史轧差记录的步骤,其中,预设异常包括存在历史轧差记录。
在此基础上,该数据处理系统还可包括额度计算模块,该额度计算模块可以包括轧差记录调用单元、汇率转换单元和汇总计算单元。其中,轧差记录调用单元,用于在监测到计算额度的第二触发事件时,获取与第二触发事件对应的独享锁,并调用轧差记录管理模块输出的与第二触发事件对应的已存轧差记录,其中,独享锁用于阻止更新操作和插入操作的执行,已存轧差记录包括至少一个币种的历史轧差记录;汇率转换单元,用于以预设额度币种为基准,对已存轧差记录执行汇率转换操作,分别得到各币种的汇率转换数据;汇总计算单元,用于根据各汇率转换数据计算交割额度。
可选的,轧差记录调用单元,还可用于:若独享锁获取失败,则开始执行计时操作,并等待独享锁释放;若在预设时间内获取到独享锁,则获取已存轧差记录,执行以预设额度币种为基准,对已存轧差记录执行汇率转换操作,分别得到各币种的汇率转换数据,并根据各汇率转换数据计算交割额度的步骤。
在此基础上,该数据处理系统还可包括日终重估模块和重估管理组件,其中,日终重估模块,用于当监测到更新额度计算参数的第三触发事件时,获取与所述第三触发事件对应的当前的额度计算参数,并根据所述额度计算参数生成重估文件,将所述重估文件发送给重估管理组件;重估管理组件,用于在接收到所述重估文件后,调用所述额度计算模块输出的与所述第三触发事件对应的交割额度,并根据所述重估文件更新所述交割额度。
本发明实施例二提供的数据处理系统,通过轧差记录管理模块可在当前线程监测到新增轧差记录的第一触发事件时,通过获取到的与第一触发事件对应的待新增的当前轧差记录和已增加的历史轧差记录,可根据历史轧差记录的历史数据版本号和预设数值条件,设置当前轧差记录的当前数据版本号;进一步,可重新获取历史轧差记录,若当前数据版本号和重新获取的历史轧差记录的历数数据版本号间的数值关系满足预设数值条件,这说明未存在其余线程已对初始获取的历史轧差记录执行更新操作,当前数据版本号和重新获取的历史数据版本号仍是匹配的,则可根据当前轧差记录对历史轧差记录执行更新操作。上述系统,可以实现交割风险管控过程中涉及到的各个数据的精准处理,尤其是轧差记录的精准计算。
为了更好地理解上述系统的具体架构,下面结合具体示例,对本实施例的数据处理系统进行示例性的说明。
示例性的,如图3所示,数据处理系统可以包括轧差记录管理模块、额度计算模块、日终重估模块、重估管理组件(即,授信管理组件)、P2/P3、交割额度试算模块、交割额度查询模块、交割额度使用明细管理模块、公共额度管理模块、P8金融市场应用、接入处理层等等。其中,P2/P3可用于前端界面/流程编排,实现交易录入及审批流转等功能;交割额度试算模块可用于接入试算交易要素,计算若执行该交易是否可以通过交割额度控制;交割额度查询模块可用于查询客户交割额度信息、交割额度使用信息;交割额度使用明细管理模块可用于纳入交割额度管控的交易明细管理;公共额度管理模块可用于负责与授信组件交互,实现额度的校验、预占、实占及释放;P8金融市场应用是金融市场业务层,可包括外汇、CCS等;接入处理层是交割额度处理接入API,主要包括交易校验、交割额度相关参数处置,需要纳入交割额度管控的交易需要通过本API接入交割额度计算功能;相应的,轧差记录管理模块、额度计算模块、日终重估模块和重估管理组件的具体实现逻辑可如上文所述,在此不再赘述。需要说明的是,图3示意图中的箭头是表示数据调用关系,比如,由额度计算模块指向轧差记录管理模块的箭头可以表示额度计算模块调用轧差记录管理模块输出的已存轧差记录。
本发明实施例所述的数据处理系统中的各个模块相互交互,每个模块中各数据的精准计算实现了对交易对手的交割风险的有效管控。同时,该数据处理系统实现了轧差、试算、重估等功能,可以满足更精准的交割风险控制需求;且可以通过参数化的设置使用户更加灵活方便的调整额度计算方式。
本发明实施例所提供的数据处理系统可执行本发明任意实施例所提供的数据处理方法,具备执行方法相应的功能模块和有益效果。
值得注意的是,上述数据处理系统的实施例中,所包括的各个单元和模块只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。
实施例三
图4为本发明实施例三提供的一种电子设备的结构示意图,这电子设备可以是终端和/或服务器,如图4所示,该电子设备包括存储器310、处理器320、输入装置330和输出装置340。电子设备中的处理器320的数量可以是一个或多个,图4中以一个处理器320为例;电子设备中的存储器310、处理器320、输入装置330和输出装置340可以通过总线或其它方式连接,图4中以通过总线350连接为例。
存储器310作为一种计算机可读存储介质,可用于存储软件程序、计算机可执行程序以及模块,如本发明实施例中的数据处理方法对应的程序指令/模块(例如,数据处理系统中的轧差记录管理模块)。处理器320通过运行存储在存储器310中的软件程序、指令以及模块,从而执行电子设备的各种功能应用以及数据处理,即实现上述的数据处理方法。
存储器310可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据电子设备的使用所创建的数据等。此外,存储器310可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储器310可进一步包括相对于处理器320远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置330可用于接收输入的数字或字符信息,以及产生与装置的用户设置以及功能控制有关的键信号输入。输出装置340可包括显示屏等显示设备。
实施例四
本发明实施例四提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种数据处理方法,该方法包括:
当监测到新增轧差记录的第一触发事件时,获取与第一触发事件对应的待新增的当前轧差记录和已增加的历史轧差记录;
根据历史轧差记录的历史数据版本号和预设数值条件,设置当前轧差记录的当前数据版本号;
重新获取历史轧差记录,并根据重新获取结果更新历史轧差记录;
若当前数据版本号与历史数据版本号间的数值关系满足预设数值条件,则根据当前轧差记录对历史轧差记录执行更新操作。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的方法操作,还可以执行本发明任意实施例所提供的数据处理方法中的相关操作。
通过以上关于实施方式的描述,所属领域的技术人员可以清楚地了解到,本发明可借助软件及必需的通用硬件来实现,当然也可以通过硬件实现,但很多情况下前者是更佳的实施方式。依据这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如计算机的软盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(RandomAccess Memory,RAM)、闪存(FLASH)、硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。

Claims (7)

1.一种数据处理方法,其特征在于,包括:
当监测到新增轧差记录的第一触发事件时,获取与所述第一触发事件对应的待新增的当前轧差记录和已增加的历史轧差记录;其中,所述第一触发事件包括用户的至少一个币种的额度发生变化时的触发事件;
根据所述历史轧差记录的历史数据版本号和预设数值条件,设置所述当前轧差记录的当前数据版本号;
重新获取所述历史轧差记录,并根据重新获取结果更新所述历史轧差记录;
若所述当前数据版本号与所述历史数据版本号间的数值关系满足所述预设数值条件,则根据所述当前轧差记录对所述历史轧差记录执行更新操作;
若未获取到所述历史轧差记录,则对所述当前轧差记录执行插入操作;
在监测到计算额度的第二触发事件时,获取与所述第二触发事件对应的独享锁,其中,所述独享锁用于阻止所述更新操作和所述插入操作的执行;
若所述独享锁获取成功,则获取与所述第二触发事件对应的已存轧差记录,其中,所述已存轧差记录包括至少一个币种的所述历史轧差记录;
以预设额度币种为基准,对所述已存轧差记录执行汇率转换操作,分别得到各所述币种的汇率转换数据,并根据各所述汇率转换数据计算交割额度,包括:
将每个币种的额度转换为预设额度币种的额度;
将各所述汇率转换数据按照加总规则做汇总计算,得到所述用户在交割日应该占用的交割额度;其中,所述汇总计算包括汇率转换和/或轧差进制处理;
其中,计算额度是计算用户在交割日下的交割额度的使用情况;
当监测到更新额度计算参数的第三触发事件时,获取与所述第三触发事件对应的当前的额度计算参数,并根据所述额度计算参数生成重估文件;
根据所述重估文件更新所述交割额度。
2.根据权利要求1所述的方法,其特征在于,还包括:
若所述数值关系未满足所述预设数值条件,则重复执行所述根据所述历史轧差记录的历史数据版本号和预设数值条件,设置所述当前轧差记录的当前数据版本号的步骤,直至所述当前轧差记录更新成功。
3.根据权利要求2所述的方法,其特征在于,还包括:
若在执行所述插入操作时出现预设异常,则执行所述获取与所述第一触发事件对应的已增加的历史轧差记录的步骤,其中,所述预设异常包括存在所述历史轧差记录。
4.根据权利要求1所述的方法,其特征在于,还包括:
若所述独享锁获取失败,则开始执行计时操作,并等待所述独享锁释放;
若在预设时间内获取到所述独享锁,则获取所述已存轧差记录,执行所述以预设额度币种为基准,对所述已存轧差记录执行汇率转换操作,分别得到各所述币种的汇率转换数据,并根据各所述汇率转换数据计算交割额度的步骤。
5.一种数据处理系统,其特征在于,包括:
轧差记录管理模块,用于当监测到新增轧差记录的第一触发事件时,获取与所述第一触发事件对应的乐观锁和待新增的当前轧差记录,并基于所述乐观锁对所述当前轧差记录执行更新操作和/或插入操作;其中,所述第一触发事件包括用户的至少一个币种的额度发生变化时的触发事件;
其中,所述乐观锁是基于数据版本号实现的且用于允许所述更新操作和所述插入操作的执行,所述当前轧差记录包括当前数据版本号;
轧差记录管理模块还可用于:若未获取到历史轧差记录,则对当前轧差记录执行插入操作;
还包括额度计算模块,其中,所述额度计算模块包括:
轧差记录调用单元,用于在监测到计算额度的第二触发事件时,获取与所述第二触发事件对应的独享锁,并调用所述轧差记录管理模块输出的与所述第二触发事件对应的已存轧差记录,其中,所述独享锁用于阻止所述更新操作和所述插入操作的执行,所述已存轧差记录包括至少一个币种的历史轧差记录;
汇率转换单元,用于以预设额度币种为基准,对所述已存轧差记录执行汇率转换操作,分别得到各所述币种的汇率转换数据;
汇总计算单元,用于根据各所述汇率转换数据计算交割额度;
所述汇率转换单元,具体用于将每个币种的额度转换为预设额度币种的额度;
所述汇总计算单元,具体用于将各所述汇率转换数据按照加总规则做汇总计算,得到所述用户在交割日应该占用的交割额度;其中,所述汇总计算包括汇率转换和/或轧差进制处理;
其中,计算额度是计算用户在交割日下的交割额度的使用情况;
日终重估模块,用于当监测到更新额度计算参数的第三触发事件时,获取与所述第三触发事件对应的当前的额度计算参数,并根据所述额度计算参数生成重估文件,将所述重估文件发送给重估管理组件;
重估管理组件,用于在接收到所述重估文件后,调用所述额度计算模块输出的与所述第三触发事件对应的交割额度,并根据所述重估文件更新所述交割额度。
6.一种电子设备,其特征在于,所述电子设备包括:
一个或多个处理器;
存储器,用于存储一个或多个程序;
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-4中任一所述的数据处理方法。
7.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-4中任一所述的数据处理方法。
CN202010195779.2A 2020-03-19 2020-03-19 一种数据处理方法、系统、电子设备及存储介质 Active CN111400283B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010195779.2A CN111400283B (zh) 2020-03-19 2020-03-19 一种数据处理方法、系统、电子设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010195779.2A CN111400283B (zh) 2020-03-19 2020-03-19 一种数据处理方法、系统、电子设备及存储介质

Publications (2)

Publication Number Publication Date
CN111400283A CN111400283A (zh) 2020-07-10
CN111400283B true CN111400283B (zh) 2024-02-06

Family

ID=71436355

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010195779.2A Active CN111400283B (zh) 2020-03-19 2020-03-19 一种数据处理方法、系统、电子设备及存储介质

Country Status (1)

Country Link
CN (1) CN111400283B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112104743B (zh) * 2020-09-21 2022-08-16 北京金山云网络技术有限公司 序列生成方法、装置和电子设备
CN112990823A (zh) * 2021-03-29 2021-06-18 武汉虹信技术服务有限责任公司 一种实现库存管理的方法、系统及存储介质

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6850938B1 (en) * 2001-02-08 2005-02-01 Cisco Technology, Inc. Method and apparatus providing optimistic locking of shared computer resources
CN101595506A (zh) * 2006-09-18 2009-12-02 路透美国有限责任公司 限制多方交易中的对方风险
CN101853160A (zh) * 2010-05-18 2010-10-06 上海动量软件技术有限公司 计算机软件系统中云构件实现框架配置的平台系统及方法
JP2014178831A (ja) * 2013-03-14 2014-09-25 Nec Corp 情報処理装置、データベースアクセス方法、及びプログラム
CN106484321A (zh) * 2016-09-08 2017-03-08 华为数字技术(成都)有限公司 一种数据存储方法及数据中心
CN107833138A (zh) * 2017-11-06 2018-03-23 中国银行股份有限公司 一种基于净额轧差的结售汇交易的处理方法及装置
CN108829413A (zh) * 2018-05-07 2018-11-16 北京达佳互联信息技术有限公司 数据更新方法、装置及计算机可读存储介质、服务器
CN109949144A (zh) * 2019-03-22 2019-06-28 深圳前海微众银行股份有限公司 入账处理方法、装置、设备及计算机可读存储介质
CN110634075A (zh) * 2019-09-27 2019-12-31 四川长虹电器股份有限公司 一种基于自定义公式实现不同外汇产品的损益计算方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6850938B1 (en) * 2001-02-08 2005-02-01 Cisco Technology, Inc. Method and apparatus providing optimistic locking of shared computer resources
CN101595506A (zh) * 2006-09-18 2009-12-02 路透美国有限责任公司 限制多方交易中的对方风险
CN101853160A (zh) * 2010-05-18 2010-10-06 上海动量软件技术有限公司 计算机软件系统中云构件实现框架配置的平台系统及方法
JP2014178831A (ja) * 2013-03-14 2014-09-25 Nec Corp 情報処理装置、データベースアクセス方法、及びプログラム
CN106484321A (zh) * 2016-09-08 2017-03-08 华为数字技术(成都)有限公司 一种数据存储方法及数据中心
CN107833138A (zh) * 2017-11-06 2018-03-23 中国银行股份有限公司 一种基于净额轧差的结售汇交易的处理方法及装置
CN108829413A (zh) * 2018-05-07 2018-11-16 北京达佳互联信息技术有限公司 数据更新方法、装置及计算机可读存储介质、服务器
CN109949144A (zh) * 2019-03-22 2019-06-28 深圳前海微众银行股份有限公司 入账处理方法、装置、设备及计算机可读存储介质
CN110634075A (zh) * 2019-09-27 2019-12-31 四川长虹电器股份有限公司 一种基于自定义公式实现不同外汇产品的损益计算方法

Also Published As

Publication number Publication date
CN111400283A (zh) 2020-07-10

Similar Documents

Publication Publication Date Title
CN111400283B (zh) 一种数据处理方法、系统、电子设备及存储介质
CN112907344A (zh) 账务数据的处理方法、装置、电子设备和存储介质
CN114253673A (zh) 一种分布式系统的事务处理方法和事务处理装置
CN111553656A (zh) 基于大数据的资金结算方法、装置、电子设备和介质
CN112132674A (zh) 一种交易处理方法和装置
CN110610414A (zh) 一种数据处理方法及系统
CN111125106A (zh) 一种跑批任务执行方法、装置、服务器和存储介质
CN111444213B (zh) 基于信贷业务的台账清分系统和方法
CN115421922A (zh) 一种分布式系统的限流方法、装置、设备、介质及产品
CN111768293B (zh) 交易信息的处理方法、装置、设备及存储介质
CN106856496B (zh) 数据处理方法及装置
CN115526722A (zh) 一种处理冲正交易的方法及装置
CN116342304A (zh) 一种数据处理方法、装置、电子设备、系统、介质及程序产品
CN114169997A (zh) 一种扣款方法和装置
CN111429125B (zh) 账户管理方法、装置、存储介质及电子设备
CN111582851A (zh) 基于大数据的平台打款方法、装置、电子设备及存储介质
CN112950384A (zh) 基于缓存技术的处理系统、方法、计算机设备及存储介质
CN112634006A (zh) 对账处理方法、装置、电子设备及存储介质
CN111737262A (zh) 一种数据处理方法及装置
CN110888917A (zh) 一种跑批任务执行方法、装置、服务器和存储介质
CN111861746A (zh) 一种处理交易数据的方法和装置
CN111415263A (zh) 数据匹配方法和装置
KR20190090685A (ko) 금융상품 정보 처리 방법 및 장치
CN112365337B (zh) 一种冒名贷款识别方法、装置、服务器及存储介质
CN117934147A (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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20220915

Address after: 25 Financial Street, Xicheng District, Beijing 100033

Applicant after: CHINA CONSTRUCTION BANK Corp.

Address before: 25 Financial Street, Xicheng District, Beijing 100033

Applicant before: CHINA CONSTRUCTION BANK Corp.

Applicant before: Jianxin Financial Science and Technology Co.,Ltd.

GR01 Patent grant
GR01 Patent grant