CN114547019A - 数据库读写方法、装置、服务器及介质 - Google Patents

数据库读写方法、装置、服务器及介质 Download PDF

Info

Publication number
CN114547019A
CN114547019A CN202011332493.0A CN202011332493A CN114547019A CN 114547019 A CN114547019 A CN 114547019A CN 202011332493 A CN202011332493 A CN 202011332493A CN 114547019 A CN114547019 A CN 114547019A
Authority
CN
China
Prior art keywords
server
data
data record
reading
data partition
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
Application number
CN202011332493.0A
Other languages
English (en)
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.)
NetsUnion Clearing Corp
Original Assignee
NetsUnion Clearing 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 NetsUnion Clearing Corp filed Critical NetsUnion Clearing Corp
Priority to CN202011332493.0A priority Critical patent/CN114547019A/zh
Publication of CN114547019A publication Critical patent/CN114547019A/zh
Pending legal-status Critical Current

Links

Images

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/23Updating
    • 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/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • 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/27Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
    • G06F16/278Data partitioning, e.g. horizontal or vertical partitioning

Landscapes

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

Abstract

本申请提出一种数据库读写方法、装置、服务器及介质,其中,方法应用于多个服务器中的第一服务器执行,多个服务器还包括不同于第一服务器的至少一个第二服务器,第一服务器和第二服务器中均部署有目标应用程序,方法包括:通过监听目标应用程序对目标数据库表的写操作,若写操作指向的数据记录存储于目标数据库表的第一数据分区,则对数据记录执行写操作,若写操作指向的数据记录存储于目标数据库表的第二数据分区,则拒绝执行写操作。由此,第一服务器可以获取到其他服务器存储的数据记录,实现了各个服务器均具备读写操作能力。

Description

数据库读写方法、装置、服务器及介质
技术领域
本申请涉及数据库技术领域,尤其涉及一种数据库读写方法、装置、服务器及介质。
背景技术
目前的多服务器应用架构,往往采用一主多从的模式,即只有一个服务器具备读写能力,其他服务器从主服务器同步数据,其他服务器的应用也只能读取数据,不能写数据。
现有的主从架构方案,目的在于保障多服务器在数据写入上达到最终一致性。但是,当可写服务器的数据库出现故障,另外的服务器就变成了可写服务器,数据库主从关系拓扑发生变化,从而导致依赖数据库的各应用方都需要感知哪个服务器可写,哪个服务器可读。可见,多服务器数据库之间,应用和数据库之间都存在强耦合关系,不利于数据库之间的读写操作。
发明内容
本申请旨在至少在一定程度上解决相关技术中的技术问题之一。
为此,本申请提出一种数据库读写方法,以实现多个服务器中的每一个服务器均具备读写操作能力。
本申请第一方面实施例提出了一种数据库读写方法,所述方法由多个服务器中的第一服务器执行,所述多个服务器还包括不同于所述第一服务器的至少一个第二服务器,所述第一服务器和所述第二服务器中均部署有目标应用程序,所述方法包括以下步骤:
监听所述目标应用程序对目标数据库表中的写操作;
若所述写操作指向的数据记录存储于所述目标数据库表的第一数据分区,则对所述数据记录执行所述写操作;其中,所述第一数据分区与所述第一服务器相对应;
若所述写操作指向的数据记录存储于所述目标数据库表的第二数据分区,则拒绝执行所述写操作;其中,所述第二数据分区与所述第二服务器相对应。
可选地,监听所述目标应用程序对目标数据库表的写操作之前,还包括:
定期读取存储在所述第一服务器本地的第一数据记录,并从所述第二服务器获取第二数据记录;
按照预设数据分区规则,将所述第一数据记录写入所述目标数据库表中与所述第一服务器相对应的第一数据分区,将所述第二数据记录写入所述目标数据库表中与所述第二服务器相对应的第二数据分区;其中,所述预设数据分区规则用于表征所述目标数据库表中的数据分区与所述多个服务器中各服务器的对应关系。
可选地,所述监听所述目标应用程序对目标数据库表的写操作之前,还包括:
监听所述目标应用程序对所述目标数据库表的读操作;
若所述读操作指向的数据记录存储于所述目标数据库表的第一数据分区,则从所述第一服务器本地读取所述读操作指向的数据记录;
若所述读操作指向的数据记录存储于所述目标数据库表的第二数据分区,则按照预设数据分区规则,从所述第二数据分区对应的第二服务器获取所述读操作指向的数据记录;其中,所述预设数据分区规则用于表征所述目标数据库表中的数据分区与所述多个服务器中各服务器的对应关系。
可选地,所述定期读取存储在所述第一服务器本地的第一数据记录,并从所述第二服务器获取第二数据记录,还包括:
与各所述第二服务器同步启动所述目标应用程序;
监听到所述目标应用程序启动,则读取存储所述第一服务器本地的第一数据记录;
向所述第二服务器发送第一获取请求,以获取所述第二服务器存储的第二数据记录;
在所述第一服务器的缓存中存储所述第一数据记录和所述第二数据记录。
可选地,在所述第一服务器的缓存中存储所述第一数据记录和所述第二数据记录之后,还包括:
接收来自第二服务器的第二获取请求;
向所述第二服务器发送所请求的第一数据记录或所述第二数据记录。
可选地,当所述多个服务器中包括多个第二服务器时,所述向所述第二服务器发送第一获取请求,以获取所述第二服务器存储的第二数据记录,包括:
以设定顺序依次向所述多个第二服务器发送所述第一获取请求;
其中,所述第一获取请求中包含获取失败的第二数据记录的标识,和/或待获取的第二数据记录的标识。
可选地,所述从所述第二数据分区对应的第二服务器获取所述读操作指向的数据记录,包括:
根据所述第二数据分区,确定对应的第二服务器;
根据所述读操作,向所述第二数据分区对应的第二服务器发送获取请求;
接收所述第二数据分区对应的第二服务器发送的获取响应;
根据所述获取响应中携带的数据记录,响应所述读操作。
可选地,所述监听所述目标应用程序对目标数据库表的写操作之后,还包括:
确定所述写操作指向的数据记录的序号;
读取配置信息,所述配置信息用于表征所述目标数据库表中为各数据分区所配置的序号范围;若所述序号属于所述配置信息记载的所述第一数据分区的序号范围内,则确定所述写操作指向的数据记录存储于所述第一数据分区;
若所述序号不属于所述配置信息记载的所述第一数据分区的序号范围内,则确定所述写操作指向的数据记录存储于所述第二数据分区。
可选地,所述方法,还包括:
当所述多个服务器中存在服务器上线或服务器下线时,对所述配置信息进行更新。
可选地,所述目标数据库表中第i个数据分区所配置的序号范围为[(i-1)*N,i*N],其中,i为取值小于或等于数据分区总数的正整数,N是根据所述目标数据库表所包含的数据记录总数确定的。
本申请实施例的数据库读写方法,通过监听目标应用程序对目标数据库表的写操作,若写操作指向的数据记录存储于目标数据库表的第一数据分区,则对数据记录执行写操作;若写操作指向的数据记录存储于目标数据库表的第二数据分区,则拒绝执行写操作。由此,第一服务器不仅可以读取到本地存储的数据库表,还可以对本地存储的数据库表中的记录执行写操作,此外,还可以获取到其他服务器存储的数据库表,从而实现了多个服务器中的每一个服务器均具备读写操作能力。
本申请第二方面实施例提出了一种数据库读写装置,应用于多个服务器中的第一服务器执行,所述多个服务器还包括不同于所述第一服务器的至少一个第二服务器,所述第一服务器和所述第二服务器中均部署有目标应用程序,所述装置包括:
监听模块,用于监听所述目标应用程序对目标数据库表的写操作;
第一处理模块,用于若所述写操作指向的数据记录存储于所述目标数据库表的第一数据分区,则对所述数据记录执行所述写操作;其中,所述第一数据分区与所述第一服务器相对应;
第二处理模块,用于若所述写操作指向的数据记录存储于所述目标数据库表的第二数据分区,则拒绝执行所述写操作;其中,所述第二数据分区与所述第二服务器相对应。
本申请实施例的数据库读写装置,通过监听目标应用程序对目标数据库表的写操作,若写操作指向的数据记录存储于目标数据库表的第一数据分区,则对数据记录执行写操作;若写操作指向的数据记录存储于第二数据分区,则拒绝执行写操作。由此,第一服务器不仅可以读取到本地存储的数据库表,还可以对本地存储的数据库表中的记录执行写操作,此外,还可以获取到其他服务器存储的数据库表,从而实现了多个服务器中的每一个服务器均具备读写操作能力。
本申请第三方面实施例提出了一种服务器,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如第一方面实施例所述的数据库读写方法。
本申请第四方面实施例提出了一种非临时性计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现第一方面实施例所述的数据库读写方法。
本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本申请实施例提供的一种数据库读写方法的流程示意图;
图2为本申请实施例提供的另一种数据库读写方法的流程示意图;
图3为本申请实施例提供的又一种数据库读写方法的流程示意图;
图4为本申请实施例提供的再一种数据库读写方法的流程示意图;
图5为本申请实施例提供的用于确定待执行写操作的记录的存储位置的流程示意图;
图6为本申请实施例提供的一种数据库读写方法的示例图;
图7为本申请实施例提供的一种数据库读写装置的结构示意图;
图8为本申请实施例提供的一种服务器的结构示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
下面参考附图描述本申请实施例的数据库读写方法、装置、服务器以及介质。
图1为本申请实施例提供的一种数据库读写方法的流程示意图。
如图1所示,该数据库读写方法,由多个服务器中的第一服务器执行,多个服务器还包括不同于第一服务器的至少一个第二服务器,第一服务器和第二服务器中均部署有目标应用程序,该数据库读写方法可以包括以下步骤:
步骤101,监听目标应用程序对目标数据库表的写操作。
其中,写操作,是指对目标数据库表的数据记录执行的写入数据的操作。例如,写操作可以为对目标数据库表中的用户年龄进行修改。
本申请实施例中,第一服务器执行目标应用程序,以对目标数据库表进行数据处理时,可以实时监听目标应用程序对目标数据库表的写操作,以根据目标数据库表中的记录存储的位置,确定是否执行写操作。
步骤103,若写操作指向的数据记录存储于目标数据库表的第一数据分区,则对数据记录执行写操作。
步骤105,若写操作指向的数据记录存储于目标数据库表的第二数据分区,则拒绝执行写操作。
可以理解的是,每一个服务器只能对本地存储的数据分区中存储的记录执行写操作,并不能对其他服务器存储的数据分区中存储的记录执行写操作。
可以理解的是,第一服务器监听到目标应用程序对目标数据库表的写操作后,若确定写操作指向的数据记录存储于目标数据库表第一数据分区,则可以对数据记录执行写操作。
需要说明的是,目标数据库表的第一数据分区与第一服务器相对应。
但是,第一服务器监听到目标应用程序对目标数据库表的写操作后,确定写操作指向的数据记录存储于目标数据库表的第二数据分区,则第一服务器拒绝执行写操作。其中,第二数据分区与第二服务器相对应。
由于第一数据分区与第一服务器相对应,第二数据分区与第二服务器相对应,第一服务器执行数据库读写方法时,确定写操作指向的数据记录存储于目标数据库表的第二数据分区时,则拒绝执行写操作。
举例来说,若第一服务器监听到目标应用程序对目标数据库表中的数据记录执行的写操作后,确定写操作指向的数据记录存储在第一数据分区A1中,则在第一数据分区A1中对数据记录执行相应的写操作;若确定写操作指向的数据记录存储在第二数据分区B1或B2中,则拒绝执行写操作。本申请实施例的数据库读写方法,通过监听目标应用程序对目标数据库表的写操作,若写操作指向的数据记录存储于第一数据分区,则对数据记录执行写操作;若写操作指向的数据记录存储于第二数据分区,则拒绝执行写操作。由此,第一服务器可以获取到其余服务器存储的数据,从而实现了多个服务器中的每一个服务器均具备读写操作能力。
作为本申请实施例的一种可能的情况,第一服务器还可以定期读取第一服务器本地存储的第一数据记录,并从第二服务器获取第二数据记录,以将第一数据记录和第二数据记录分别写入目标数据库表中相应的数据分区,以使得第一服务器监听到目标应用程序对目标数据表的读操作时,可以根据读操作指向的数据记录存储在目标数据库表的数据分区确定目标服务器,以向目标服务器发送数据获取请求,从相应的数据分区获取到读操作指向的数据记录。具体的实现过程可以参见2,图2为本申请实施例提供的另一种数据库读写方法的流程示意图。
如图2所示,该数据库读写方法,还可以包括以下步骤:
步骤201,定期读取存储在第一服务器本地的第一数据记录,并从第二服务器获取第二数据记录。
其中,第一数据记录,是指存储在第一服务器本地的数据库表中的数据,第二数据记录是指存储在第二服务器的数据库表中数据。
本申请实施例中,第一服务器中部署的目标应用程序可以定期读取存储在第一服务器本地的数据库表中的第一数据记录,并从第二服务器的数据库表中获取第二数据记录。由此,目标应用程序可以获取到第一服务器和第二服务器的数据库中存储的全量数据,从而达到数据一致性。
步骤203,按照预设数据分区规则,将第一数据记录写入目标数据库表中与第一服务器相对应的第一数据分区,将第二数据记录写入目标数据库表中与第二服务器相对应的第二数据分区。
其中,预设数据分区规则用于表征目标数据库表中的数据分区与多个服务器中各服务器的对应关系。
例如,目标数据库表中的第一数据分区与第一服务器相对应,第二数据分区与第二服务器相对应。
本申请实施例中,第一服务器中部署的目标应用程序从第一服务器和第二服务器获取到第一数据记录和第二数据记录后,根据目标数据库表中的数据分区与多个服务器中各服务器的对应关系,将第一数据记录写入目标数据库表中与第一服务器相对应的第一数据分区,将第二数据记录写入目标数据库表中与第二服务器相对应的第二数据分区。
本申请实施例的数据库读写方法中,目标应用程序定期读取存储在第一服务器本地的第一数据记录,并从第二服务器获取第二数据记录,按照预设数据分区规则,将第一数据记录写入目标数据库表中与第一服务器相对应的第一数据分区,将第二数据记录写入目标数据库表中与第二服务器相对应的第二数据分区。由此,目标应用程序可以读取到各服务器的数据记录,实现了数据的一致性。
作为本申请实施例的一种可能的情况,目标应用程序还可以对目标数据库表执行读操作,根据读操作指向的数据记录存储在目标数据库表所在的数据分区,确定目标服务器,以向目标服务器发送数据获取请求,响应读操作以从目标服务器获取读操作指向的数据记录。具体的实现过程可以参见图3,图3为本申请实施例提供的另一种数据库读写方法的流程示意图。
如图3所示,该数据库读写方法,还可以包括以下步骤:
步骤301,监听目标应用程序对目标数据库表的读操作。
其中,读操作,是指对目标数据库表的数据记录执行的读取数据的操作。例如,读操作可以为对目标数据库表中的用户信息进行读取,以响应于读操作获取到目标数据库表中的用户信息。
本申请实施例中,第一服务器执行目标应用程序,以对目标数据库表进行数据处理时,可以实时监听目标应用程序对目标数据库表的读操作,以读操作指向的数据记录存储在目标数据库表中的存储位置,确定获取读操作指向的数据记录的目标服务器,进而,从目标服务器读取读操作指向的数据记录。
步骤303,若读操作指向的数据记录存储于目标数据库表的第一数据分区,则从第一服务器本地读取读操作指向的数据记录。
步骤305,若读操作指向的数据记录存储于目标数据库表的第二数据分区,则按照预设数据分区规则,从第二数据分区对应的第二服务器获取读操作指向的数据记录。
其中,预设数据分区规则用于表征目标数据库表中的数据分区与多个服务器中各服务器的对应关系。
在一种可能的情况下,第一服务器监听到目标应用程序对目标数据库表的读操作后,确定读操作指向的数据记录存储于目标数据库表中的第一数据分区,则从第一服务器本地的数据库中读取读操作指向的数据记录。
在另一种可能的情况下,第一服务器监听到目标应用程序对目标数据库表的读操作后,确定读操作指向的数据记录存储于目标数据库表的第二数据分区,则按照预设数据分区规则,确定第二数据分区对应的第二服务器,以从第二数据分区对应的第二服务器获取读操作指向的数据记录。
本申请实施例的数据库读写方法,通过监听目标应用程序对目标数据库表的读操作,若读操作指向的数据记录存储于目标数据库表的第一数据分区,则从第一服务器本地读取读操作指向的数据记录;若读操作指向的数据记录存储于目标数据库表的第二数据分区,则按照预设数据分区规则,从第二数据分区对应的第二服务器获取读操作指向的数据记录。由此,根据目标数据库的读操作指向的数据记录存储的位置,确定从第一服务器或第二服务器获取读操作指向的数据记录,有利于提高数据获取的效率。
作为本申请实施例的一种可能的情况,在多个服务器启动时,每一个服务器可以先读取本地存储的数据库表,再获取其他服务器存储的数据库表,以在本地缓存中存储本地存储的数据库表和从其他服务器获取到的数据库表。作为一种示例,第一服务器可以先读取第一服务器本地存储的第一数据库表,进而,获取到第二服务器存储的第二数据库表后,在第一服务器的缓冲中存储第一数据库表和第二数据库表。具体的实现过程可以参见图4,图4为本申请实施例提供的再一种数据库读写方法的流程示意图。
如图4所示,该数据库读写方法,还可以包括以下步骤:
步骤401,与各第二服务器同步启动目标应用程序。
本申请实施例中,在第二服务器启动时,可以与各第二服务器同步启动目标应用程序。
步骤403,监听到目标应用程序启动,则读取存储第一服务器本地的第一数据记录。
本申请实施例中,第一服务器启动后,先读取存储在第一服务器本地的第一数据记录,从而实现了第一服务器从第一数据分区中读取数据的能力。
例如,第一服务器本地存储有第一数据分区A1,第一服务器启动后,可以读取到第一数据分区A1中的数据记录。
步骤405,向第二服务器发送第一获取请求,以获取第二服务器存储的第二数据记录。
本申请实施例中,第一服务器在获取第二服务器存储的第二数据记录时,可以先向第二服务器发送第一获取请求,第二服务器接收到第一服务器发送的获取第二数据记录的第一获取请求后,可以将存储的第二数据记录发送至第一服务器,以使得第一服务器获取到第二服务器存储的第二数据记录。
作为一种可能的情况,当多个服务器中包括多个第二服务器时,第一服务器可以以设定顺序依次向多个第二服务器发送第一获取请求,以获取各第二服务器存储的第二数据记录。其中,第一获取请求中包含获取失败的第二数据记录的标识,和/或待获取的第二数据记录的标识。
其中,设定顺序是根据第一获取请求中包含的获取失败的第二数据记录的标识,和/或待获取的第二数据记录的标识确定的。
作为一种示例,第一服务器读取到存储第一服务器本地的第一数据记录后,需要获取编号为1和2的两个第二服务器存储的第二数据记录时,则可以根据待获取的第二数据记录的标识的存储顺序向编号为1和2的第二服务器发送第一获取请求,以获取编号为1和2的第二服务器存储的第二数据记录。
还例如,若第一服务器获取编号为1和2的两个第二服务器存储的第二数据记录时,从编号为1的第二服务器中获取第二数据记录时获取失败,则向编号为2的第二服务器发送的第一获取请求中包含有获取失败的编号为1的第二服务器存储的第二数据记录的标识,以及待获取的编号为2的第二服务器存储的第二数据记录的标识。由于编号为2的第二服务器的缓存中存储有编号为1的第二服务器存储的第二数据记录,因此,第一服务器可以从编号为2的第二服务器中获取到编号为1的第二服务器存储的第二数据记录和编号为2的第二服务器存储的第二数据记录。
步骤407,在第一服务器的缓存中存储第一数据记录和第二数据记录。
本申请实施例中,第一服务器读取到存储第一服务器本地的第一数据记录,以及获取到第二服务器存储的第二数据记录后,可以在第一服务器的缓存中存储第一数据记录和第二数据记录,从而实现了第一服务器可以读取服务器自身存储的数据记录,以及其他服务器存储的数据记录的功能。
步骤409,接收来自第二服务器的第二获取请求。
步骤411,向第二服务器发送所请求的第一数据记录或第二数据记录。
在一种可能的情况下,第一服务器的缓存中存储第一数据记录和第二数据记录后,可能会接收到第二服务器发送的获取第一服务器存储的第一数据记录或第二数据记录的第二获取请求。第一服务器接收到第二获取请求后,可以向发送第二获取请求的第二服务器发送所请求的第一数据记录或第二数据记录。
可以理解为,第二服务器在需要获取其他第二服务器存储的第二数据记录时,若从其他第二服务器中获取第二数据记录失败,则可以从第一服务器获取第一服务器的缓存中存储的第二数据记录。如,第二服务器可以向第一服务器发送第二获取请求,第一服务器接收到第二服务器发送的第二获取请求后,可以向发送第二获取请求的第二服务器发送所请求的第二数据记录。
在第二服务器需要获取第一服务器存储的第一数据记录时,可以向第一服务器发送第二获取请求,当第一服务器接收到第二获取请求时,可以向发送第二获取请求的第二服务器发送所请求的第一数据记录。
本申请实施例的数据库读写方法,通过与各第二服务器同步启动目标应用程序,监听到目标应用程序启动,则第一服务器读取存储第一服务器本地的第一数据记录后,向第二服务器发送第一获取请求,以获取第二服务器存储的第二数据记录,在第一服务器的缓存中存储第一数据记录和第二数据记录,接收来自第二服务器的第二获取请求,向第二服务器发送所请求的第一数据记录或第二数据记录。由此,通过在第一服务器的缓存中存储读取到的自身存储的第一数据记录,以及各第二服务器存储的第二数据记录,从而实现了各服务器可以获取其他服务器存储的数据记录,实现了各服务器中数据记录的一致性。
作为本申请实施例的一种可能的实现方式,第一服务器监听到目标应用程序对目标数据库表的写操作后,可以根据写操作指向的数据记录的序号是否属于第一数据分区的配置信息记载的序号范围内,以确定待执行写操作的记录存储在第一数据分区或第二数据分区内。下面结合图5对上述过程进行详细介绍,图5为本申请实施例提供的用于确定待执行写操作的记录的存储位置的流程示意图。
如图5所示,在上述步骤101之后,还可以包括以下步骤:
步骤501,确定写操作指向的数据记录的序号。
本申请实施例中,目标数据库表的写操作指向的数据记录分别存储在数据分区中的不同序号对应的位置,第一服务器可以在监听到目标应用程序对目标数据库表的写操作后,根据目标应用程序对目标数据库表的写操作指向的数据记录的位置,确定写操作指向的数据记录的存储位置。
作为一种示例,若目标数据库表中的第一行第五列对应的序号为5,假设第一服务器监听到目标应用程序对目标数据库表中的第一行第五列的记录执行写操作,则可以确定待执行写操作指向的数据记录的序号为5。
步骤503,读取配置信息。
其中,配置信息用于表征目标数据库表中为各数据分区所配置的序号范围。
本申请实施例中,多个服务器分别存储的数据分区预先设置了对应的配置信息,第一服务器可以读取到第一服务器存储的第一数据分区的配置信息,以根据第一数据分区的配置信息确定第一数据分区中的数据记录对应的序号范围。
作为一种可能的情况,目标数据库表中第i个数据分区所配置的序号范围为[(i-1)*N,i*N],其中,i为取值小于或等于数据分区总数的正整数,N是根据目标数据库表所包含的数据记录总数确定的。
作为一种示例,如图6所示,第一服务器存储的第一数据分区的配置信息对应的序号范围可以为1-N,第二服务器存储的第二数据分区的配置信息对应的序号范围可以为N-2N,另一个第二服务器存储的第二数据分区表的配置信息对应的序号范围可以为2N-3N。
需要说明的是,可以根据数据分区中实际数据记录条数来决定N的大小,对于表数目较多时,可设定一个较大值N,这样所有的表复用序号范围,可以简化数据库表的序号区间管理。
本申请实施例中,当多个服务器中存在服务器上线时,已经上线的服务器都需要从已上线服务器存储的数据分区中获取数据分区中存储的数据,这种情况下,需要对各服务器存储的数据分区的配置信息进行更新,以使得各服务器从已上线服务器存储的数据分区中获取到数据后存储在自身的数据分区中。
本申请实施例中,当多个服务器中存在服务器下线时,还处于线上的服务器需要对自身存储的数据分区的配置信息进行更新。
作为一种示例,假设某一第二服务器下线了,第一服务器和其他在线的第二服务器可以对自身存储的数据分区的配置信息进行更新。
步骤505,判断写操作指向的数据记录的序号是否属于配置信息记载的第一数据分区的序号范围内。
本申请实施例中,第一服务器确定写操作指向的数据记录的序号,并且读取到配置信息记载的本地存储的第一数据分区所配置的序号范围后,进一步地,判断写操作指向的数据记录的序号是否属于配置信息记载的第一数据分区的序号范围内,以确定写操作指向的数据记录是否存储在第一数据分区中。
步骤507,若序号属于配置信息记载的第一数据分区的序号范围内,则确定写操作指向的数据记录存储于第一数据分区。
步骤509,若序号不属于配置信息记载的第一数据分区的序号范围内,则确定写操作指向的数据记录存储于第二数据分区。
作为一种可能的情况,第一服务器确定写操作指向的数据记录的序号属于配置信息记载的第一数据分区的序号范围内,则可以确定写操作指向的数据记录存储于第一数据分区。
作为另一种可能的情况,第一服务器确定写操作指向的数据记录的序号不属于配置信息记载的第一数据分区的序号范围内,则可以确定写操作指向的数据记录存储于第二数据分区。
作为一种示例,假设配置信息记载的第一数据分区的序号范围为1-100,第二数据分区的序号范围为101-200,若第一服务器确定写操作指向的数据记录的序号为56,则可以确定写操作指向的数据记录存储于第一数据分区。
本申请实施例中,第一服务器监听目标应用程序对目标数据库表的写操作之后,确定写操作指向的数据记录的序号,读取配置信息,若确定序号属于配置信息记载的第一数据分区的序号范围内,则确定写操作指向的数据记录存储于第一数据分区,若确定序号不属于配置信息记载的第一数据分区的序号范围内,则确定写操作指向的数据记录存储于第二数据分区。由此,通过确定写操作指向的数据记录的序号是否属于配置信息记载的第一数据分区的序号范围内,以确定写操作指向的数据记录存储在第一数据分区或第二数据分区,进而,可以根据写操作指向的数据记录存储的位置,确定是否对数据记录执行写操作。
为了实现上述实施例,本申请还提出一种数据库读写装置。
图7为本申请实施例提供的一种数据库写装置的结构示意图。
如图7所示,该数据库写装置700,可以应用于多个服务器中的第一服务器,多个服务器还包括不同于所述第一服务器的至少一个第二服务器,第一服务器和所述第二服务器中均部署有目标应用程序,该数据库写装置700,可以包括:监听模块710、第一处理模块730和第二处理模块750。
其中,监听模块710,用于监听目标应用程序对目标数据库表的写操作。
第一处理模块730,用于若写操作指向的数据记录存储于目标数据库表的第一数据分区,则对数据记录执行写操作。其中,第一数据分区与第一服务器相对应。
第二处理模块550,用于若写操作指向的数据记录存储于目标数据库表的第二数据分区,则拒绝执行写操作;其中,第二数据分区与第二服务器相对应。
作为本申请实施例的一种可能的情况,该数据库写装置700,还可以包括:
读取模块,用于定期读取存储在第一服务器本地的第一数据记录,并从第二服务器获取第二数据记录。
写入模块,用于按照预设数据分区规则,将第一数据记录写入目标数据库表中与第一服务器相对应的第一数据分区,将第二数据记录写入目标数据库表中与第二服务器相对应的第二数据分区;其中,预设数据分区规则用于表征目标数据库表中的数据分区与多个服务器中各服务器的对应关系。
作为本申请实施例的另一种可能的情况,该数据库写装置700,还可以包括:
监听模块,还用于监听目标应用程序对目标数据库表的读操作;
第三处理模块,用于若读操作指向的数据记录存储于目标数据库表的第一数据分区,则从第一服务器本地读取读操作指向的数据记录;
第四处理模块,用于若读操作指向的数据记录存储于目标数据库表的第二数据分区,则按照预设数据分区规则,从第二数据分区对应的第二服务器获取读操作指向的数据记录;其中,预设数据分区规则用于表征目标数据库表中的数据分区与多个服务器中各服务器的对应关系。
作为本申请实施例的另一种可能的情况,读取模块,还可以用于:
与各第二服务器同步启动目标应用程序;监听到目标应用程序启动,则读取存储第一服务器本地的第一数据记录;向第二服务器发送第一获取请求,以获取第二服务器存储的第二数据记录;在第一服务器的缓存中存储第一数据记录和第二数据记录。
作为本申请实施例的另一种可能的情况,读取模块,还可以用于:
接收来自第二服务器的第二获取请求;向第二服务器发送所请求的第一数据记录或第二数据记录。
作为本申请实施例的另一种可能的情况,当多个服务器中包括多个第二服务器时,读取模块,还可以用于:
以设定顺序依次向多个第二服务器发送第一获取请求;其中,第一获取请求中包含获取失败的第二数据记录的标识,和/或待获取的第二数据记录的标识。
作为本申请实施例的另一种可能的情况,第四处理模块,还用于:
根据第二数据分区,确定对应的第二服务器;根据读操作,向第二数据分区对应的第二服务器发送获取请求;接收第二数据分区对应的第二服务器发送的获取响应;根据获取响应中携带的数据记录,响应读操作。
作为本申请实施例的另一种可能的情况,该数据库读写装置700,还可以包括:
确定模块,用于确定写操作指向的数据记录的序号。
第二读取模块,用于读取配置信息。
第三处理模块,用于若序号属于配置信息记载的第一数据分区的序号范围内,则确定写操作指向的数据记录存储于第一数据分区。
第四处理模块,用于若序号不属于配置信息记载的第一数据分区的序号范围内,则确定写操作指向的数据记录存储于第二数据分区。
作为本申请实施例的另一种可能的情况,该数据库读写装置700,还可以包括:
更新模块,用于当多个服务器中存在服务器上线或服务器下线时,对配置信息进行更新。
作为本申请实施例的另一种可能的情况,目标数据库表中第i个数据分区所配置的序号范围为[(i-1)*N,i*N],其中,i为取值小于或等于数据分区总数的正整数,N是根据目标数据库表所包含的数据记录总数确定的。
需要说明的是,前述对数据库读写方法实施例的解释说明也适用于该实施例的数据库读写装置,此处不再赘述。
本申请实施例的数据库读写装置,通过监听目标应用程序对目标数据库表的写操作,若写操作指向的数据记录存储于第一数据分区,则对数据记录执行写操作;若写操作指向的数据记录存储于第二数据分区,则拒绝执行写操作。由此,第一服务器可以获取到其他服务器存储的数据库表,从而实现了多个服务器中的每一个服务器均具备读写操作能力。
为了实现上述实施例,本申请还提出一种服务器,如图8所示,该服务器800,包括存储器810、处理器820及存储在存储器810上并可在处理器820上运行的计算机程序,所述处理器820通过通信接口830获取到计算机程序后,执行所述程序时,实现上述实施例所述的数据库读写方法。
为了实现上述实施例,本申请还提出一种非临时性计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述实施例所述的数据库读写方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(RAM),只读存储器(ROM),可擦除可编辑只读存储器(EPROM或闪速存储器),光纤装置,以及便携式光盘只读存储器(CDROM)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(PGA),现场可编程门阵列(FPGA)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。

Claims (22)

1.一种数据库读写方法,其特征在于,所述方法由多个服务器中的第一服务器执行,所述多个服务器还包括不同于所述第一服务器的至少一个第二服务器,所述第一服务器和所述第二服务器中均部署有目标应用程序,所述方法包括以下步骤:
监听所述目标应用程序对目标数据库表的写操作;
若所述写操作指向的数据记录存储于所述目标数据库表的第一数据分区,则对所述数据记录执行所述写操作;其中,所述第一数据分区与所述第一服务器相对应;
若所述写操作指向的数据记录存储于所述目标数据库表的第二数据分区,则拒绝执行所述写操作;其中,所述第二数据分区与所述第二服务器相对应。
2.根据权利要求1所述的数据库读写方法,其特征在于,所述监听所述目标应用程序对目标数据库表的写操作之前,还包括:
定期读取存储在所述第一服务器本地的第一数据记录,并从所述第二服务器获取第二数据记录;
按照预设数据分区规则,将所述第一数据记录写入所述目标数据库表中与所述第一服务器相对应的第一数据分区,将所述第二数据记录写入所述目标数据库表中与所述第二服务器相对应的第二数据分区;其中,所述预设数据分区规则用于表征所述目标数据库表中的数据分区与所述多个服务器中各服务器的对应关系。
3.根据权利要求1所述的数据库读写方法,其特征在于,所述监听所述目标应用程序对目标数据库表的写操作之前,还包括:
监听所述目标应用程序对所述目标数据库表的读操作;
若所述读操作指向的数据记录存储于所述目标数据库表的第一数据分区,则从所述第一服务器本地读取所述读操作指向的数据记录;
若所述读操作指向的数据记录存储于所述目标数据库表的第二数据分区,则按照预设数据分区规则,从所述第二数据分区对应的第二服务器获取所述读操作指向的数据记录;其中,所述预设数据分区规则用于表征所述目标数据库表中的数据分区与所述多个服务器中各服务器的对应关系。
4.根据权利要求2所述的数据库读写方法,其特征在于,所述定期读取存储在所述第一服务器本地的第一数据记录,并从所述第二服务器获取第二数据记录,包括:
与各所述第二服务器同步启动所述目标应用程序;
监听到所述目标应用程序启动,则读取存储所述第一服务器本地的第一数据记录;
向所述第二服务器发送第一获取请求,以获取所述第二服务器存储的第二数据记录;
在所述第一服务器的缓存中存储所述第一数据记录和所述第二数据记录。
5.根据权利要求4所述的数据库读写方法,其特征在于,所述在所述第一服务器的缓存中存储所述第一数据记录和所述第二数据记录之后,还包括:
接收来自第二服务器的第二获取请求;
向所述第二服务器发送所请求的第一数据记录或所述第二数据记录。
6.根据权利要求4所述的数据库读写方法,其特征在于,当所述多个服务器中包括多个第二服务器时,所述向所述第二服务器发送第一获取请求,以获取所述第二服务器存储的第二数据记录,包括:
以设定顺序依次向所述多个第二服务器发送所述第一获取请求;
其中,所述第一获取请求中包含获取失败的第二数据记录的标识,和/或待获取的第二数据记录的标识。
7.根据权利要求3所述的数据库读写方法,其特征在于,所述从所述第二数据分区对应的第二服务器获取所述读操作指向的数据记录,包括:
根据所述第二数据分区,确定对应的第二服务器;
根据所述读操作,向所述第二数据分区对应的第二服务器发送获取请求;
接收所述第二数据分区对应的第二服务器发送的获取响应;
根据所述获取响应中携带的数据记录,响应所述读操作。
8.根据权利要求1-7任一项所述的数据库读写方法,其特征在于,所述监听所述目标应用程序对目标数据库表的写操作之后,还包括:
确定所述写操作指向的数据记录的序号;
读取配置信息,所述配置信息用于表征所述目标数据库表中为各数据分区所配置的序号范围;
若所述序号属于所述配置信息记载的所述第一数据分区的序号范围内,则确定所述写操作指向的数据记录存储于所述第一数据分区;
若所述序号不属于所述配置信息记载的所述第一数据分区的序号范围内,则确定所述写操作指向的数据记录存储于所述第二数据分区。
9.根据权利要求8所述的数据库读写方法,其特征在于,所述方法,还包括:
当所述多个服务器中存在服务器上线或服务器下线时,对所述配置信息进行更新。
10.根据权利要求8所述的数据库读写方法,其特征在于,所述目标数据库表中第i个数据分区所配置的序号范围为[(i-1)*N,i*N],其中,i为取值小于或等于数据分区总数的正整数,N是根据所述目标数据库表所包含的数据记录总数确定的。
11.一种数据库读写装置,其特征在于,应用于多个服务器中的第一服务器,所述多个服务器还包括不同于所述第一服务器的至少一个第二服务器,所述第一服务器和所述第二服务器中均部署有目标应用程序,所述装置包括:
监听模块,用于监听所述目标应用程序对目标数据库表的写操作;
第一处理模块,用于若所述写操作指向的数据记录存储于所述目标数据库表的第一数据分区,则对所述数据记录执行所述写操作;其中,所述第一数据分区与所述第一服务器相对应;
第二处理模块,用于若所述写操作指向的数据记录存储于所述目标数据库表的第二数据分区,则拒绝执行所述写操作;其中,所述第二数据分区与所述第二服务器相对应。
12.根据权利要求11所述的数据库读写装置,其特征在于,所述装置,还包括:
读取模块,用于定期读取存储在所述第一服务器本地的第一数据记录,并从所述第二服务器获取第二数据记录;
写入模块,用于按照预设数据分区规则,将所述第一数据记录写入所述目标数据库表中与所述第一服务器相对应的第一数据分区,将所述第二数据记录写入所述目标数据库表中与所述第二服务器相对应的第二数据分区;其中,所述预设数据分区规则用于表征所述目标数据库表中的数据分区与所述多个服务器中各服务器的对应关系。
13.根据权利要求11所述的数据库读写装置,其特征在于,所述装置,还包括:
监听模块,还用于监听所述目标应用程序对所述目标数据库表的读操作;
第三处理模块,用于若所述读操作指向的数据记录存储于所述目标数据库表的第一数据分区,则从所述第一服务器本地读取所述读操作指向的数据记录;
第四处理模块,用于若所述读操作指向的数据记录存储于所述目标数据库表的第二数据分区,则按照预设数据分区规则,从所述第二数据分区对应的第二服务器获取所述读操作指向的数据记录;其中,所述预设数据分区规则用于表征所述目标数据库表中的数据分区与所述多个服务器中各服务器的对应关系。
14.根据权利要求12所述的数据库读写装置,其特征在于,所述读取模块,还用于:
与各所述第二服务器同步启动所述目标应用程序;
监听到所述目标应用程序启动,则读取存储所述第一服务器本地的第一数据记录;
向所述第二服务器发送第一获取请求,以获取所述第二服务器存储的第二数据记录;
在所述第一服务器的缓存中存储所述第一数据记录和所述第二数据记录。
15.根据权利要求14所述的数据库读写装置,其特征在于,所述读取模块,还用于:
接收来自第二服务器的第二获取请求;向所述第二服务器发送所请求的第一数据记录或所述第二数据记录。
16.根据权利要求14所述的数据库读写装置,其特征在于,当所述多个服务器中包括多个第二服务器时,所述读取模块,还用于:
以设定顺序依次向所述多个第二服务器发送所述第一获取请求;
其中,所述第一获取请求中包含获取失败的第二数据记录的标识,和/或待获取的第二数据记录的标识。
17.根据权利要求13所述的数据库读写装置,其特征在于,所述第四处理模块,还用于:
根据所述第二数据分区,确定对应的第二服务器;
根据所述读操作,向所述第二数据分区对应的第二服务器发送获取请求;
接收所述第二数据分区对应的第二服务器发送的获取响应;
根据所述获取响应中携带的数据记录,响应所述读操作。
18.根据权利要求11-17任一项所述的数据库读写装置,其特征在于,所述装置,还包括:
确定模块,用于确定所述写操作指向的数据记录的序号;
第二读取模块,用于读取配置信息,所述配置信息用于表征所述目标数据库表中为各数据分区所配置的序号范围;
第三处理模块,用于若所述序号属于所述配置信息记载的所述第一数据分区的序号范围内,则确定所述写操作指向的数据记录存储于所述第一数据分区;
第四处理模块,用于若所述序号不属于所述配置信息记载的所述第一数据分区的序号范围内,则确定所述写操作指向的数据记录所述记录存储于所述第二数据分区。
19.根据权利要求18所述的数据库读写装置,其特征在于,所述装置,还包括:
更新模块,用于当所述多个服务器中存在服务器上线或服务器下线时,对所述配置信息进行更新。
20.根据权利要求18所述的数据库读写装置,其特征在于,所述目标数据库表中第i个数据分区所配置的序号范围为[(i-1)*N,i*N],其中,i为取值小于或等于数据分区总数的正整数,N是根据所述目标数据库表所包含的数据记录总数确定的。
21.一种服务器,其特征在于,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如权利要求1-10中任一所述的数据库读写方法。
22.一种非临时性计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1-10中任一所述的数据库读写方法。
CN202011332493.0A 2020-11-24 2020-11-24 数据库读写方法、装置、服务器及介质 Pending CN114547019A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011332493.0A CN114547019A (zh) 2020-11-24 2020-11-24 数据库读写方法、装置、服务器及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011332493.0A CN114547019A (zh) 2020-11-24 2020-11-24 数据库读写方法、装置、服务器及介质

Publications (1)

Publication Number Publication Date
CN114547019A true CN114547019A (zh) 2022-05-27

Family

ID=81660376

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011332493.0A Pending CN114547019A (zh) 2020-11-24 2020-11-24 数据库读写方法、装置、服务器及介质

Country Status (1)

Country Link
CN (1) CN114547019A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114707147A (zh) * 2022-06-05 2022-07-05 荣耀终端有限公司 业务请求处理方法及电子设备
CN115062092A (zh) * 2022-08-10 2022-09-16 阿里云计算有限公司 数据库访问方法、设备、系统及存储介质

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114707147A (zh) * 2022-06-05 2022-07-05 荣耀终端有限公司 业务请求处理方法及电子设备
CN115062092A (zh) * 2022-08-10 2022-09-16 阿里云计算有限公司 数据库访问方法、设备、系统及存储介质
CN115062092B (zh) * 2022-08-10 2023-02-03 阿里云计算有限公司 数据库访问方法、设备、系统及存储介质

Similar Documents

Publication Publication Date Title
CN108235751B (zh) 识别对象存储设备亚健康的方法、装置和数据存储系统
US9355112B1 (en) Optimizing compression based on data activity
CN109597567B (zh) 一种数据处理方法和装置
US8543781B2 (en) Hybrid locking using network and on-disk based schemes
US5504888A (en) File updating system employing the temporary connection and disconnection of buffer storage to extended storage
CN106126374B (zh) 数据写入方法、数据读取方法及装置
JP2005018738A (ja) ストレージベースのジャーナリングを用いてバックアップ及びリカバリを行う方法と装置
CN104935654A (zh) 一种服务器集群系统中的缓存方法、写入点客户端和读客户端
CN114547019A (zh) 数据库读写方法、装置、服务器及介质
CN108595119B (zh) 一种数据同步方法及分布式系统
CN113568582B (zh) 数据管理方法、装置和存储设备
CN113946291A (zh) 数据访问方法、装置、存储节点及可读存储介质
CN111857581A (zh) 一种数据存储的处理方法及系统
US8191066B2 (en) Continuously loading series of data whether data is requested or not, in response to end command unloading the data in descendent order of reference probability
CN116974489A (zh) 一种数据处理方法、装置、系统、电子设备及存储介质
CN112083886B (zh) 一种nas设备的存储管理方法、系统及装置
CN115562582A (zh) 基于蓝光盘库的数据迁移方法、服务器及蓝光盘库
CN115599291A (zh) 云存储系统及其磁盘管理方法、云存储服务器和存储介质
US20170115918A1 (en) Maintaining access times in storage systems employing power saving techniques
CN110674079B (zh) 日志文件记录方法和装置
CN107346277A (zh) 数据存储方法及装置
CN113157497A (zh) 数据存储方法、装置、设备及介质
JP6788188B2 (ja) 制御装置および制御プログラム
CN114356232B (zh) 数据读写方法和装置
CN109885552A (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