CN109816481A - 账单处理方法、装置及计算机可读存储介质 - Google Patents
账单处理方法、装置及计算机可读存储介质 Download PDFInfo
- Publication number
- CN109816481A CN109816481A CN201910007213.XA CN201910007213A CN109816481A CN 109816481 A CN109816481 A CN 109816481A CN 201910007213 A CN201910007213 A CN 201910007213A CN 109816481 A CN109816481 A CN 109816481A
- Authority
- CN
- China
- Prior art keywords
- transaction data
- ordering system
- channel side
- transaction
- data
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 17
- 238000012545 processing Methods 0.000 claims abstract description 72
- 238000000034 method Methods 0.000 claims abstract description 25
- 239000012634 fragment Substances 0.000 claims description 22
- 238000013467 fragmentation Methods 0.000 claims 2
- 238000006062 fragmentation reaction Methods 0.000 claims 2
- 230000008569 process Effects 0.000 description 13
- 230000009977 dual effect Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000008439 repair process Effects 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种账单处理方法,该方法包括:获取订单***的交易请求,将订单***的交易请求相关的交易数据存储于订单***的数据库中,从渠道方的文件服务器上读取渠道方的交易数据,将渠道方的交易数据存储于订单***的NAS盘上,调用订单***的交易数据及渠道方的交易数据,将订单***的交易数据及渠道方的交易数据进行比对,当订单***的交易数据及渠道方的交易数据进行比对成功时,将订单***的NAS盘中的文件上传到渠道方的文件服务器中。本发明还提出一种账单处理装置以及一种计算机可读存储介质。本发明实现了对账性能稳定,随着交易的数据量越来越大,对账和导出文件性能不会有明显的下降,可扩展性强。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种账单处理方法、装置及计算机可读存储介质。
背景技术
目前市场上的交易***有两个,一个是订单***,一个是渠道方的***,这两个***的对账都是通过将渠道方的对账文件落地到数据库中,然后在数据库中对两者的数据做对账操作以及导出文件,然而如果需要对账的数据量很大,历史帐户数据量很大,这种对账方式将会非常慢,而且随着数据量越来越大这种对账性能会越来越差。
发明内容
本发明提供一种账单处理方法、装置及计算机可读存储介质,其主要目的在于实现了对账性能稳定,随着交易的数据量越来越大,对账和导出文件性能不会有明显的下降;可扩展性强。
为实现上述目的,本发明还提供一种账单处理方法,所述方法包括:
获取订单***的交易请求,将订单***的交易请求相关的交易数据存储于订单***的数据库中;
从渠道方的文件服务器读取渠道方的交易数据,将渠道方的交易数据存储于订单***的网络附属存储NAS盘上;
调用订单***的交易数据及渠道方的交易数据,将订单***的交易数据及渠道方的交易数据进行比对;
当订单***的交易数据及渠道方的交易数据进行比对成功时,将订单***的NAS盘中的文件上传到渠道方的文件服务器中。
可选地,所述将订单***的交易请求相关的交易数据存储于订单***的数据库中包括:
按照滑动窗口策略,在每个时间窗口启动定时任务,将时间窗口内的订单***的交易数据分片批量写入Hadoop分布式文件***,按照订单的申请单号的哈希码hashcode进行分片。
可选地,所述调用订单***的交易数据及渠道方的交易数据包括:
订单***调用Spark集群的Driver,启动Spark任务调度,Spark的各个任务Task从NAS盘上将渠道方的交易数据读取到Spark节点中,其中渠道方的交易数据包括渠道来源标识;
并基于渠道来源标识、根据渠道方的交易数据中订单的申请单号的哈希码hashcode进行重分区处理,处理完后Spark节点从Hadoop分布式文件***中读入订单***的交易数据,分别读取到Spark的任务Task编号ID对应的分片。
可选地,所述当订单***的交易数据及渠道方的交易数据进行比对成功时,将订单***的NAS盘中的文件上传到渠道方的文件服务器中,包括:当订单***的交易数据及渠道方的交易数据进行比对成功时,Spark将订单***的Map对象转成String对象写入到HDFS***;
所有分片写入完成后,调用Hadoop分布式文件***的API,将每个分配的文件合并,并上传到订单***的NAS盘,订单***将该NAS盘下的文件上传到渠道方的sftp服务器上。
可选地,当订单***的交易数据及渠道方的交易数据进行比对不成功时,接收对问题数据的处理,并重新进行对账。
可选地,所述Hadoop分布式文件***配置有容错结构,其中容错结构由元数据与时间戳组成,相同订单号数据,时间戳大者为有效数据。
为实现上述目的,本发明还提供一种账单处理装置,所述装置包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的账单处理程序,所述账单处理程序被所述处理器执行时实现如下步骤:
获取订单***的交易请求,将订单***的交易请求相关的交易数据存储于订单***的数据库中;
从渠道方的文件服务器读取渠道方的交易数据,将渠道方的交易数据存储于订单***的网络附属存储NAS盘上;
调用订单***的交易数据及渠道方的交易数据,将订单***的交易数据及渠道方的交易数据进行比对;
当订单***的交易数据及渠道方的交易数据进行比对成功时,将订单***的NAS盘中的文件上传到渠道方的文件服务器中当订单***的交易数据及渠道方的交易数据进行比对成功时,将订单***的NAS盘中的文件上传到渠道方的文件服务器中。
可选地,所述账单处理程序还可被所述处理器执行,还实现如下步骤:
按照滑动窗口策略,在每个时间窗口启动定时任务,将时间窗口内的订单***的交易数据分片批量写入Hadoop分布式文件***(HDFS)分布式文件***,按照订单的申请单号的哈希码hashcode进行分片。
可选地,所述账单处理程序还可被所述处理器执行,实现如下步骤:
订单***调用Spark集群的Driver,启动Spark任务调度,Spark的各个任务Task从NAS盘上将渠道方的交易数据读取到Spark节点中,其中渠道方的交易数据包括渠道来源标识;
并基于渠道来源标识、根据渠道方的交易数据中订单的申请单号的哈希码hashcode进行重分区处理,处理完后Spark节点从Hadoop分布式文件***中读入订单***的交易数据,分别读取到Spark的任务Task编号ID对应的分片。
此外,为实现上述目的,本发明还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有账单处理程序,所述账单处理程序可被一个或者多个处理器执行,以实现如上所述的账单处理方法的步骤。
本发明获取订单***的交易请求,将订单***的交易请求相关的交易数据存储于订单***的数据库中,从渠道方的文件服务器读取渠道方的交易数据,将渠道方的交易数据存储于订单***的NAS盘上,调用订单***的交易数据及渠道方的交易数据,将订单***的交易数据及渠道方的交易数据进行比对,当订单***的交易数据及渠道方的交易数据进行比对成功时,将订单***的NAS盘中的文件上传到渠道方的文件服务器中。本发明对账性能稳定,随着交易的数据量越来越大,对账和导出文件性能不会有明显的下降;可扩展性强:可以通过增加机器节点的方式提高性能;减小***压力:采用类滑动窗口式处理思想,减少对账和导出文件的处理对数据库造成的压力;业务容错:针对Hadoop分布式文件***只可新增和追加的特点,设计容错结构,避免数据修改带来大的性能损耗。
附图说明
图1为本发明一实施例提供的账单处理方法的流程示意图;
图2为本发明一实施例提供的账单处理装置的内部结构示意图;
图3为本发明一实施例提供的账单处理装置中账单处理程序的模块示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明提供一种账单处理方法。参照图1所示,为本发明一实施例提供的账单处理方法的流程示意图。该方法可以由一个装置执行,该装置可以由软件和/或硬件实现。
在本实施例中,账单处理方法包括:
S10、获取订单***的交易请求,将订单***的交易请求相关的交易数据存储于订单***的数据库中。
在本实施例中,渠道方发送实时交易请求给到订单***,订单***实时将交易请求相关的交易数据存储于数据库。
优选地,所述将订单***的交易请求相关的交易数据存储于订单***的数据库中包括:
按照滑动窗口策略,在每个时间窗口启动定时任务,将时间窗口内的订单***的交易数据分片批量写入Hadoop分布式文件***(HDFS),按照订单的申请单号的哈希码hashcode进行分片。例如文件名以0开始,步长为1,递增。
S20、从渠道方的文件服务器上读取渠道方的交易数据,将渠道方的交易数据存储于订单***的NAS盘上。
在本实施例中,从渠道方的文件服务器上定期(如每天等等)读取渠道方的交易数据,将渠道方的交易数据存储于订单***的网络附属存储NAS盘上。定期读取的时间频率可以事先配置。
其中,按照渠道方的订单的申请单号的哈希码hashcode进行分片。例如文件名以0开始,步长为1,递增。
S30、调用订单***的交易数据及渠道方的交易数据,将订单***的交易数据及渠道方的交易数据进行比对。
其中以集群的架构形式管理订单***的交易数据及渠道方的交易数据。Spark应用在集群上以独立的进程集合运行,在主程序(称作驱动程序)中以SparkContext对象来调节。特别的,为了在集群上运行,SparkContext可以与几个类型的集群管理器(Spark自身单独的集群管理器或者Mesos/YARN)相连接,这些集群管理器可以在应用间分配资源。一旦连接,Spark需要在集群上的线程池子节点,也就是那些执行计算和存储应用数据的工作进程。然后,它将把你的应用代码(以JAR或者Python定义的文件并传送到SparkContext)发送到线程池。最后,SparkContext发送任务让线程池运行。
各个应用有自己的线程池进程,会在整个应用的运行过程中保持并在多个线程中运行任务。这样做的好处是把应用相互孤立,既在调度方面(各个驱动调度它自己的任务)也在执行方面(不同应用的任务在不同的JVM上运行)。
对于潜在的集群管理器来说,Spark是不可知的。只要它需要线程池的进程和它们间的通信,那么即使是在也支持其他应用的集群管理器(例如,Mesos/YARN)上运行也相对简单。
因为驱动在集群上调度任务,它应该运行接近到工作节点,在相同的局域网内更好。
优选地,所述调用订单***的交易数据及渠道方的交易数据包括:
订单***调用Spark集群的Driver,启动Spark任务调度,Spark的各个任务Task从NAS盘上将渠道方的交易数据读取到Spark节点中,其中渠道方的交易数据包括渠道来源标识;并基于渠道来源标识、根据渠道方的交易数据中订单的申请单号的哈希码hashcode进行重分区步骤处理,处理完后Spark节点从HDFS***中读入订单***的交易数据,分别读取到Spark的任务Task编号ID对应的分片。
优选地,通过上面的处理步骤后,在Spark中的各个分片中存在了订单***的交易数据和渠道方的交易数据,各个任务Task开始比对对订单***的交易数据和渠道方的交易数据处理。
S40、当订单***的交易数据及渠道方的交易数据进行比对成功时,将订单***的NAS盘中的文件上传到渠道方的文件服务器中。
优选地,当订单***的交易数据及渠道方的交易数据进行比对成功时,也就是订单***的交易数据和渠道方的交易数据完全一致时,Spark将订单***的Map对象转成String对象写入到HDFS***;所有分片写入完成后,调用HDFS***的API,将每个分配的文件合并,并上传到订单***的NAS盘,订单***将该NAS盘下的文件上传到渠道方的sftp服务器上。
当订单***的交易数据及渠道方的交易数据进行比对不成功时,也就是说对账有问题,则需要人工处理数据,将数据处理完成后,在次重复上面的步骤重新对账。
因此,优选地,当订单***的交易数据及渠道方的交易数据进行比对不成功时,接收对问题数据的处理,并重新进行对账。
优选地,所述HDFS***配置有容错结构,其中容错结构由元数据与时间戳组成。相同订单号数据,时间戳大者为有效数据。因为针对HDFS上数据可能修改,同时HDFS不支持修改的问题,涉及一个容错结构,避免因数据修改而重新导入数据库数据。容错结构由元数据与时间戳组成,相同订单号数据,时间戳大者为有效数据。
本发明获取订单***的交易请求,将订单***的交易请求相关的交易数据存储于订单***的数据库中,从渠道方的文件服务器上读取渠道方的交易数据,将渠道方的交易数据存储于订单***的NAS盘上,调用订单***的交易数据及渠道方的交易数据,将订单***的交易数据及渠道方的交易数据进行比对,当订单***的交易数据及渠道方的交易数据进行比对成功时,将订单***的NAS盘中的文件上传到渠道方的文件服务器中。本发明对账性能稳定,随着交易的数据量越来越大,对账和导出文件性能不会有明显的下降;可扩展性强:可以通过增加机器节点的方式提高性能;减小***压力:采用类滑动窗口式处理思想,减少对账和导出文件的处理对数据库造成的压力;业务容错:针对HDFS只可新增和追加的特点,设计容错结构,避免数据修改带来大的性能损耗。
本发明还提供一种账单处理装置。参照图2所示,为本发明一实施例提供的账单处理装置的内部结构示意图。
在本实施例中,账单处理装置1可以是PC(Personal Computer,个人电脑),也可以是智能手机、平板电脑、便携计算机等终端设备。该账单处理装置1至少包括存储器11、处理器12,通信总线13,以及网络接口14。
其中,存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器11在一些实施例中可以是账单处理装置1的内部存储单元,例如该账单处理装置1的硬盘。存储器11在另一些实施例中也可以是账单处理装置1的外部存储设备,例如账单处理装置1上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,存储器11还可以既包括账单处理装置1的内部存储单元也包括外部存储设备。存储器11不仅可以用于存储安装于账单处理装置1的应用软件及各类数据,例如账单处理程序01的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器12在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器11中存储的程序代码或处理数据,例如执行账单处理程序01等。
通信总线13用于实现这些组件之间的连接通信。
网络接口14可选的可以包括标准的有线接口、无线接口(如WI-FI接口),通常用于在该装置1与其他电子设备之间建立通信连接。
可选地,该装置1还可以包括用户接口,用户接口可以包括显示器(Display)、输入单元比如键盘(Keyboard),可选的用户接口还可以包括标准的有线接口、无线接口。可选地,在一些实施例中,显示器可以是LED显示器、液晶显示器、触控式液晶显示器以及OLED(Organic Light-Emitting Diode,有机发光二极管)触摸器等。其中,显示器也可以适当的称为显示屏或显示单元,用于显示在账单处理装置1中处理的信息以及用于显示可视化的用户界面。
图2仅示出了具有组件11-14以及账单处理程序01的账单处理装置1,本领域技术人员可以理解的是,图1示出的结构并不构成对账单处理装置1的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
在图2所示的装置1实施例中,存储器11中存储有账单处理程序01;处理器12执行存储器11中存储的账单处理程序01时实现如下步骤:
获取订单***的交易请求,将订单***的交易请求相关的交易数据存储于订单***的数据库中。
在本实施例中,渠道方发送实时交易请求给到订单***,订单***实时将交易请求相关的交易数据存储于数据库。
进一步地,在本发明装置的另一实施例中,账单处理程序还可被处理器调用,以实现如下步骤:
按照滑动窗口策略,在每个时间窗口启动定时任务,将时间窗口内的订单***的交易数据分片批量写入Hadoop分布式文件***(HDFS),按照订单的申请单号的哈希码hashcode进行分片。例如文件名以0开始,步长为1,递增。
从渠道方的文件服务器上读取渠道方的交易数据,将渠道方的交易数据存储于订单***的NAS盘上。
在本实施例中,从渠道方的文件服务器上定期(如每天等等)读取渠道方的交易数据,将渠道方的交易数据存储于订单***的网络附属存储NAS盘上。定期读取的时间频率可以事先配置。
其中,按照渠道方的订单的申请单号的哈希码hashcode进行分片。例如文件名以0开始,步长为1,递增。
调用订单***的交易数据及渠道方的交易数据,将订单***的交易数据及渠道方的交易数据进行比对。
其中以集群的架构形式管理订单***的交易数据及渠道方的交易数据。Spark应用在集群上以独立的进程集合运行,在主程序(称作驱动程序)中以SparkContext对象来调节。特别的,为了在集群上运行,SparkContext可以与几个类型的集群管理器(Spark自身单独的集群管理器或者Mesos/YARN)相连接,这些集群管理器可以在应用间分配资源。一旦连接,Spark需要在集群上的线程池子节点,也就是那些执行计算和存储应用数据的工作进程。然后,它将把你的应用代码(以JAR或者Python定义的文件并传送到SparkContext)发送到线程池。最后,SparkContext发送任务让线程池运行。
各个应用有自己的线程池进程,会在整个应用的运行过程中保持并在多个线程中运行任务。这样做的好处是把应用相互孤立,既在调度方面(各个驱动调度它自己的任务)也在执行方面(不同应用的任务在不同的JVM上运行)。
对于潜在的集群管理器来说,Spark是不可知的。只要它需要线程池的进程和它们间的通信,那么即使是在也支持其他应用的集群管理器(例如,Mesos/YARN)上运行也相对简单。
因为驱动在集群上调度任务,它应该运行接近到工作节点,在相同的局域网内更好。
优选地,账单处理程序还可被处理器调用,以实现如下步骤包括:
订单***调用Spark集群的Driver,启动Spark任务调度,Spark的各个任务Task从NAS盘上将渠道方的交易数据读取到Spark节点中,其中渠道方的交易数据包括渠道来源标识;并基于渠道来源标识、根据渠道方的交易数据中订单的申请单号的哈希码hashcode进行重分区步骤处理,处理完后Spark节点从HDFS***中读入订单***的交易数据,分别读取到Spark的任务Task编号ID对应的分片。
优选地,通过上面的处理步骤后,在Spark中的各个分片中存在了订单***的交易数据和渠道方的交易数据,各个任务Task开始比对对订单***的交易数据和渠道方的交易数据处理。
当订单***的交易数据及渠道方的交易数据进行比对成功时,将订单***的NAS盘中的文件上传到渠道方的文件服务器中。
优选地,当订单***的交易数据及渠道方的交易数据进行比对成功时,也就是订单***的交易数据和渠道方的交易数据完全一致时,Spark将订单***的Map对象转成String对象写入到HDFS***;所有分片写入完成后,调用HDFS***的API,将每个分配的文件合并,并上传到订单***的NAS盘,订单***将该NAS盘下的文件上传到渠道方的sftp服务器上。
当订单***的交易数据及渠道方的交易数据进行比对不成功时,也就是说对账有问题,则需要人工处理数据,将数据处理完成后,在次重复上面的步骤重新对账。
因此,优选地,当订单***的交易数据及渠道方的交易数据进行比对不成功时,接收对问题数据的处理,并重新进行对账。
优选地,所述HDFS***配置有容错结构,其中容错结构由元数据与时间戳组成。相同订单号数据,时间戳大者为有效数据。因为针对HDFS上数据可能修改,同时HDFS不支持修改的问题,涉及一个容错结构,避免因数据修改而重新导入数据库数据。容错结构由元数据与时间戳组成,相同订单号数据,时间戳大者为有效数据。
本发明获取订单***的交易请求,将订单***的交易请求相关的交易数据存储于订单***的数据库中,从渠道方的文件服务器上读取渠道方的交易数据,将渠道方的交易数据存储于订单***的NAS盘上,调用订单***的交易数据及渠道方的交易数据,将订单***的交易数据及渠道方的交易数据进行比对,当订单***的交易数据及渠道方的交易数据进行比对成功时,将订单***的NAS盘中的文件上传到渠道方的文件服务器中。本发明对账性能稳定,随着交易的数据量越来越大,对账和导出文件性能不会有明显的下降;可扩展性强:可以通过增加机器节点的方式提高性能;减小***压力:采用类滑动窗口式处理思想,减少对账和导出文件的处理对数据库造成的压力;业务容错:针对HDFS只可新增和追加的特点,设计容错结构,避免数据修改带来大的性能损耗。
可选地,在其他实施例中,账单处理程序还可以被分割为一个或者多个模块,一个或者多个模块被存储于存储器11中,并由一个或多个处理器(本实施例为处理器12)所执行以完成本发明,本发明所称的模块是指能够完成特定功能的一系列计算机程序指令段,用于描述账单处理程序在账单处理装置中的执行过程。
例如,参照图3所示,为本发明账单处理装置一实施例中的账单处理程序的程序模块示意图,该实施例中,账单处理程序可以被分割为板块获取模块10、存储模块20、比对模块30和发送模块40,示例性地:
获取模块10用于:获取订单***的交易请求,将订单***的交易请求相关的交易数据存储于订单***的数据库中;
存储模块20用于:从渠道方的文件服务器上读取渠道方的交易数据,将渠道方的交易数据存储于订单***的网络附属存储NAS盘上;
比对模块30用于:调用订单***的交易数据及渠道方的交易数据,将订单***的交易数据及渠道方的交易数据进行比对;
发送模块40用于:当订单***的交易数据及渠道方的交易数据进行比对成功时,将订单***的NAS盘中的文件上传到渠道方的文件服务器中。
上述获取模块10、存储模块20、比对模块30和发送模块40等程序模块被执行时所实现的功能或操作步骤与上述实施例大体相同,在此不再赘述。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有账单处理程序,所述账单处理程序可被一个或多个处理器执行,以实现如下操作:
获取订单***的交易请求,将订单***的交易请求相关的交易数据存储于订单***的数据库中;
从渠道方的文件服务器上读取渠道方的交易数据,将渠道方的交易数据存储于订单***的网络附属存储NAS盘上;
调用订单***的交易数据及渠道方的交易数据,将订单***的交易数据及渠道方的交易数据进行比对;
当订单***的交易数据及渠道方的交易数据进行比对成功时,将订单***的NAS盘中的文件上传到渠道方的文件服务器中。
本发明计算机可读存储介质具体实施方式与上述账单处理装置和方法各实施例基本相同,在此不作累述。
需要说明的是,上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。并且本文中的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在如上所述的一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。
Claims (10)
1.一种账单处理方法,其特征在于,所述方法包括:
获取订单***的交易请求,将订单***的交易请求相关的交易数据存储于订单***的数据库中;
从渠道方的文件服务器读取渠道方的交易数据,将渠道方的交易数据存储于订单***的网络附属存储NAS盘上;
调用订单***的交易数据及渠道方的交易数据,将订单***的交易数据及渠道方的交易数据进行比对;
当订单***的交易数据及渠道方的交易数据进行比对成功时,将订单***的NAS盘中的文件上传到渠道方的文件服务器中。
2.如权利要求1所述的账单处理方法,其特征在于,所述将订单***的交易请求相关的交易数据存储于订单***的数据库中包括:
按照滑动窗口策略,在每个时间窗口启动定时任务,将时间窗口内的订单***的交易数据分片批量写入Hadoop分布式文件***,按照订单的申请单号的哈希码hashcode进行分片。
3.如权利要求1所述的账单处理方法,其特征在于,所述调用订单***的交易数据及渠道方的交易数据包括:
订单***调用Spark集群的Driver,启动Spark任务调度,Spark的各个任务Task从NAS盘上将渠道方的交易数据读取到Spark节点中,其中渠道方的交易数据包括渠道来源标识;
并基于渠道来源标识、根据渠道方的交易数据中订单的申请单号的哈希码hashcode进行重分区处理,处理完后Spark节点从Hadoop分布式文件***中读入订单***的交易数据,分别读取到Spark的任务Task编号ID对应的分片。
4.如权利要求1所述的账单处理方法,其特征在于,所述当订单***的交易数据及渠道方的交易数据进行比对成功时,将订单***的NAS盘中的文件上传到渠道方的文件服务器中,包括:
当订单***的交易数据及渠道方的交易数据进行比对成功时,Spark将订单***的Map对象转成String对象写入到Hadoop分布式文件***;
所有分片写入完成后,调用Hadoop分布式文件***的API,将每个分配的文件合并,并上传到订单***的NAS盘,订单***将该NAS盘下的文件上传到渠道方的sftp服务器上。
5.如权利要求1所述的账单处理方法,其特征在于,当订单***的交易数据及渠道方的交易数据进行比对不成功时,接收对问题数据的处理,并重新进行对账。
6.如权利要求2至4任一项所述的账单处理方法,其特征在于,所述Hadoop分布式文件***配置有容错结构,其中容错结构由元数据与时间戳组成,相同订单号数据,时间戳大者为有效数据。
7.一种账单处理装置,其特征在于,所述装置包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的账单处理程序,所述账单处理程序被所述处理器执行时实现如下步骤:
获取订单***的交易请求,将订单***的交易请求相关的交易数据存储于订单***的数据库中;
从渠道方的文件服务器读取渠道方的交易数据,将渠道方的交易数据存储于订单***的网络附属存储NAS盘上;
调用订单***的交易数据及渠道方的交易数据,将订单***的交易数据及渠道方的交易数据进行比对;
当订单***的交易数据及渠道方的交易数据进行比对成功时,将订单***的NAS盘中的文件上传到渠道方的文件服务器中。
8.如权利要求7所述的账单处理装置,其特征在于,所述账单处理程序还可被所述处理器执行,还实现如下步骤:
按照滑动窗口策略,在每个时间窗口启动定时任务,将时间窗口内的订单***的交易数据分片批量写入Hadoop分布式文件***,按照订单的申请单号的哈希码hashcode进行分片。
9.如权利要求7所述的账单处理装置,其特征在于,所述账单处理程序还可被所述处理器执行,实现如下步骤:
订单***调用Spark集群的Driver,启动Spark任务调度,Spark的各个任务Task从NAS盘上将渠道方的交易数据读取到Spark节点中,其中渠道方的交易数据包括渠道来源标识;
并基于渠道来源标识、根据渠道方的交易数据中订单的申请单号的哈希码hashcode进行重分区处理,处理完后Spark节点从Hadoop分布式文件***中读入订单***的交易数据,分别读取到Spark的任务Task编号ID对应的分片。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有账单处理程序,所述账单处理程序可被一个或者多个处理器执行,以实现如权利要求1至6中任一项所述的账单处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910007213.XA CN109816481A (zh) | 2019-01-04 | 2019-01-04 | 账单处理方法、装置及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910007213.XA CN109816481A (zh) | 2019-01-04 | 2019-01-04 | 账单处理方法、装置及计算机可读存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109816481A true CN109816481A (zh) | 2019-05-28 |
Family
ID=66603944
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910007213.XA Pending CN109816481A (zh) | 2019-01-04 | 2019-01-04 | 账单处理方法、装置及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109816481A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110544080A (zh) * | 2019-07-03 | 2019-12-06 | 威富通科技有限公司 | 一种支付对账方法及服务器 |
CN111143401A (zh) * | 2019-12-27 | 2020-05-12 | 中国银行股份有限公司 | 查询信息的处理方法及装置 |
CN111899011A (zh) * | 2020-07-29 | 2020-11-06 | 广州海鹚网络科技有限公司 | 一种医务账单对账***、计算机设备和存储介质 |
CN112052141A (zh) * | 2020-09-02 | 2020-12-08 | 平安科技(深圳)有限公司 | 数据分片校验方法、装置、计算机设备及可读存储介质 |
CN112258191A (zh) * | 2020-12-22 | 2021-01-22 | 深圳市深圳通有限公司 | 数据对账方法、装置、设备及存储介质 |
CN113177400A (zh) * | 2021-04-28 | 2021-07-27 | 中国工商银行股份有限公司 | 基于大数据量文件的关键字比对方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105989462A (zh) * | 2015-02-02 | 2016-10-05 | 卓望数码技术(深圳)有限公司 | 一种支持不同支付渠道的结算方法及结算*** |
CN107665460A (zh) * | 2016-07-24 | 2018-02-06 | 平安科技(深圳)有限公司 | 基于实时交易的核算方法及装置 |
CN107993151A (zh) * | 2018-01-17 | 2018-05-04 | 平安科技(深圳)有限公司 | 基金交易清算方法、装置、设备及计算机可读存储介质 |
CN109034993A (zh) * | 2018-09-29 | 2018-12-18 | 深圳前海微众银行股份有限公司 | 对账方法、设备、***及计算机可读存储介质 |
-
2019
- 2019-01-04 CN CN201910007213.XA patent/CN109816481A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105989462A (zh) * | 2015-02-02 | 2016-10-05 | 卓望数码技术(深圳)有限公司 | 一种支持不同支付渠道的结算方法及结算*** |
CN107665460A (zh) * | 2016-07-24 | 2018-02-06 | 平安科技(深圳)有限公司 | 基于实时交易的核算方法及装置 |
CN107993151A (zh) * | 2018-01-17 | 2018-05-04 | 平安科技(深圳)有限公司 | 基金交易清算方法、装置、设备及计算机可读存储介质 |
CN109034993A (zh) * | 2018-09-29 | 2018-12-18 | 深圳前海微众银行股份有限公司 | 对账方法、设备、***及计算机可读存储介质 |
Non-Patent Citations (1)
Title |
---|
袁景凌: "《Spark案例与实验教程》", 30 April 2017, 武汉大学出版社, pages: 136 - 137 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110544080A (zh) * | 2019-07-03 | 2019-12-06 | 威富通科技有限公司 | 一种支付对账方法及服务器 |
CN111143401A (zh) * | 2019-12-27 | 2020-05-12 | 中国银行股份有限公司 | 查询信息的处理方法及装置 |
CN111899011A (zh) * | 2020-07-29 | 2020-11-06 | 广州海鹚网络科技有限公司 | 一种医务账单对账***、计算机设备和存储介质 |
CN112052141A (zh) * | 2020-09-02 | 2020-12-08 | 平安科技(深圳)有限公司 | 数据分片校验方法、装置、计算机设备及可读存储介质 |
CN112258191A (zh) * | 2020-12-22 | 2021-01-22 | 深圳市深圳通有限公司 | 数据对账方法、装置、设备及存储介质 |
CN113177400A (zh) * | 2021-04-28 | 2021-07-27 | 中国工商银行股份有限公司 | 基于大数据量文件的关键字比对方法及装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109816481A (zh) | 账单处理方法、装置及计算机可读存储介质 | |
CN107908472A (zh) | 数据同步装置、方法及计算机可读存储介质 | |
CN109358851A (zh) | 图表组件的创建方法、装置及计算机可读存储介质 | |
CN107515933A (zh) | 修改源数据库表结构的方法、服务器、***及存储介质 | |
CN109726334A (zh) | 电子书籍的推送方法和装置 | |
CN110019267A (zh) | 一种元数据更新方法、装置、***、电子设备及存储介质 | |
CN109309712A (zh) | 基于接口异步调用的数据传输方法、服务器及存储介质 | |
CN108958881A (zh) | 数据处理方法、装置及计算机可读存储介质 | |
CN110457311A (zh) | 自动生成对账文件的方法、服务器及存储介质 | |
CN109544266A (zh) | 产品数据推送方法、装置及计算机可读存储介质 | |
CN104881454A (zh) | 参数的更新方法及*** | |
CN109271410A (zh) | 银行回单的提取方法、装置及计算机可读存储介质 | |
CN110457346A (zh) | 数据查询方法、装置及计算机可读存储介质 | |
CN110019263A (zh) | 信息存储方法和装置 | |
CN104598570A (zh) | 资源的抓取方法及装置 | |
CN112860662A (zh) | 数据血缘关系建立方法、装置、计算机设备及存储介质 | |
US20160232307A1 (en) | Server in visiting service management support system, control method thereof, and control program thereof | |
CN114157679A (zh) | 基于云原生分布式应用监控方法、装置、设备及介质 | |
CN109582888A (zh) | 网页书签整理方法及*** | |
CN109639801A (zh) | 数据节点分配及数据获取方法及*** | |
US20160019602A1 (en) | Advertisement method of electronic device and electronic device thereof | |
CN109241727B (zh) | 权限设置方法及装置 | |
CN116450723A (zh) | 数据提取方法、装置、计算机设备及存储介质 | |
CN109446159A (zh) | 多版本文件管理方法、服务器及计算机可读存储介质 | |
CN106599724B (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 |