CN111880740B - 数据处理方法、装置、计算机系统及可读存储介质 - Google Patents

数据处理方法、装置、计算机系统及可读存储介质 Download PDF

Info

Publication number
CN111880740B
CN111880740B CN202010743261.8A CN202010743261A CN111880740B CN 111880740 B CN111880740 B CN 111880740B CN 202010743261 A CN202010743261 A CN 202010743261A CN 111880740 B CN111880740 B CN 111880740B
Authority
CN
China
Prior art keywords
data
processed
server
compression
original 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.)
Active
Application number
CN202010743261.8A
Other languages
English (en)
Other versions
CN111880740A (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.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen 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 Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN202010743261.8A priority Critical patent/CN111880740B/zh
Priority to PCT/CN2020/118457 priority patent/WO2021174828A1/zh
Publication of CN111880740A publication Critical patent/CN111880740A/zh
Application granted granted Critical
Publication of CN111880740B publication Critical patent/CN111880740B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/065Replication mechanisms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0646Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
    • G06F3/0652Erasing, e.g. deleting, data cleaning, moving of data to a wastebasket
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/067Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了数据处理方法、装置、计算机系统及可读存储介质,应用于分布式存储系统中,所述分布式存储系统包括多个副本服务器,其中所述副本服务器包括主副本服务器和至少一个从副本服务器,对于任一从副本服务器,包括:接收主副本服务器发出的原始数据并将所述原始数据写入第一存储单元,作为待处理数据;提供一预置的优先级列表,实时监测当前系统状态,根据所述优先级列表对所述待处理数据进行校验,同步执行对通过校验的待处理数据的压缩操作,获得目标数据;将所述目标数据写入并删除所述待处理数据,通过校验过程与压缩写入过程并行,同时采用优先级控制使用系统空闲资源执行压缩写入,解决数据压缩造成系统整体性能比较低的问题。

Description

数据处理方法、装置、计算机系统及可读存储介质
技术领域
本发明涉及大数据技术领域,尤其涉及一种数据处理方法、装置、计算机系统及可读存储介质。
背景技术
随着大规模的数据存储应用的发展,分布式存储系统由于采用多台分散的存储服务器来分担存储负荷,克服了传统的集中式存储系统性安全性较低的缺陷,但是为了保证数据的可靠性,目前典型的分布式存储在底层普遍采用的数据存储,例如将一份数据存储保留多个副本,且存储在不同的主机上,由于同样的数据存储了多份占用的空间与原数据相比有数倍之多,成本较高。
为了降低成本,需要对数据进行一定的压缩处理,但是在多副本分布式存储系统下,压缩过程一般会独立的作为一个进程按照一定的规则对数据进行压缩,对系统性能是一种额外的消耗,会降低系统整体性能,因此需要一种对系统性能的影响较少的情况进行数据压缩的处理方案。
发明内容
本发明的目的是提供一种数据处理方法、装置、计算机系统及可读存储介质,用于解决现有技术中的数据压缩造成系统整体性能比较低的问题。
为实现上述目的,本发明提供一种数据处理方法,应用于分布式存储系统中,所述分布式存储系统包括多个副本服务器,其中所述副本服务器包括主副本服务器和至少一个从副本服务器,应用于任一从副本服务器,包括:
接收主副本服务器发出的原始数据并将所述原始数据写入第一存储单元,作为待处理数据;
提供一预置的优先级列表,所述优先级列表中包括读写操作状态和压缩操作状态,设置所述读写操作状态优先级高于压缩操作状态;
实时监测当前系统状态,根据所述优先级列表对所述待处理数据进行校验,同步执行对通过校验的待处理数据的压缩操作,获得目标数据;
将所述目标数据写入并删除所述待处理数据。
进一步的,在停止压缩操作前,还包括以下:
在所述待处理数据中添加用于确定压缩操作进程的标识位。
进一步的,对所述待处理数据进行校验,包括:
判断所述待处理数据是否预置校验码;
若是,则基于所述校验码对所述待处理数据进行校验;
若否,在将所述待校验数据进行编码读出校验。
进一步的,对所述待处理数据进行校验,还包括:
当校验失败后,从主副本服务器中获取原始数据;
根据从其他副本服务器获得的原始数据对所述待处理数据进行调整,获得调整后的待处理数据;
对所述调整后的待处理数据再次进行校验,直至通过校验。
进一步的,执行对通过校验的待处理数据的压缩操作,获得目标数据包括以下:
基于预设压缩算法对所述待处理数据处理,获得压缩数据;
获取所述压缩算法对应的标签,对所述压缩数据在预设位置采用所述标签进行标记,获得带有算法标签的压缩数据作为目标数据。
为实现上述目的,本发明还提供一种数据处理方法,用于分布式存储系统中,所述分布式存储系统包括多个副本服务器,其中,所述副本服务器包括主副本服务器和至少一个从副本服务器,应用于主副本服务器,所述主副本服务器存储有所述从副本服务器接收的原始数据,包括以下:
接收客户端发出的原始数据并将所述原始数据写入第二存储单元,将所述原始数据发送至从副本服务器;
接收客户端发出的读出请求,将所述原始数据发送至客户端。
为实现上述目的,本发明还提供一种数据处理装置,包括主副本服务器和至少一个从副本服务器;
所述从副本服务器包括以下:
第一接收模块,用于接收客户端发出的原始数据并将所述原始数据写入第一存储单元,获得待处理数据;
执行模块,用于对所述待处理数据进行校验,同步执行对通过校验的待处理数据的压缩操作,获得目标数据;
第一处理模块,用于将所述目标数据写入并删除所述待处理数据;
所述主副本服务器存储有所述从副本服务器接收的原始数据,包括以下:
第二接收模块,用于接收客户端发出的原始数据并将所述原始数据写入第二存储单元,并将所述原始数据发送至从副本服务器;
第二处理模块,用于接收客户端发出的读出请求,将所述原始数据发送至客户端。
进一步的,所述执行模块还包括以下:
检测单元,用于实时监测当前系统是否处于执行读写操作的状态下;
控制单元,用于根据所述优先级列表依次执行读写操作和压缩操作;
校验单元,用于控制对所述待处理数据进行校验,判断所述待处理数据是否预置校验码;若是,则基于所述校验码对所述待处理数据进行校验;若否,在将所述待校验数据进行编码读出校验;
调整单元,用于当校验失败后,从主副本服务器中获取原始数据;根据从其他副本服务器获得的原始数据对所述待处理数据进行调整,获得调整后的待处理数据;对所述调整后的待处理数据再次进行校验,直至通过校验;
压缩单元,用于控制执行对通过校验的待处理数据的压缩操作,基于预设压缩算法对所述待处理数据处理,获得压缩数据;获取所述压缩算法对应的标签,对所述压缩数据在预设位置采用所述标签进行标记,获得带有算法标签的压缩数据作为目标数据。
为实现上述目的,本发明还提供一种计算机系统,其包括多个计算机设备,各计算机设备包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述多个计算机设备的处理器执行所述计算机程序时共同实现上述任一项所述数据处理方法的步骤。
为实现上述目的,本发明还提供一种计算机可读存储介质,其包括多个存储介质,各存储介质上存储有计算机程序,所述多个存储介质存储的所述计算机程序被处理器执行时共同实现上述数据处理方法的步骤。
本发明提供的数据处理方法、装置、计算机系统及可读存储介质,通过接收客户端发出的原始数据并将所述原始数据分别完整写入主副本服务器和从副本服务器,再从副本服务器中对写入的数据进校验并同步执行压缩操作,采用压缩后的数据重新写入并删除原始数据进行存储,通过校验过程与压缩写入过程并行,同时通过优先级控制,对系统性能进行合理配置,优先执行正常读写操作,而压缩操作和压缩后写入,仅使用系统空闲资源,解决现有技术中的数据压缩造成系统整体性能比较低的问题。
附图说明
图1为本发明数据处理方法实施例一的框架图;
图2为本发明数据处理方法实施例一中从副本服务器处理的流程图;
图3为本发明数据处理方法实施例一中具体流程图;
图4为本发明数据处理方法实施例二中的流程图;
图5为本发明数据处理装置实施例三的模块图;
图6为本发明数据处理装置实施例三执行模块中的模块图;
图7为本发明计算机系统实施例四中计算机设备的硬件结构示意图。
附图标记:
5、数据处理装置
51、主副本服务器 52、从副本服务器
521、第一接收模块 522、第一存储单元 523、执行模块
5231、检测单元 5232、控制单元 5233、校验单元
5234、调整单元 5235、压缩单元 524、第一处理模块
511、第二接收模块 512、第二存储单元 513、第二处理模块
6、计算机设备 61、存储器 62、处理器
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明提供的数据处理方法、装置、计算机系统及可读存储介质,适用于云存储的分布式存储领域,涉及区块链领域,且应用于区块链的应用服务层,分布式存储系统包括多个副本服务器,其中所述副本服务器包括主副本服务器和至少一个从副本服务器,提供一种基于从副本服务器中第一接收模块、执行模块、第一处理模块以及主副本服务器中第二接收模块、第二处理模块的数据处理方法。参阅图1中的框架如,A客户端,B、C、D为副本服务器,B为主副本服务器,C、D为从副本服务器,对于数据读取,优选采用读取主副本服务器B的方式。本发明通过副本服务器B、C、D接收客户端A发出的原始数据并将所述原始数据分别完整写入主副本服务器B和从副本服务器C、D,在从副本服务器C、D中对写入的数据进校验并同步执行压缩操作,采用压缩后的数据重新写入并删除原始数据进行存储,解决现有技术中的数据压缩造成系统整体性能比较低的问题,通过校验进程与压缩写入进程同步执行,同时客户端A优选从主副本服务器B中读取原始数据,使数据获得较大比例的压缩后仍然能够保证原始的读写性能,通过对现有系统进行最小化的改动即可将压缩功能添加到成熟系统,对系统引入较低风险,将压缩对系统的影响降低到最小。
实施例一
请参阅图1,本实施例的一种数据处理方法,应用于分布式存储系统中,所述分布式存储系统包括多个副本服务器,其中所述副本服务器包括主副本服务器和至少一个从副本服务器,应用于任一从副本服务器,参阅图2,包括:
S100:接收主副本服务器或客户端发出的原始数据并将所述原始数据写入第一存储单元,作为待处理数据;
在本实施方式中,需要说明的是,上述原始数据为系统底层数据,比如元数据、裸数据等等,区别于常见的图像数据文本数据等等,一般为数据块,即一组或几组按顺序连续排列在一起的记录,是主存储器与输入设备、输出设备或外存储器之间进行传输的数据单位,本方案中对于写入的全部副本(包括主副本服务器和从副本服务器),在初次写入的时候,均写入不压缩的数据,以保证写入数据的最佳性能。
在上述步骤S100中的数据写入前,采用根据该分布式系统是否是强一致性系统而选择性写入全部副本服务器或者部分副本服务器的方式,对于关系型数据库(即分布式系统中),要求更新过的数据能被后续的访问都能看到,即为强一致性系统,如果后续的部分或者全部访问不到,则是弱一致性系统,在写入前即可根据该系统性质确定需要被写入的副本服务器,写入的原始数据可以是来自主副本服务器也可以来自客户端。
S200:实时监测当前系统状态,根据预置的优先级列表对所述待处理数据进行校验,同步执行对通过校验的待处理数据的压缩操作,获得目标数据;
在本方案中,校验主要是用于发现磁盘错误,数据写入错误等各种数据不一致性问题,保证写入数据的准确性,校验与压缩操作同步执行,即作为举例的,当从副本a执行数据校验的同时将校验一致的结果同步压缩写入从副本a中,所述校验过程与压缩写入过程并行,达到数据压缩的目的,同时由于从副本服务器执行压缩写入,而主副本服务器为正常读写数据,因此数据获得较大比例的压缩后仍然能够保证原始的读写性能。
具体的,参阅图3,在执行对通过校验的所述待处理数据的压缩操作前,包括以下步骤:
提供一预置的优先级列表,所述优先级列表中包括读写操作状态和压缩操作状态,所述读写操作状态优先级高于压缩操作状态;
需要说明的是,上述优先级列表中的读写操作为系统执行非压缩读写操作,预置该优先级列表的作用在于对系统性能进行合理配置,当系统IO无法同时支持读写操作和压缩操作时,优先执行读写操作,而压缩操作和压缩后写入,仅使用系统空闲资源,作为举例的,也可将实际环境中的其他占用系统性能的操作加入该优先级列表中。
S200-1:实时监测当系统前是否处于执行读写操作的状态下;
具体的,实时监测是为了及时确定当前分布式系统正在执行的操作,以便系统优先执行正常读写操作,保证系统正常读写的完整性和准确性。
上述读写操作包括从客户端中获取数据并首次写入主副本或从副本中,以及客户端从主副本中读取数据的情况,由于上述两种情况下对系统性能要求较高,为了减少与校验同步执行的压缩写入占用较多系统性能,而影响系统正常读写过程,因而在同步执行压缩写入时监测是否存在正常读写操作的情况。
S200-2:若是,则停止压缩操作,根据所述优先级列表依次执行读写操作和压缩操作;
上述步骤主要是为了实现在系统资源忙碌的时候,压缩写入线程甚至可以被阻塞,将压缩写入对非压缩读写操作的影响最小化。
具体的,在停止压缩操作前,还包括以下:
在所述待处理数据中添加用于确定压缩操作进程的标识位。
在上述实施方式中,添加用于确定压缩操作进程的标识位具体的实现方式为在已经完成压缩操作的数据处添加标识信息,这样在后续继续执行压缩操作拾,已经被压缩的数据不需要再次进行校验和压缩,提高工作效率。
S200-3:若否,则继续执行校验和压缩操作。
具体的,上述步骤中所述对所述待处理数据进行校验,参阅图3,包括:
S211:判断所述待处理数据是否预置校验码;
在上述实施方式中,常使用的检验码有三种.分别是奇偶校验码、海明校验码和循环冗余校验码(CRC),奇偶校验码是奇校验码和偶校验码的统称.它们都是通过在要校验的编码上加一位校验位组成,如果是奇校验加上校验位后,编码中1的个数为奇数个,如果是偶校验加上校验位后,编码中1的个数为偶数个;海明码也是利用奇偶性来校验数据的.它是一种多重奇偶校验检错系统,它通过在数据位之间插入k个校验位,来扩大码距,从而实现检错和纠错;CRC码利用生成多项式为k个数据位产生r个校验位进行编码,其编码长度为n=k+r所以又称(n,k)码,CRC码广泛应用于数据通信领域和磁介质存储系统;所述校验码为原始数据中预置的,通过校验码对所述待处理数据进行校验的方式比较方便。
S212:若是,则基于所述校验码对所述待处理数据进行校验;
S213:若否,在将所述待校验数据进行编码读出校验。
除了校验码校验的方式外,由于原始数据为底层数据,还可通过编译读出的方式,若待校验数据在存储或数据交换过程中发生错误,则无法被完整编译,通过该方式也可迅速对待处理数据进行校验。
在本方案中,除了上述通过校验码以及编码读出校验的方式外,还可以通过主副本服务器与多个从副本服务器之间相互校验。
更具体的,对所述待处理数据进行校验,校验通过的数据同步执行压缩,校验失败的数据则需要进行再次处理,所以当校验失败后还包括以下:
S221:从主副本服务器中获取原始数据;
对于数据读取,采用读取主副本的方式。为了保证读出性能,主服务器中一般对于写入的原始数据不进行任何处理,可以最大限度确定存储数据的准确性和完整性。
S222:根据从其他副本服务器获得的原始数据对所述待处理数据进行调整,获得调整后的待处理数据;
校验失败可能是数据交换过程中产生偏差,也可能是存储过程中出现问题,因此可以根据原始数据进行核对并修改错误数据,在具体实施场景中,可以从主副本服务器中获取原始数据,也可以从其他多个从副本服务器中获得数据,可以获取其他从副本服务器中校验通过的数据。
需要说明的是,在此处的原始数据即为其他副本服务器中存储的原始数据或与原始数据一致的待处理数据。
S223:对所述调整后的待处理数据再次进行校验,直至通过校验。
具体的,参阅图3,上述步骤S200中执行对通过校验的待处理数据的压缩操作,获得目标数据包括以下:
S231:基于预设压缩算法对所述待处理数据处理,获得压缩数据;
在本实施方式中,具体的压缩算法包括但不限于霍夫曼(Huffman)算法和LZW(Lenpel-Ziv&Welch)压缩算法等,现有技术中其他压缩算法也可用于此,可根据具体的实施场景预设相应的算法。
S232:获取所述压缩算法对应的标签,对所述压缩数据在预设位置采用所述标签进行标记,获得带有算法标签的压缩数据作为目标数据。
在上述步骤中,所述压缩算法对应的标签用于标识该算法,对压缩数据进行标记以便于后续根据该标签匹配合适的算法进行解压读取。
通过本方案中分布式存储系统存储原始数据,用户设备可以从分布式系统任一从副本服务器中下载得目标数据,解压后即可获得原始数据,以便查证上述数据是否被篡改,每一个数据块中包含了一批次网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块,确保数据安全性。
S300:将所述目标数据写入并删除所述待处理数据。
在本实施方式中,在完成压缩操作后需要删除预先存储的待处理数据,根据上述步骤可知,若在数据交换或数据存储过程中不存在出错的情况,待处理数据与原始数据一致,因此为了实现对存储空间的释放以减少成本,需要删除原始数据,采用对应的压缩数据用于存储。
本方案中通过校验进程与压缩写入进程同步执行(步骤S200),解决现有技术中的数据压缩造成系统整体性能比较低的问题,同时只在从副本服务器端进行压缩,优选从主副本服务器读取数据,数据获得较大比例的压缩后仍然能够保证原始的读写性能,还结合优先级控制,进一步将压缩操作对系统IO的影响降低到最小。
实施例二:
请参阅图4,本实施例的一种数据处理方法,应用于分布式存储系统中,所述分布式存储系统包括多个副本服务器,其中,所述副本服务器包括主副本服务器和至少一个从副本服务器,应用于主副本服务器,所述主副本服务器存储有所述从副本服务器接收的原始数据,包括以下:
S410:接收客户端发出的原始数据并将所述原始数据写入第二存储单元,并将所述原始数据发送至从副本服务器;
S420:接收客户端发出的读出请求,将所述原始数据发送至客户端。
通过上述步骤S410和步骤S420实现本方案中优先采用读取主副本服务器的方式读取数据,在实际应用场景中,客户端也可获取从副本服务器中的数据解压后获得原始数据,由于原始数据被压缩,因此每次数据的读取需要完成一个解压的过程,主副本服务器可直接获取完整的原始数据,提高读写效率,也可选择对主副本写入压缩数据,这种情况,系统的压缩比进一步提高,但是牺牲掉了一部分读性能,进一步减少对系统空间的占用,降低成本。
实施例三:
请参阅图5,本实施例的一种数据处理装置5,包括主副本服务器51和至少一个从副本服务器52;
所述从副本服务器52包括以下:
第一接收模块521,用于接收客户端发出的原始数据;
第一存储单元522,用于将所述原始数据写入并存储,作为待处理数据;
需要说明的是,上述原始数据为系统底层数据,比如元数据、裸数据等等,区别于常见的图像数据文本数据等等,一般为数据块。
优先级列表存储模块,用于提供一预置的优先级列表,所述优先级列表中包括读写操作状态和压缩操作状态,设置所述读写操作状态优先级高于压缩操作状态;
执行模块523,用于实时监测当前系统状态,根据所述优先级列表对所述待处理数据进行校验,同步执行对通过校验的待处理数据的压缩操作,获得目标数据;
具体的,参阅图6,所述执行模块还包括以下:
检测单元5231,用于实时监测当前系统是否处于执行读写操作的状态下;
控制单元5232,用于根据所述优先级列表依次执行读写操作和压缩操作;
上述控制单元根据预置优先级列表对系统性能进行合理配置,当系统IO无法同时支持读写操作和压缩操作时,优先执行读写操作,而压缩操作后执行。
校验单元5233,用于控制对所述待处理数据进行校验;
上述通过校验单元执行的校验过程包括但不限于校验码校验、编译校验以及多个副本服务器之间相互校验。
调整单元5234,用于当校验失败后,从主副本服务器中获取原始数据;根据从其他副本服务器获得的原始数据对所述待处理数据进行调整,获得调整后的待处理数据;对所述调整后的待处理数据再次进行校验,直至通过校验。
压缩单元5235,用于控制执行对通过校验的待处理数据的压缩操作。
压缩单元执行的具体的压缩算法包括但不限于霍夫曼(Huffman)算法和LZW(Lenpel-Ziv&Welch)压缩算法等。
校验与压缩操作同步执行,所述校验过程与压缩写入过程并行,达到数据压缩的目的,同时解决现有技术中的数据压缩造成系统整体性能比较低的问题。
第一处理模块524,用于将所述目标数据写入并删除所述待处理数据。
所述主副本服务器51存储有所述从副本服务器接收的原始数据,包括以下:
第二接收模块511,用于接收客户端发出的原始数据,并将所述原始数据发送至从副本服务器;
本方案中对于写入的全部副本(包括主副本服务器和从副本服务器),在初次写入的时候,均写入不压缩的数据。
第二存储单元512,用于将所述原始数据写入并存储;
第二处理模块513,用于接收客户端发出的读出请求,将所述原始数据发送至客户端。
本技术方案基于云存储的分布式存储领域,通过接收客户端发出的原始数据并将所述原始数据分别完整写入主副本服务器和从副本服务器,在从副本服务器中对写入的数据进校验并同步执行压缩操作,采用压缩后的数据重新写入并删除原始数据进行存储,解决现有技术中的数据压缩造成系统整体性能比较低的问题,同时优选的从未执行压缩操作的主副本中读出数据,减少对原始数据正常读写性能的影响。
本技术方案还通过检测单元实时监测当前系统是否处于执行读写操作的状态下,根据优先级处理正常读写操作和压缩操作,对系统性能进行合理配置,当系统IO无法同时支持读写操作和压缩操作时,优先执行读写操作,压缩操作在系统空余时执行,进一步减少数据压缩造成系统整体性能比较低而影响其他进程的问题。
实施例四:
为实现上述目的,本发明还提供一种计算机系统,该计算机系统包括多个计算机设备6,实施例二的数据处理装置5的组成部分可分散于不同的计算机设备中,计算机设备可以是执行程序的智能手机、平板电脑、笔记本电脑、台式计算机、机架式服务器、刀片式服务器、塔式服务器或机柜式服务器(包括独立的服务器,或者多个服务器所组成的服务器集群)等。本实施例的计算机设备至少包括但不限于:可通过系统总线相互通信连接的存储器61、处理器62,如图7所示。需要指出的是,图7仅示出了具有组件-的计算机设备,但是应理解的是,并不要求实施所有示出的组件,可以替代的实施更多或者更少的组件。
本实施例中,存储器61(即可读存储介质)包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘等。在一些实施例中,存储器61可以是计算机设备的内部存储单元,例如该计算机设备的硬盘或内存。在另一些实施例中,存储器61也可以是计算机设备的外部存储设备,例如该计算机设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。当然,存储器51还可以既包括计算机设备的内部存储单元也包括其外部存储设备。本实施例中,存储器61通常用于存储安装于计算机设备的操作系统和各类应用软件,例如实施例一的数据处理装置的程序代码等。此外,存储器61还可以用于暂时地存储已经输出或者将要输出的各类数据。
处理器62在一些实施例中可以是中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器、或其他数据处理芯片。该处理器62通常用于控制计算机设备的总体操作。本实施例中,处理器62用于运行存储器61中存储的程序代码或者处理数据,例如运行数据处理装置,以实现实施例一的数据处理方法。
实施例五:
为实现上述目的,本发明还提供一种计算机可读存储系统,其包括多个存储介质,如闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、随机访问存储器(RAM)、静态随机访问存储器(SRAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、可编程只读存储器(PROM)、磁性存储器、磁盘、光盘、服务器、App应用商城等等,其上存储有计算机程序,程序被处理器62执行时实现相应功能。本实施例的计算机可读存储介质用于存储数据处理装置,被处理器62执行时实现实施例一的数据处理方法。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种数据处理方法,其特征在于,应用于分布式存储系统中,所述分布式存储系统包括多个副本服务器,其中所述副本服务器包括主副本服务器和至少一个从副本服务器,对于任一从副本服务器,包括:
接收主副本服务器发出的原始数据并将所述原始数据写入第一存储单元,作为待处理数据;
提供一预置的优先级列表,所述优先级列表中包括读写操作状态和压缩操作状态,设置所述读写操作状态优先级高于压缩操作状态;
实时监测当前系统状态,根据所述优先级列表对所述待处理数据进行校验,同步执行对通过校验的待处理数据的压缩操作,获得目标数据;
将所述目标数据写入并删除所述待处理数据。
2.根据权利要求1所述的数据处理方法,其特征在于,在停止压缩操作前,还包括以下:
在所述待处理数据中添加用于确定压缩操作进程的标识位。
3.根据权利要求1所述的数据处理方法,其特征在于,对所述待处理数据进行校验,包括:
判断所述待处理数据是否预置校验码;
若是,则基于所述校验码对所述待处理数据进行校验;
若否,则将所述待处理数据编码进行读出校验。
4.根据权利要求3所述的数据处理方法,其特征在于,对所述待处理数据进行校验,还包括:
当校验失败后,从主副本服务器中获取原始数据;
根据从其他副本服务器获得的原始数据对所述待处理数据进行调整,获得调整后的待处理数据;
对所述调整后的待处理数据再次进行校验,直至通过校验。
5.根据权利要求1所述的数据处理方法,其特征在于,执行对通过校验的待处理数据的压缩操作,获得目标数据包括以下:
基于预设压缩算法对所述待处理数据处理,获得压缩数据;
获取所述压缩算法对应的标签,对所述压缩数据在预设位置采用所述标签进行标记,获得带有算法标签的压缩数据作为目标数据。
6.一种数据处理方法,其特征在于,用于分布式存储系统中,所述分布式存储系统包括多个副本服务器,其中,所述副本服务器包括主副本服务器和至少一个从副本服务器,包括以下:
所述主副本服务器接收客户端发出的原始数据,将所述原始数据写入第二存储单元,并将所述原始数据发送至从副本服务器;
所述从副本服务器接收主副本服务器发出的原始数据,写入第一存储单元,作为待处理数据,根据预置的优先级列表对所述待处理数据进行校验,同步执行对通过校验的待处理数据的压缩操作,获得目标数据,写入目标数据并删除接收的原始数据,其中,所述优先级列表中设置读写操作状态优先级高于压缩操作状态;
接收客户端发出的读出请求,从任一副本服务器中获得所述原始数据发送至客户端,其中优先读取主副本服务器。
7.一种数据处理装置,其特征在于:包括主副本服务器和至少一个从副本服务器;
所述从副本服务器包括以下:
第一接收模块,用于接收客户端发出的原始数据并将所述原始数据写入,获得待处理数据;
优先级列表存储模块,用于提供一预置的优先级列表,所述优先级列表中包括读写操作状态和压缩操作状态,设置所述读写操作状态优先级高于压缩操作状态;
执行模块,用于实时监测当前系统状态,根据所述优先级列表对所述待处理数据进行校验,同步执行对通过校验的待处理数据的压缩操作,获得目标数据;
第一处理模块,用于将所述目标数据写入并删除所述待处理数据;
所述主副本服务器存储有所述从副本服务器接收的原始数据,包括以下:
第二接收模块,用于接收客户端发出的原始数据并将所述原始数据写入,并将所述原始数据发送至从副本服务器;
第二处理模块,用于接收客户端发出的读出请求,将所述原始数据发送至客户端。
8.根据权利要求7所述的一种数据处理装置,所述执行模块还包括以下:
检测单元,用于实时监测当前系统是否处于执行读写操作的状态下;
控制单元,用于根据所述优先级列表依次执行读写操作和压缩操作;
校验单元,用于控制对所述待处理数据进行校验,判断所述待处理数据是否预置校验码;若是,则基于所述校验码对所述待处理数据进行校验;若否,则将所述待处理数据编码进行读出校验;
调整单元,用于当校验失败后,从主副本服务器中获取原始数据;根据从其他副本服务器获得的原始数据对所述待处理数据进行调整,获得调整后的待处理数据;对所述调整后的待处理数据再次进行校验,直至通过校验;
压缩单元,用于控制执行对通过校验的待处理数据的压缩操作,基于预设压缩算法对所述待处理数据处理,获得压缩数据;获取所述压缩算法对应的标签,对所述压缩数据在预设位置采用所述标签进行标记,获得带有算法标签的压缩数据作为目标数据。
9.一种计算机系统,其包括多个计算机设备,各计算机设备包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述多个计算机设备的处理器执行所述计算机程序时共同实现权利要求1至5任一项所述数据处理方法的步骤。
10.一种计算机可读存储介质,其包括多个存储介质,各存储介质上存储有计算机程序,其特征在于,所述多个存储介质存储的所述计算机程序被处理器执行时共同实现权利要求1至5任一项所述数据处理方法的步骤。
CN202010743261.8A 2020-07-29 2020-07-29 数据处理方法、装置、计算机系统及可读存储介质 Active CN111880740B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202010743261.8A CN111880740B (zh) 2020-07-29 2020-07-29 数据处理方法、装置、计算机系统及可读存储介质
PCT/CN2020/118457 WO2021174828A1 (zh) 2020-07-29 2020-09-28 数据处理方法、装置、计算机系统及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010743261.8A CN111880740B (zh) 2020-07-29 2020-07-29 数据处理方法、装置、计算机系统及可读存储介质

Publications (2)

Publication Number Publication Date
CN111880740A CN111880740A (zh) 2020-11-03
CN111880740B true CN111880740B (zh) 2024-05-24

Family

ID=73200519

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010743261.8A Active CN111880740B (zh) 2020-07-29 2020-07-29 数据处理方法、装置、计算机系统及可读存储介质

Country Status (2)

Country Link
CN (1) CN111880740B (zh)
WO (1) WO2021174828A1 (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110247666B (zh) * 2019-05-22 2023-08-18 深圳大学 一种硬件并行压缩的系统及方法
CN112383312B (zh) * 2020-11-16 2024-05-14 北京百度网讯科技有限公司 一种数据处理方法、装置、电子设备以及存储介质
CN112363675A (zh) * 2020-11-18 2021-02-12 苏州元核云技术有限公司 基于分布式存储系统的控制方法及系统
CN114398006A (zh) * 2021-12-24 2022-04-26 中国电信股份有限公司 一种分布式存储模式控制方法、装置、设备以及存储介质
CN114999559B (zh) * 2022-08-03 2022-11-29 合肥康芯威存储技术有限公司 一种存储芯片的测试方法、系统及存储介质
CN116048429B (zh) * 2023-04-03 2023-07-04 创云融达信息技术(天津)股份有限公司 一种多副本读写方法及装置
CN116579551B (zh) * 2023-04-28 2023-12-08 广东技术师范大学 一种基于智能制造的智能管理系统和方法
CN116527539B (zh) * 2023-05-15 2023-11-28 合芯科技(苏州)有限公司 数据一致性校验方法、装置及计算机设备
CN116455753B (zh) * 2023-06-14 2023-08-18 新华三技术有限公司 一种数据平滑方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105095300A (zh) * 2014-05-16 2015-11-25 阿里巴巴集团控股有限公司 一种数据库备份方法及系统
WO2019212768A1 (en) * 2018-04-30 2019-11-07 Amazon Technologies, Inc. Distributed replica for block storage systems
CN110881062A (zh) * 2019-10-18 2020-03-13 平安科技(深圳)有限公司 基于大数据的文件传输方法、装置、设备和存储介质
CN111400105A (zh) * 2020-03-27 2020-07-10 北京拓世寰宇网络技术有限公司 数据库备份方法及装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8918607B2 (en) * 2010-11-19 2014-12-23 International Business Machines Corporation Data archiving using data compression of a flash copy
CN102543108A (zh) * 2011-08-16 2012-07-04 北京友友天宇系统技术有限公司 基于分布式存储的视频冗余策略优化方法
US9390283B2 (en) * 2014-04-02 2016-07-12 International Business Machines Corporation Controlling access in a dispersed storage network
CN111104069B (zh) * 2019-12-20 2024-02-06 北京金山云网络技术有限公司 分布式存储系统的多区域数据处理方法、装置及电子设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105095300A (zh) * 2014-05-16 2015-11-25 阿里巴巴集团控股有限公司 一种数据库备份方法及系统
WO2019212768A1 (en) * 2018-04-30 2019-11-07 Amazon Technologies, Inc. Distributed replica for block storage systems
CN110881062A (zh) * 2019-10-18 2020-03-13 平安科技(深圳)有限公司 基于大数据的文件传输方法、装置、设备和存储介质
CN111400105A (zh) * 2020-03-27 2020-07-10 北京拓世寰宇网络技术有限公司 数据库备份方法及装置

Also Published As

Publication number Publication date
CN111880740A (zh) 2020-11-03
WO2021174828A1 (zh) 2021-09-10

Similar Documents

Publication Publication Date Title
CN111880740B (zh) 数据处理方法、装置、计算机系统及可读存储介质
US9354991B2 (en) Locally generated simple erasure codes
US7921237B1 (en) Preserving data integrity of DMA descriptors
CN109964215B (zh) 具有环形缓冲区镜像的远程直接存储器访问数据通信中的流控制
WO2018001140A1 (zh) 一种文件的自校验方法及系统
WO2019210844A1 (zh) 存储设备异常检测方法及装置、分布式存储系统
CN115408730A (zh) 数据处理方法、芯片、电子设备及存储介质
CN117391099B (zh) 智能卡的数据下载及校验方法及其系统、存储介质
CN111694684B (zh) 存储设备的异常构造方法、装置、电子设备及存储介质
CN109462661B (zh) 数据同步方法、装置、计算机设备和存储介质
CN111835808A (zh) 数据存储方法及装置、数据读取方法及装置、存储介质
CN113419680A (zh) 一种存储方法及系统
CN111352764B (zh) 一种芯片修复的方法、装置、设备及存储介质
CN111694724B (zh) 分布式表格系统的测试方法、装置、电子设备及存储介质
CN110620800B (zh) 电力二次系统跨安全区的配置数据同步处理方法和装置
CN105354107A (zh) NOR Flash的数据传输方法及系统
CN111324668B (zh) 数据库数据同步处理方法、装置及存储介质
CN113259410A (zh) 一种基于分布式存储的数据传输校验方法及系统
CN112445761B (zh) 一种文件校验方法、装置及存储介质
WO2024040919A1 (zh) 一种数据修复方法及存储设备
CN112269583B (zh) 设备运行异常文件升级处理方法、服务器和存储介质
CN117648109A (zh) 基于Flash页对齐方式的差分升级方法、系统及介质
CN114296993A (zh) 一种基于缓存的数据校验方法、设备及介质
CN113986877A (zh) 数据迁移方法、装置、设备及存储介质
CN116483409A (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
GR01 Patent grant