CN113792074B - 一种数据处理方法及装置 - Google Patents

一种数据处理方法及装置 Download PDF

Info

Publication number
CN113792074B
CN113792074B CN202110919821.5A CN202110919821A CN113792074B CN 113792074 B CN113792074 B CN 113792074B CN 202110919821 A CN202110919821 A CN 202110919821A CN 113792074 B CN113792074 B CN 113792074B
Authority
CN
China
Prior art keywords
data
file
service data
cache
cache file
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
CN202110919821.5A
Other languages
English (en)
Other versions
CN113792074A (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.)
XIAMEN TIPRAY TECHNOLOGY CO LTD
Original Assignee
XIAMEN TIPRAY TECHNOLOGY CO LTD
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 XIAMEN TIPRAY TECHNOLOGY CO LTD filed Critical XIAMEN TIPRAY TECHNOLOGY CO LTD
Priority to CN202110919821.5A priority Critical patent/CN113792074B/zh
Publication of CN113792074A publication Critical patent/CN113792074A/zh
Application granted granted Critical
Publication of CN113792074B publication Critical patent/CN113792074B/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/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24552Database cache management
    • 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/25Integrating or interfacing systems involving database management systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本申请实施例提供了一种数据处理方法及装置,该方法包括采集端接收至少一个终端发送的业务数据,将至少一个终端的业务数据存储至第一缓存文件,在确定满足数据存储条件时,从第一缓存文件中确定出至少一个数据块,并将至少一个数据块存储至数据库。如此,该方案通过引入缓存文件作为临时存储业务数据的存储媒介,可以先将终端上传的业务数据存储在硬盘中的缓存文件,同时在存储至缓存文件时会给终端发送一个应答消息,然后再从缓存文件中读取业务数据存储至数据库,如此可以使得采集端能够及时正常地接收终端上传的业务数据,从而可以解决现有技术中存在采集端与数据库之间因失去连接而导致采集端无法正常接收终端的业务数据的问题。

Description

一种数据处理方法及装置
技术领域
本申请实施例涉及数据处理技术领域,尤其涉及一种数据处理方法及装置。
背景技术
现阶段,在将终端产生的业务数据存储至数据库时,通常是由采集服务器定时向各个终端发送业务数据请求,每个终端在接收到业务数据请求后,将自己运行过程中所产生的业务数据生成业务数据报文,并将业务数据报文发送给采集服务器。采集服务器在接收到业务数据报文后,对该业务数据报文进行解析,得到业务数据,并将该业务数据立即存储至数据库,同时将存储业务数据的执行结果应答给终端。然而,这种处理方式是将接收到的业务数据立即写入到数据库,而将业务数据写入到数据库所耗费的时间较长,因此终端所接收的应答就会比较慢,导致终端在应答响应时间内接收不到应答就会在采集服务器再次请求业务数据时重复上传之前发送的业务数据给采集服务器,从而增加采集服务器的负载,并会消耗较多的网络传输资源。同时,如果采集服务器与数据库失去连接,因为采集服务器是立即将接收的业务数据写入到数据库,内存并不较长时间缓存业务数据,且内存也缓存不了过多业务数据,因此会导致采集服务器无法正常接收到终端上传的业务数据。
综上,目前亟需一种数据处理方法,用以解决现有技术中存在采集端与数据库之间因失去连接而导致采集端无法正常接收终端的业务数据的问题。
发明内容
本申请实施例提供了一种数据处理方法及装置,用以解决现有技术中存在采集端与数据库之间因失去连接而导致采集端无法正常接收终端的业务数据的问题。
第一方面,本申请实施例提供了一种数据处理方法,包括:
采集端接收至少一个终端发送的业务数据;
所述采集端将所述至少一个终端的业务数据存储至第一缓存文件;
所述采集端在确定满足数据存储条件时,从所述第一缓存文件中确定出至少一个数据块,并将所述至少一个数据块存储至数据库。
上述技术方案中,因为现有技术方案中是因采集服务器在接收到终端上传的业务数据后立即将业务数据写入到数据库,而将业务数据写入到数据库所耗费的时间较长,使得终端可能在应答响应时间内接收不到应答,就会重复上传业务数据,从而影响该终端其它业务数据的上传进度。因此,本申请中的技术方案通过引入缓存文件作为临时存储业务数据的存储媒介,且采集端将终端的业务数据存储至缓存文件所耗费的时间短,如此可以先将终端上传的业务数据存储在硬盘中的缓存文件,并在将业务数据存储至缓存文件时,在应答响应时间内发送针对终端上传业务数据的应答响应给对应的终端,然后再从缓存文件中读取业务数据存储至数据库,如此可以使得采集端能够及时正常地接收终端上传的业务数据,并可以避免终端在应答响应时间内接收不到应答就会在采集服务器再次请求业务数据时重复上传之前发送的业务数据给采集服务器。具体来说,采集端在接收到至少一个终端的业务数据后,即可将该至少一个终端的业务数据存储至第一缓存文件,并发送针对各终端上传业务数据的应答响应给各自对应的终端,如此可以避免出现采集端在接收到业务数据后,直接将业务数据立即写入到数据库,导致终端在应答响应时间内接收不到应答,就会在采集服务器再次请求业务数据时重复上传之前发送的业务数据给采集服务器的情况,同时可以避免出现采集端与数据库之间因失去连接而导致采集端无法正常接收终端的业务数据的情况,从而可以解决现有技术中存在采集端与数据库之间因失去连接而导致采集端无法正常接收终端的业务数据的问题。然后,在确定满足存储条件时,就可以从第一缓存文件中确定出至少一个数据块,并将该至少一个数据块存储至数据库,如此可以从第一缓存文件中获取各终端的业务数据,并集中批量式地写入到数据库,可以节省数据库的输入/输出资源。
在一种可能的实现方式中,所述采集端将所述至少一个终端的业务数据存储至第一缓存文件,包括:
所述采集端创建用于执行业务数据写入操作的写线程;
所述采集端通过所述写线程,将所述至少一个终端的业务数据存储至所述第一缓存文件。
上述技术方案中,采集端通过创建的写线程,可以及时地将至少一个终端的业务数据写入到第一缓存文件中,从而可以使得采集端在应答响应时间内将针对终端上传业务数据的应答响应发送给对应的终端,以此避免出现终端接收到响应应答较慢的问题,同时可以避免出现因业务数据量大或网络不好导致终端在响应应答时间内接收不到应答的情况,从而可以提高终端上传业务数据的效率。
在一种可能的实现方式中,所述采集端通过所述写线程,将所述至少一个终端的业务数据存储至所述第一缓存文件,包括:
所述采集端通过所述写线程,将所述至少一个终端的业务数据依次写入到数据缓存区中,并确定所述数据缓存区存储的业务数据大小是否满足第一设定阈值;
若所述数据缓存区存储的业务数据大小满足所述第一设定阈值,则所述采集端通过所述写线程,将所述数据缓存区中的业务数据存储至所述第一缓存文件。
上述技术方案中,通过将至少一个终端的业务数据依次写入到数据缓存区中,并在确定数据缓存区存储的业务数据大小满足第一设定阈值时,刷新数据缓存区,如此可以减少读取硬盘的次数,以便提高系统性能。
在一种可能的实现方式中,在将所述数据缓存区中的业务数据存储至所述第一缓存文件之后,还包括:
所述采集端更新所述第一缓存文件的文件头,并记录针对所述第一缓存文件的当前文件指针偏移位置。
上述技术方案中,在将数据缓存区中的业务数据存储至第一缓存文件之后,会更新第一缓存文件的文件头,同时会记录针对第一缓存文件的当前文件指针偏移位置,如此可以确保采集端异常重启后,可以及时地读取第一缓存文件的文件头信息,并能够正确地定位到在重启之前最近的一次文件指针偏移位置,以便覆盖可忽略的业务数据继续进行写业务数据至第一缓存文件的操作。比如,可以正确地定位到上一次文件指针的写偏移位置,或者也可以正确地定位到上一次文件指针的读偏移位置。
在一种可能的实现方式中,在将所述数据缓存区中的业务数据存储至所述第一缓存文件之后,还包括:
所述采集端确定所述第一缓存文件的文件大小是否满足第二设定阈值;
若所述第一缓存文件的文件大小满足所述第二设定阈值,则所述采集端创建第二缓存文件,并更新配置文件中的文件编号记录;所述第二缓存文件用于继续存储业务数据。
上述技术方案中,在确定第一缓存文件的文件大小满足第二设定阈值时,即可创建第二缓存文件,以便避免新接收的业务数据没有地方存储而导致业务数据丢失,并可以导致采集端无法正常接收终端上传的业务数据,从而可以确保采集端能够及时地接收终端上传的业务数据。
在一种可能的实现方式中,从所述第一缓存文件中确定出至少一个数据块,并将所述至少一个数据块存储至数据库,包括:
所述采集端创建用于执行缓存文件中业务数据读操作的读线程;
所述采集端通过所述读线程,将所述第一缓存文件中的业务数据打包为至少一个数据块,并将所述至少一个数据块存储至所述数据库。
上述技术方案中,采集端通过创建的读线程,可以将第一缓存文件中的业务数据打包为至少一个数据块,并将该至少一个数据块进行集中批量式地存储至数据库中,而无需采集端在针对少量的业务数据时,是通过频繁的访问数据库进行该少量的业务数据的写入操作,从而可以节省数据库的输入/输出资源。
在一种可能的实现方式中,在将所述至少一个数据块存储至数据库之前,还包括:
针对每个数据块,所述采集端对所述数据块中的业务数据进行内容校验,确定所述数据块中的业务数据是否符合设定要求;
若所述数据块中的业务数据符合设定要求,则所述采集端将所述数据块中的数据内容存储至所述数据库;
若所述数据块中的业务数据不符合设定要求,则所述采集端重新确定所述数据块中的业务数据的文件指针偏移位置。
上述技术方案中,通过针对每个数据块中的业务数据进行内容校验,可以确保存储至数据库中的业务数据是正确的,同时可以筛除一些脏数据或无用的业务数据。
在一种可能的实现方式中,所述数据存储条件为设置的用于读取缓存文件中业务数据的时间,或为写线程在更新缓存文件的文件头后所生成的数据读取指令。
上述技术方案中,通过设置用于读取缓存文件中业务数据的时间,或者配置写线程在更新缓存文件的文件头后生成数据读取指令,则可以确保缓存文件中存储有一定数量的业务数据,并在满足该读取时间后,就能够充分的利用读线程读取缓存文件中的业务数据进行存储至数据库,同时可以避免缓存文件中没有业务数据或只有少量的业务数据,导致采集端调用读线程进行读取操作而浪费系统资源,从而可以实现集中批量式存储业务数据至数据库的目的。
第二方面,本申请实施例还提供了一种数据处理装置,包括:
接收单元,用于接收至少一个终端发送的业务数据;
处理单元,用于将所述至少一个终端的业务数据存储至第一缓存文件;在确定满足数据存储条件时,从所述第一缓存文件中确定出至少一个数据块,并将所述至少一个数据块存储至数据库。
在一种可能的实现方式中,所述处理单元具体用于:
创建用于执行业务数据写入操作的写线程;
通过所述写线程,将所述至少一个终端的业务数据存储至所述第一缓存文件。
在一种可能的实现方式中,所述处理单元具体用于:
通过所述写线程,将所述至少一个终端的业务数据依次写入到数据缓存区中,并确定所述数据缓存区存储的业务数据大小是否满足第一设定阈值;
若所述数据缓存区存储的业务数据大小满足所述第一设定阈值,则通过所述写线程,将所述数据缓存区中的业务数据存储至所述第一缓存文件。
在一种可能的实现方式中,所述处理单元还用于:
在将所述数据缓存区中的业务数据存储至所述第一缓存文件之后,更新所述第一缓存文件的文件头,并记录针对所述第一缓存文件的当前文件指针偏移位置。
在一种可能的实现方式中,所述处理单元还用于:
在将所述数据缓存区中的业务数据存储至所述第一缓存文件之后,确定所述第一缓存文件的文件大小是否满足第二设定阈值;
若所述第一缓存文件的文件大小满足所述第二设定阈值,则所述采集端创建第二缓存文件,并更新配置文件中的文件编号记录;所述第二缓存文件用于继续存储业务数据。
在一种可能的实现方式中,所述处理单元具体用于:
创建用于执行缓存文件中业务数据读操作的读线程;
通过所述读线程,将所述第一缓存文件中的业务数据打包为至少一个数据块,并将所述至少一个数据块存储至所述数据库。
在一种可能的实现方式中,所述处理单元还用于:
在将所述至少一个数据块存储至数据库之前,针对每个数据块,对所述数据块中的业务数据进行内容校验,确定所述数据块中的业务数据是否符合设定要求;
若所述数据块中的业务数据符合设定要求,则将所述数据块中的数据内容存储至所述数据库;
若所述数据块中的业务数据不符合设定要求,则重新确定所述数据块中的业务数据的文件指针偏移位置。
在一种可能的实现方式中,所述数据存储条件为设置的用于读取缓存文件中业务数据的时间,或为写线程在更新缓存文件的文件头后所生成的数据读取指令。
第三方面,本申请实施例提供一种计算设备,包括:
存储器,用于存储计算机程序;
处理器,用于调用所述存储器中存储的计算机程序,按照获得的程序执行数据处理方法方法的步骤。
第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行程序,所述计算机可执行程序用于使计算机执行数据处理方法方法的步骤。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种可能的系统架构的示意图;
图2为本申请实施例提供的一种数据处理方法的流程示意图;
图3为本申请实施例提供的另一种数据处理方法的流程示意图;
图4为本申请实施例提供的一种数据处理装置的结构示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,显然,所描述的实施例仅仅是本申请的一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
本申请的示意性实施例及其说明用于解释本申请,但并不作为对申请的限定。另外,在附图及实施方式中所使用相同或类似标号的元件/构件是用来代表相同或类似部分。
应当理解,本申请中所使用的“第一”、“第二”等,并非特别指先后次序或顺位的意思,也非用以限定本申请,在适当情况下可以互换,其仅为了区别以相同技术用语描述的元件或操作。
此外,本申请中所使用的“包含”、“包括”、“具有”、“含有”等,均为开放性的用语,即意指包含但不限于。另外,本申请中所使用的“及/或”,包括所述事物的任一或全部组合。
图1示例性的示出了本申请实施例的一种可能的系统架构。如图1所示,该系统架构可以包括控制中心100和至少一个终端。其中,控制中心100可以包括控制台101、采集端102、数据库103以及缓存文件104;至少一个终端可以为终端201、终端202和终端203等。其中,控制中心100与每个终端之间可以通过有线方式或者无线方式进行连接,本申请实施例对此并不作限定。
其中,控制台101用于在管理员需要访问数据库103时,可以通过控制台101访问数据库103,并进行业务数据的查看、分析、统计报表等。每个终端负责在接收到采集端102的业务数据获取请求时,将自己在运行过程中产生的业务数据上传至采集端102,并根据采集端102发送的应答结果做相应处理,以便防止重复上报或少报业务数据。采集端102用于定时向一个或多个终端发送业务数据获取请求,将接收到一个或多个终端的业务数据,先存储至缓存文件104,再从缓存文件104获取业务数据存储至数据库。数据库103用于最终存储各终端上传至采集端102的业务数据。缓存文件104作为临时存储业务数据的存储媒介,临时存储各终端上传的业务数据。其中,采集端102可以是一台物理机(即服务器),或者是一个由多个物理机组成的分布式服务集群,终端可以是笔记本电脑、台式电脑、平板电脑、智能手机、智能穿戴设备或智能手环等。
需要说明的是,上述图1所示的系统架构仅是一种示例,本申请实施例对此并不作限定。
基于上述描述,图2示例性的示出了本申请实施例提供的一种数据处理方法的流程,该流程可以由数据处理装置执行。
如图2所示,该流程具体包括:
步骤201,采集端接收至少一个终端发送的业务数据。
步骤202,所述采集端将所述至少一个终端的业务数据存储至第一缓存文件。
步骤203,所述采集端在确定满足数据存储条件时,从所述第一缓存文件中确定出至少一个数据块,并将所述至少一个数据块存储至数据库。
在上述步骤201中,采集端在需要收集一个或多个终端的业务数据时,会向该一个或多个终端发送业务数据获取请求,该一个或多个终端在接收到业务数据获取请求后,就可以将自身在运行过程中产生的业务数据上传至采集端。当然,终端可以选择一次上传的业务数据量大小,比如某一终端可以选择一次上传500条业务数据,或者采集端在向终端发送业务数据请求时,已经设置好终端每次需要上传多少条业务数据,终端在接收到业务数据获取请求后,即可根据采集端设置好的业务数据上传量,打包好该业务数据上传量的业务数据进行上传。而且,采集端也可以选择每次向多少个终端发送业务数据获取请求,比如采集端本次选择向10个终端发送业务数据获取请求,或者本次选择向20个终端发送业务数据获取请求等;下次可以选择向30个终端发送业务数据获取请求,或者选择向50个终端发送业务数据获取请求等。此外,采集端在向终端发送业务数据获取请求时,也可以设置好业务数据的获取时间段,比如获取终端最近10天、20天或30天等时间内的业务数据。
示例性地,采集端向终端A和终端B发送业务数据获取请求,该业务数据获取请求中包括每次上传业务数据的数量,比如100条业务数据,以及包括业务数据获取时间段,比如最近10天内的业务数据。则终端A在接收到该业务数据获取请求后,即可根据采集端的设定要求,将最近10天内自身在运行过程中产生的业务数据按照每次上传100条业务数据的方式进行上传给采集端。同理,终端B在接收到业务数据获取请求后,也是按照将最近10天内自身在运行过程中产生的业务数据每次上传100条业务数据的方式进行上传采集端。
在上述步骤202中,采集端在将业务数据存储至第一缓存文件时,首先会创建用于执行业务数据写入操作的写线程,通过该写线程将至少一个终端的业务数据存储至第一缓存文件中。应理解,采集端可以创建一个或多个写线程,用于执行业务数据写入到缓存文件的操作。其中,在通过写线程将至少一个终端的业务数据存储至第一缓存文件中时,是将至少一个终端的业务数据依次写入到数据缓存区中的,同时,在将业务数据写入到数据缓存区时,还会实时判断数据缓存区存储的业务数据大小是否满足第一设定阈值,如此可以避免数据缓存区所存储的业务数据超过数据缓存区的内存上限值,同时也是为了减少在将数据缓存区中的业务数据写入到缓存文件的过程中读取硬盘的次数。如果数据缓存区存储的业务数据大小满足第一设定阈值,则可以通过写线程,将数据缓存区中的业务数据存储至第一缓存文件中,同时更新第一缓存文件的文件头,并记录针对第一缓存文件的当前文件指针偏移位置;如果数据缓存区存储的业务数据大小不满足第一设定阈值,则可以继续向数据缓存区进行存储业务数据。其中,第一设定阈值可以根据本领域技术人员的经验值或者根据实际应用场景进行设置,比如可以设置为100k、150k、200k或300k等。
需要说明的是,采集端在启动时,也会先定位到读写缓存文件的目录编号、文件编号以及文件指针上一次偏移位置(即上一次的读写位置),在接收到业务数据后,向数据缓存区写4个字节数据长度,再写数据内容(2字节标识+1字节crc校验位+业务数据内容)。当数据缓存区满足100k大小后,再刷新缓冲区,物理写入磁盘,同时更新缓存文件的文件头,并记录文件指针偏移位置。其中。满足100k大小再刷新数据缓存区的目的是为了减少读取硬盘的次数,以提高系统性能。更新缓存文件的文件头,并记录文件指针偏移位置是相当于文件事务操作,在服务器异常重启后,可以及时准确地读取到缓存文件的文件头信息,同时正确地定位到上一次文件指针的写偏移位置,以便覆盖可忽略的业务数据(比如脏数据)继续进行写业务数据至第一缓存文件的操作。而且,在服务器异常重启后,也可以及时准确地定位到读缓存文件的目录编号、文件编号以及文件指针上一次的读偏移位置。
示例性地,以终端A的业务数据为例,假设采集端在启动时,定位到写缓存文件的目录编号为1、文件编号为1以及文件指针上一次的写偏移位置为x,则在接收到终端A的业务数据后,会先向数据缓存区中写4个字节数据长度,再写数据内容,以此写入终端A的业务数据。并在该数据缓存区满100k大小后,将数据缓存区中的业务数据向文件编号为1的缓存文件,且从写位置x开始进行写入终端A的业务数据。当然,采集端在启动时,也可以定位读缓存文件的目录编号(比如目录编号为1)、文件编号(比如文件编号为1)以及文件指针上一次的读偏移位置(比如为y,该y是小于x的),如此,就会从目录编号为1且文件编号为1的缓存文件中从位置y开始读取业务数据。或者,比如定位读缓存文件的目录编号为2、文件编号为2以及文件指针上一次的读偏移位置为z,则就会从目录编号为2且文件编号为2的缓存文件中从位置z开始读取业务数据。
此外,在将数据缓存区中的业务数据存储至第一缓存文件之后,采集端还会判断第一缓存文件的文件大小是否满足第二设定阈值,从而确定是否需要创建第二缓存文件,以此避免新接收的业务数据没有地方存储而导致业务数据丢失,并可以导致采集端无法正常接收终端上传的业务数据,从而可以确保采集端能够及时地接收终端上传的业务数据。如果第一缓存文件的文件大小满足第二设定阈值,则需要创建第二缓存文件,并更新配置文件中的文件编号记录。其中,第二缓存文件用于继续存储业务数据。如果第一缓存文件的文件大小不满足第二设定阈值,则可以继续向该第一缓存文件中进行写入业务数据。其中,第二设定阈值可以根据本领域技术人员的经验值或者根据实际应用场景进行设置,比如可以设置为150M、200M、300M或500M等。
示例性地,在将数据缓存区中的业务数据存储至文件编号为1的缓存文件后,同时采集端会判断文件编号为1的缓存文件的文件大小是否满足第二设定阈值(比如500M),如果文件编号为1的缓存文件的文件大小超过500M,则会在文件编号为1的缓存文件的文件尾加上结束标记,并创建文件编号为2的缓存文件,用于继续存储业务数据;如果文件编号为1的缓存文件的文件大小没有超过500M,则可以继续向文件编号为1的缓存文件中写入业务数据。此外,如果缓存文件的个数超过某一设定值,比如100个、500个、1000个、2000个或5000个等,假设某一设定值为5000个,如果缓存文件的个数超过5000个,则需要创建新的缓存目录,比如创建目录编号为2的缓存目录,同时需要更新配置文件中的写记录(即目录编号、文件编号等)。
需要说明的是,按照现有技术方案,如果采集端与数据库失去连接,则采集端是无法正常接收到终端上传的业务数据的,当然为了确保终端本地的内存的可用性,以便不影响其它业务的正常运行,是需要定时清理暂时存储在内存的业务数据的,所以终端的业务数据是无法长时间存储在本地的。如果终端的业务数据上传长时间受影响,则会导致终端本地的业务数据丢失。此外,现有技术方案在采集端与数据库恢复连接后,各终端蜂拥上传业务数据,长时间占用带宽,从而影响其它业务的正常运行。采用本申请中的技术方案,即使采集端与数据库失去连接,也不会影响采集端可以及时正常的接收终端上传的业务数据,因为采集端是先将终端上传的业务数据存储在硬盘中的缓存文件,同时在存储至缓存文件时会给终端发送一个应答消息,然后再从缓存文件中读取业务数据存储至数据库,如此可以使得采集端能够及时正常地接收终端上传的业务数据,而不是基于采集端的内存进行存储业务数据,当然也不是接收到业务数据立即存储至数据库,从而可以提高采集端接收业务数据的效率,同时可以避免出现终端因上传业务数据的进度长时间受影响而导致终端本地的业务数据丢失的情况,从而可以确保终端本地业务数据的完整性,当然也不会出现业务数据上传长时间占用大量带宽的情况。
在上述步骤203中,在采集端确定满足数据存储条件之前,可以创建用于执行缓存文件中业务数据读操作的读线程。再在确定满足数据存储条件时,通过读线程,将第一缓存文件中的业务数据打包为至少一个数据块,并将至少一个数据块存储至数据库。如此,通过设置用于读取缓存文件中业务数据的时间,或者配置写线程在更新缓存文件的文件头后生成数据读取指令,则可以确保缓存文件中存储有一定数量的业务数据,并在满足该读取时间后,就能够充分的利用读线程读取缓存文件中的业务数据进行存储至数据库,同时可以避免缓存文件中没有业务数据或只有少量的业务数据,导致采集端调用读线程进行读取操作而浪费系统资源,从而可以实现集中批量式存储业务数据至数据库的目的。比如,可以将第一缓存文件中的100条、200条或300条等打包为一个数据块,或者可以设置每个数据块的大小为1M、2M或3M等,例如设置200条数据为一个数据块,假设第一缓存文件中有2000条数据,则可以将第一缓存文件中的业务数据打包为10个数据块,如此,在将每个数据块写入到数据库中时,也即是集中批量式地将每个数据块的200条数据写入到数据库中;或者设置每个数据块的大小为2M,如此可以基于每条数据所占内存大小,将多条数据打包形成为一个数据块,假设第一缓存文件中每条数据的大小都为8k,且假设第一缓存文件中有1280条数据,则可以将128条数据打包形成为一个数据块,而且可以打包出10个数据块。其中,采集端可以创建一个或多个读线程,用于执行业务数据写入到数据库的操作,比如可以利用多个读线程并行执行读取第一缓存文件中业务数据的操作,然后将读取出的业务数据存储至数据库。在将至少一个数据块存储至数据库之前,需要针对读取出的至少一个数据块中每个数据块的业务数据进行内容校验。具体地,采集端从第一缓存文件中获取一个数据块,针对该数据块中的每条数据,先度数据长度,再读数据内容,并对业务数据进行内容校验,确定数据块中的业务数据是否符合设定要求。如果数据块中的业务数据符合设定要求,则可以将该数据块中的业务数据集中批量式地存储至数据库;如果数据块中的业务数据不符合设定要求,则需要重新确定所述数据块中的业务数据的文件指针偏移位置,也即是基于2字节标识重新定位到正确的文件指针偏移位置,以便获取到正确的业务数据。其中,在将数据块中的业务数据集中批量式地存储至数据库时,如果写入数据库成功,同时会更新配置文件中的读记录(比如文件指针偏移位置等);如果写入数据库失败,则需要分析写入失败原因,并基于写入失败原因采用相应的处理措施进行处理,比如写入失败原因是访问数据库失败,则需要回滚,重新定位到上一次读的位置,然后重新进行写入的操作。其中,需要说明的是,如果读写是同一个缓存文件,读文件的位置不能大于写文件的位置,因为是需要先将业务数据写入到缓存文件中,才能读取该业务数据。比如,如果当前缓存文件中的业务数据才写入到1000条,你去读第1001条的业务数据是不可能读取到的;如果当前缓存文件中的业务数据写入到1000条,你去读第990条的业务数据是可以读取到的。此外,在读到空的业务数据或不完整的业务数据时,需要继续停留在当前缓存文件,不能切换至下一个缓存文件。如果读写是不同的缓存文件,则在读取到文件结束标记时,可以切换至下一个缓存文件。
为了更好的解释本申请数据处理方法的实施例,下面通过具体的实施场景描述本申请实施例提供的另一种数据处理方法的流程。
如图3所示,该流程包括以下步骤:
步骤301,将业务数据写入到数据缓存区。
本申请实施例中,采集端通过写线程,将接收到的业务数据写入到数据缓存区。
步骤302,判断数据缓存区存储的业务数据是否满足第一设定阈值。若是,执行步骤303;若否执行步骤301。
步骤303,将数据缓存区中的业务数据存储至缓存文件。
步骤304,更新缓存文件的文件头,并生成用于指示读线程开始读取工作的读取指令。
步骤305,判断缓存文件的文件大小是否满足第二设定阈值。若是,执行步骤306;若否继续向该缓存文件中写入业务数据。
步骤306,创建新的缓存文件。
步骤307,更新配置文件中的写记录。
本申请实施例中,采集端在创建新的缓存文件后,可以更新配置文件中的写记录(即目录编号、文件编号等)。
步骤308,从缓存文件读取数据块。
本申请实施例中,采集端可以在接收到写线程所生成用于读取数据的读取指令开始进行针对缓存文件中的业务数据读取操作,或者也可以在达到数据读取时间后开始针对缓存文件中的业务数据进行读取操作。其中,读取时间是本领域技术人员根据经验或根据实际应用场景所设置的用于读取缓存文件中业务数据的时间。
步骤309,判断数据块中的业务数据是否校验成功。若是,执行步骤310;若否,执行步骤311。
本申请实施例中,针对每个数据块中的每条业务数据,对该条业务数据进行内容校验,确定该条业务数据是否符合数据内容设定要求。
步骤310,判断数据块中的业务数据写入数据库是否成功。若是,执行步骤312;若否,执行步骤313。
步骤311,根据数据内容中的标识重新定位到正确的文件指针偏移位置。
本申请实施例中,采集端基于2字节标识重新定位到正确的文件指针偏移位置,以便获取到正确的业务数据。
步骤312,更新配置文件中的读记录。
步骤313,分析失败原因,并采取相应的处理措施。
上述实施例表明,因为现有技术方案中是因采集服务器在接收到终端上传的业务数据后立即将业务数据写入到数据库,而将业务数据写入到数据库所耗费的时间较长,使得终端可能在应答响应时间内接收不到应答,就会重复上传业务数据,从而影响该终端其它业务数据的上传进度。因此,本申请中的技术方案通过引入缓存文件作为临时存储业务数据的存储媒介,且采集端将终端的业务数据存储至缓存文件所耗费的时间短,如此可以先将终端上传的业务数据存储在硬盘中的缓存文件,并在将业务数据存储至缓存文件时,在应答响应时间内发送针对终端上传业务数据的应答响应给对应的终端,然后再从缓存文件中读取业务数据存储至数据库,如此可以使得采集端能够及时正常地接收终端上传的业务数据,并可以避免终端在应答响应时间内接收不到应答就会在采集服务器再次请求业务数据时重复上传之前发送的业务数据给采集服务器。具体来说,采集端在接收到至少一个终端的业务数据后,即可将该至少一个终端的业务数据存储至第一缓存文件,并发送针对各终端上传业务数据的应答响应给各自对应的终端,如此可以避免出现采集端在接收到业务数据后,直接将业务数据立即写入到数据库,导致终端在应答响应时间内接收不到应答,就会在采集服务器再次请求业务数据时重复上传之前发送的业务数据给采集服务器的情况,同时可以避免出现采集端与数据库之间因失去连接而导致采集端无法正常接收终端的业务数据的情况,从而可以解决现有技术中存在采集端与数据库之间因失去连接而导致采集端无法正常接收终端的业务数据的问题。然后,在确定满足存储条件时,就可以从第一缓存文件中确定出至少一个数据块,并将该至少一个数据块存储至数据库,如此可以从第一缓存文件中获取各终端的业务数据,并集中批量式地写入到数据库,可以节省数据库的输入/输出资源。
基于同样的技术构思,图4示例性的示出了本申请实施例提供的一种数据处理装置,该装置可以执行数据处理方法的流程。
如图4所示,该装置包括:
接收单元401,用于接收至少一个终端发送的业务数据;
处理单元402,用于将所述至少一个终端的业务数据存储至第一缓存文件;在确定满足数据存储条件时,从所述第一缓存文件中确定出至少一个数据块,并将所述至少一个数据块存储至数据库。
在一种可能的实现方式中,所述处理单元402具体用于:
创建用于执行业务数据写入操作的写线程;
通过所述写线程,将所述至少一个终端的业务数据存储至所述第一缓存文件。
在一种可能的实现方式中,所述处理单元402具体用于:
通过所述写线程,将所述至少一个终端的业务数据依次写入到数据缓存区中,并确定所述数据缓存区存储的业务数据大小是否满足第一设定阈值;
若所述数据缓存区存储的业务数据大小满足所述第一设定阈值,则通过所述写线程,将所述数据缓存区中的业务数据存储至所述第一缓存文件。
在一种可能的实现方式中,所述处理单元402还用于:
在将所述数据缓存区中的业务数据存储至所述第一缓存文件之后,更新所述第一缓存文件的文件头,并记录针对所述第一缓存文件的当前文件指针偏移位置。
在一种可能的实现方式中,所述处理单元402还用于:
在将所述数据缓存区中的业务数据存储至所述第一缓存文件之后,确定所述第一缓存文件的文件大小是否满足第二设定阈值;
若所述第一缓存文件的文件大小满足所述第二设定阈值,则所述采集端创建第二缓存文件,并更新配置文件中的文件编号记录;所述第二缓存文件用于继续存储业务数据。
在一种可能的实现方式中,所述处理单元402具体用于:
创建用于执行缓存文件中业务数据读操作的读线程;
通过所述读线程,将所述第一缓存文件中的业务数据打包为至少一个数据块,并将所述至少一个数据块存储至所述数据库。
在一种可能的实现方式中,所述处理单元402还用于:
在将所述至少一个数据块存储至数据库之前,针对每个数据块,对所述数据块中的业务数据进行内容校验,确定所述数据块中的业务数据是否符合设定要求;
若所述数据块中的业务数据符合设定要求,则将所述数据块中的数据内容存储至所述数据库;
若所述数据块中的业务数据不符合设定要求,则重新确定所述数据块中的业务数据的文件指针偏移位置。
在一种可能的实现方式中,所述数据存储条件为设置的用于读取缓存文件中业务数据的时间,或为写线程在更新缓存文件的文件头后所生成的数据读取指令。
基于同样的技术构思,本发明实施例提供一种计算设备,包括:
存储器,用于存储计算机程序;
处理器,用于调用所述存储器中存储的计算机程序,按照获得的程序执行数据处理方法的步骤。
基于同样的技术构思,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行程序,所述计算机可执行程序用于使计算机执行数据处理方法的步骤。
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管结合具体特征及其实施例对本申请进行了描述,显而易见的,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

Claims (4)

1.一种数据处理方法,其特征在于,包括:
采集端接收至少一个终端发送的业务数据;
所述采集端将所述至少一个终端的业务数据存储至第一缓存文件;
所述采集端在启动时,先定位到读写缓存文件的目录编号、文件编号以及文件指针上一次偏移位置,在接收到业务数据后,向数据缓存区写4个字节数据长度,再写数据内容,即2字节标识+1字节crc校验位+业务数据内容;当数据缓存区满足第一设定阈值后,再刷新缓冲区,物理写入磁盘,同时更新缓存文件的文件头,并记录文件指针偏移位置;更新缓存文件的文件头,并记录文件指针偏移位置是相当于文件事务操作,在服务器异常重启后,及时准确地读取到缓存文件的文件头信息,同时正确地定位到上一次文件指针的写偏移位置,以便覆盖可忽略的业务数据,继续进行写业务数据至第一缓存文件的操作,在服务器异常重启后,及时准确地定位到读缓存文件的目录编号、文件编号以及文件指针上一次的读偏移位置;
所述采集端在确定满足数据存储条件时,从所述第一缓存文件中确定出至少一个数据块,并将所述至少一个数据块存储至数据库;
所述采集端将所述至少一个终端的业务数据存储至第一缓存文件,包括:所述采集端创建用于执行业务数据写入操作的写线程;
所述采集端通过所述写线程,将所述至少一个终端的业务数据存储至所述第一缓存文件;
所述采集端通过所述写线程,将所述至少一个终端的业务数据存储至所述第一缓存文件,包括:所述采集端通过所述写线程,将所述至少一个终端的业务数据依次写入到数据缓存区中,并确定所述数据缓存区存储的业务数据大小是否满足第一设定阈值;
若所述数据缓存区存储的业务数据大小满足所述第一设定阈值,则所述采集端通过所述写线程,将所述数据缓存区中的业务数据存储至所述第一缓存文件;
在将所述数据缓存区中的业务数据存储至所述第一缓存文件之后,还包括:所述采集端更新所述第一缓存文件的文件头,并记录针对所述第一缓存文件的当前文件指针偏移位置;
在将所述数据缓存区中的业务数据存储至所述第一缓存文件之后,还包括:所述采集端确定所述第一缓存文件的文件大小是否满足第二设定阈值;
若所述第一缓存文件的文件大小满足所述第二设定阈值,则所述采集端创建第二缓存文件,并更新配置文件中的文件编号记录;所述第二缓存文件用于继续存储业务数据;
从所述第一缓存文件中确定出至少一个数据块,并将所述至少一个数据块存储至数据库,包括:所述采集端创建用于执行缓存文件中业务数据读操作的读线程;所述采集端通过所述读线程,将所述第一缓存文件中的业务数据打包为至少一个数据块,并将所述至少一个数据块存储至所述数据库;
所述采集端创建一个或多个读线程,用于执行业务数据写入到数据库的操作,利用多个读线程并行执行读取第一缓存文件中业务数据的操作,然后将读取出的业务数据存储至数据库,在将至少一个数据块存储至数据库之前,需要针对读取出的至少一个数据块中每个数据块的业务数据进行内容校验,具体地,采集端从第一缓存文件中获取一个数据块,针对该数据块中的每条数据,先读数据长度,再读数据内容,并对业务数据进行内容校验,确定数据块中的业务数据是否符合设定要求,如果数据块中的业务数据符合设定要求,则可以将该数据块中的业务数据集中批量式地存储至数据库;如果数据块中的业务数据不符合设定要求,则需要重新确定所述数据块中的业务数据的文件指针偏移位置,也即是基于2字节标识重新定位到正确的文件指针偏移位置,以便获取到正确的业务数据,其中,在将数据块中的业务数据集中批量式地存储至数据库时,如果写入数据库成功,同时会更新配置文件中的读记录;如果写入数据库失败,则需要分析写入失败原因,并基于写入失败原因采用相应的处理措施进行处理,则需要回滚,重新定位到上一次读的位置,然后重新进行写入的操作,如果读写是同一个缓存文件,读文件的位置不能大于写文件的位置,在读到空的业务数据或不完整的业务数据时,需要继续停留在当前缓存文件,不能切换至下一个缓存文件,如果读写是不同的缓存文件,则在读取到文件结束标记时,切换至下一个缓存文件。
2.如权利要求1所述的方法,其特征在于,所述数据存储条件为设置的用于读取缓存文件中业务数据的时间,或为写线程在更新缓存文件的文件头后所生成的数据读取指令。
3.一种数据处理装置,其特征在于,包括:
接收单元,用于接收至少一个终端发送的业务数据;
处理单元,用于将所述至少一个终端的业务数据存储至第一缓存文件;在确定满足数据存储条件时,从所述第一缓存文件中确定出至少一个数据块,并将所述至少一个数据块存储至数据库;
以及在启动时,先定位到读写缓存文件的目录编号、文件编号以及文件指针上一次偏移位置,在接收到业务数据后,向数据缓存区写4个字节数据长度,再写数据内容,即2字节标识+1字节crc校验位+业务数据内容;当数据缓存区满足第一设定阈值后,再刷新缓冲区,物理写入磁盘,同时更新缓存文件的文件头,并记录文件指针偏移位置;更新缓存文件的文件头,并记录文件指针偏移位置是相当于文件事务操作,在服务器异常重启后,及时准确地读取到缓存文件的文件头信息,同时正确地定位到上一次文件指针的写偏移位置,以便覆盖可忽略的业务数据,继续进行写业务数据至第一缓存文件的操作,在服务器异常重启后,及时准确地定位到读缓存文件的目录编号、文件编号以及文件指针上一次的读偏移位置;
还用于将所述至少一个终端的业务数据存储至第一缓存文件,包括:采集端创建用于执行业务数据写入操作的写线程;
所述采集端通过所述写线程,将所述至少一个终端的业务数据存储至所述第一缓存文件;
以及通过所述写线程,将所述至少一个终端的业务数据存储至所述第一缓存文件,包括:所述采集端通过所述写线程,将所述至少一个终端的业务数据依次写入到数据缓存区中,并确定所述数据缓存区存储的业务数据大小是否满足第一设定阈值;
若所述数据缓存区存储的业务数据大小满足所述第一设定阈值,则所述采集端通过所述写线程,将所述数据缓存区中的业务数据存储至所述第一缓存文件;
在将所述数据缓存区中的业务数据存储至所述第一缓存文件之后,还包括:所述采集端更新所述第一缓存文件的文件头,并记录针对所述第一缓存文件的当前文件指针偏移位置;
在将所述数据缓存区中的业务数据存储至所述第一缓存文件之后,还包括:所述采集端确定所述第一缓存文件的文件大小是否满足第二设定阈值;
若所述第一缓存文件的文件大小满足所述第二设定阈值,则所述采集端创建第二缓存文件,并更新配置文件中的文件编号记录;所述第二缓存文件用于继续存储业务数据;
从所述第一缓存文件中确定出至少一个数据块,并将所述至少一个数据块存储至数据库,包括:所述采集端创建用于执行缓存文件中业务数据读操作的读线程;所述采集端通过所述读线程,将所述第一缓存文件中的业务数据打包为至少一个数据块,并将所述至少一个数据块存储至所述数据库;
还用于创建一个或多个读线程,用于执行业务数据写入到数据库的操作,利用多个读线程并行执行读取第一缓存文件中业务数据的操作,然后将读取出的业务数据存储至数据库,在将至少一个数据块存储至数据库之前,需要针对读取出的至少一个数据块中每个数据块的业务数据进行内容校验,具体地,采集端从第一缓存文件中获取一个数据块,针对该数据块中的每条数据,先读数据长度,再读数据内容,并对业务数据进行内容校验,确定数据块中的业务数据是否符合设定要求,如果数据块中的业务数据符合设定要求,则可以将该数据块中的业务数据集中批量式地存储至数据库;如果数据块中的业务数据不符合设定要求,则需要重新确定所述数据块中的业务数据的文件指针偏移位置,也即是基于2字节标识重新定位到正确的文件指针偏移位置,以便获取到正确的业务数据,其中,在将数据块中的业务数据集中批量式地存储至数据库时,如果写入数据库成功,同时会更新配置文件中的读记录;如果写入数据库失败,则需要分析写入失败原因,并基于写入失败原因采用相应的处理措施进行处理,则需要回滚,重新定位到上一次读的位置,然后重新进行写入的操作,如果读写是同一个缓存文件,读文件的位置不能大于写文件的位置,在读到空的业务数据或不完整的业务数据时,需要继续停留在当前缓存文件,不能切换至下一个缓存文件,如果读写是不同的缓存文件,则在读取到文件结束标记时,切换至下一个缓存文件。
4.一种计算设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于调用所述存储器中存储的计算机程序,按照获得的程序执行权利要求1所述的方法。
CN202110919821.5A 2021-08-11 2021-08-11 一种数据处理方法及装置 Active CN113792074B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110919821.5A CN113792074B (zh) 2021-08-11 2021-08-11 一种数据处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110919821.5A CN113792074B (zh) 2021-08-11 2021-08-11 一种数据处理方法及装置

Publications (2)

Publication Number Publication Date
CN113792074A CN113792074A (zh) 2021-12-14
CN113792074B true CN113792074B (zh) 2024-02-06

Family

ID=78875987

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110919821.5A Active CN113792074B (zh) 2021-08-11 2021-08-11 一种数据处理方法及装置

Country Status (1)

Country Link
CN (1) CN113792074B (zh)

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7424574B1 (en) * 2004-04-21 2008-09-09 Sun Microsystems, Inc. Method and apparatus for dynamic striping
US7747584B1 (en) * 2006-08-22 2010-06-29 Netapp, Inc. System and method for enabling de-duplication in a storage system architecture
CN104484427A (zh) * 2014-12-19 2015-04-01 武汉长江通信智联技术有限公司 一种录像文件存储装置及方法
CN112527844A (zh) * 2020-12-22 2021-03-19 北京明朝万达科技股份有限公司 数据处理方法及装置、数据库架构
CN112597104A (zh) * 2021-01-11 2021-04-02 武汉飞骥永泰科技有限公司 小文件性能优化方法及系统
CN112596682A (zh) * 2020-12-28 2021-04-02 郝东东 一种区块链用存储装置及存储方法
CN112650807A (zh) * 2021-01-04 2021-04-13 成都知道创宇信息技术有限公司 数据存储管理方法、装置、电子设备和可读存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7424574B1 (en) * 2004-04-21 2008-09-09 Sun Microsystems, Inc. Method and apparatus for dynamic striping
US7747584B1 (en) * 2006-08-22 2010-06-29 Netapp, Inc. System and method for enabling de-duplication in a storage system architecture
CN104484427A (zh) * 2014-12-19 2015-04-01 武汉长江通信智联技术有限公司 一种录像文件存储装置及方法
CN112527844A (zh) * 2020-12-22 2021-03-19 北京明朝万达科技股份有限公司 数据处理方法及装置、数据库架构
CN112596682A (zh) * 2020-12-28 2021-04-02 郝东东 一种区块链用存储装置及存储方法
CN112650807A (zh) * 2021-01-04 2021-04-13 成都知道创宇信息技术有限公司 数据存储管理方法、装置、电子设备和可读存储介质
CN112597104A (zh) * 2021-01-11 2021-04-02 武汉飞骥永泰科技有限公司 小文件性能优化方法及系统

Also Published As

Publication number Publication date
CN113792074A (zh) 2021-12-14

Similar Documents

Publication Publication Date Title
US8572037B2 (en) Database server, replication server and method for replicating data of a database server by at least one replication server
CN111159436A (zh) 一种推荐多媒体内容的方法、装置及计算设备
CN110046029A (zh) 应用于集群内多级缓存的数据处理方法和装置
CN110781214A (zh) 数据库读写方法、装置、计算机设备和存储介质
CN109561151B (zh) 数据存储方法、装置、服务器和存储介质
CN107092628B (zh) 时间序列数据的处理方法和装置
CN110647460B (zh) 一种测试资源管理方法、装置和测试客户端
CN111198845B (zh) 一种数据迁移方法、可读存储介质及计算设备
CN113094430B (zh) 一种数据处理方法、装置、设备以及存储介质
CN113794764A (zh) 服务器集群的请求处理方法、介质和电子设备
CN107181773A (zh) 分布式存储系统的数据存储及数据管理方法、设备
CN113438275B (zh) 数据迁移方法、装置、存储介质及数据迁移设备
CN113326146A (zh) 一种消息处理方法、装置、电子设备及存储介质
CN113986981A (zh) 一种数据同步方法及装置
CN113792074B (zh) 一种数据处理方法及装置
CN113297267A (zh) 数据缓存和任务处理方法、装置、设备以及存储介质
CN112363980A (zh) 一种分布式系统的数据处理方法及装置
CN116089477B (zh) 分布式训练方法及系统
CN110119388B (zh) 文件读写方法、装置、系统、设备及计算机可读存储介质
CN112631994A (zh) 数据迁移方法及系统
CN112597151A (zh) 数据处理方法、装置、设备和存储介质
CN111309746A (zh) 异步并行数据同步方法及装置
CN111400056A (zh) 基于消息队列的消息传输方法、装置及设备
CN115970295A (zh) 请求处理方法、装置和电子设备
CN110716923B (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
CB03 Change of inventor or designer information

Inventor after: Qiu Zhibin

Inventor after: Tu Gaoyuan

Inventor after: Guo Yongxing

Inventor after: Lu Yunyan

Inventor after: Shi Yi

Inventor after: Fan Yongzai

Inventor before: Qiu Zhibin

Inventor before: Tu Gaoyuan

Inventor before: Guo Yongxing

Inventor before: Lu Yunyan

Inventor before: Zhang Qiwen

Inventor before: Shi Yi

CB03 Change of inventor or designer information
GR01 Patent grant
GR01 Patent grant