CN111522783B - 数据同步方法、装置、电子设备及计算机可读存储介质 - Google Patents
数据同步方法、装置、电子设备及计算机可读存储介质 Download PDFInfo
- Publication number
- CN111522783B CN111522783B CN202010291541.XA CN202010291541A CN111522783B CN 111522783 B CN111522783 B CN 111522783B CN 202010291541 A CN202010291541 A CN 202010291541A CN 111522783 B CN111522783 B CN 111522783B
- Authority
- CN
- China
- Prior art keywords
- data
- version
- user
- latest
- document
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 230000004044 response Effects 0.000 claims description 4
- 238000012217 deletion Methods 0.000 description 7
- 230000037430 deletion Effects 0.000 description 7
- 238000007726 management method Methods 0.000 description 7
- 230000009286 beneficial effect Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000011084 recovery Methods 0.000 description 3
- 230000002829 reductive effect Effects 0.000 description 3
- 230000006978 adaptation Effects 0.000 description 2
- 230000003416 augmentation Effects 0.000 description 2
- 238000013480 data collection Methods 0.000 description 2
- 238000013523 data management Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000006399 behavior Effects 0.000 description 1
- 238000004140 cleaning Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 235000019800 disodium phosphate Nutrition 0.000 description 1
- 230000000670 limiting effect Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000036961 partial effect Effects 0.000 description 1
- 238000012552 review Methods 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/178—Techniques for file synchronisation in file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/14—Error detection or correction of the data by redundancy in operation
- G06F11/1402—Saving, restoring, recovering or retrying
- G06F11/1446—Point-in-time backing up or restoration of persistent data
- G06F11/1448—Management of the data involved in backup or backup restore
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/182—Distributed file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Quality & Reliability (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请实施例提供了一种数据同步方法、装置、电子设备及计算机可读存储介质。该数据同步方法包括:获取最新数据版本,以及与最新数据版本对应的用户数据;根据最新数据版本的更新类型,确定用户数据的数据路径并分类到数据文档中,数据文档包括第一数据文档和第二数据文档;根据数据文档,将最新数据版本对应的用户数据更新到分布式文件系统中。本申请提供的数据同步方法根据最新数据版本的更新类型,将用户数据的数据路径分类到数据文档中并分别将用户数据更新到分布式文件系统中,可在具有大量数据的环境下,通过管控数据版本,将数据备份到分布式文件系统,有效防止数据误删或者传错目录的情况。
Description
技术领域
本申请涉及计算机数据管理技术领域,具体而言,本申请涉及一种数据同步方法、装置、电子设备及计算机可读存储介质。
背景技术
随着数据收集手段的不断丰富以及人们对数据重要性的认识不断加深,越来越多的与人类活动相关的数据被积累下来。数据规模已经增长到了传统软件行业无法承载的海量级别。面对分析海量数据的需求,现有的单台服务器已经力不从心。在这种大数据环境下进行数据管理,例如进行数据备份,是十分必要的容灾手段。
通过数据库进行数据备份是目前较为常用的数据容灾手段。由于数据量的不断增大,开发人员在管理数据时通常需要一套大数据系统来维护和保护数据。在集群环境中,可能有上千台服务器连在一起,故障率很高。一旦发生硬件故障,为了能够正常读取数据,就必须由该大数据系统中未发生故障的服务器提供在线数据或基于数据的在线服务,因此也就存在数据在多节点当中备份和存储的数据管理行为。
然而,在数据收集并备份的过程中,由于数据来源很广,数据库又较为复杂,很容易发生数据误删或数据传错目录的情况,十分不利于数据的妥善管理和应用。
发明内容
本申请针对现有方式的缺点,提出一种数据同步方法、装置、电子设备及计算机可读存储介质,用以解决现有技术存在的在数据备份时发生数据误删或误传的技术问题。
第一个方面,本申请提供了一种数据同步方法,包括:
获取最新数据版本,以及与最新数据版本对应的用户数据;
根据最新数据版本的更新类型,确定用户数据的数据路径并分类到数据文档中,数据文档包括第一数据文档和第二数据文档;
根据数据文档,将最新数据版本对应的用户数据更新到分布式文件系统中。
在第一个方面的某些实现方式中,获取最新数据版本的步骤,包括:
获取多个用户数据,根据用户数据对数据版本进行更新;
确定预设更新周期内最后更新的数据版本为最新数据版本。
结合第一个方面和上述实现方式,在第一个方面的某些实现方式中,更新类型包括增加数据和删除数据;确定用户数据的数据路径并分类到数据文档中,包括:
根据最新数据版本中各用户数据的更新类型,创建各用户数据对应的数据文档;
将用户数据的数据路径写入到与更新类型对应的数据文档中。
结合第一个方面和上述实现方式,在第一个方面的某些实现方式中,将用户数据的数据路径写入到与更新类型对应的数据文档中,包括:
当最新数据版本对应的用户数据的更新类型为增加数据时,确定用户数据对应的数据文档为第一数据文档,将用户数据的数据路径写入到第一数据文档中;
当最新数据版本对应的用户数据的更新类型为删除数据时,确定用户数据对应的数据文档为第二数据文档,将用户数据的数据路径写入到第二数据文档中。
结合第一个方面和上述实现方式,在第一个方面的某些实现方式中,根据数据文档,将最新数据版本对应的用户数据更新到分布式文件系统中,包括:
根据第一数据文档中的数据路径,将最新数据版本对应的用户数据增加到分布式文件系统中;
或者,根据第二数据文档中解析出数据路径,从分布式文件系统中删除最新数据版本对应的用户数据。
结合第一个方面和上述实现方式,在第一个方面的某些实现方式中,根据数据文档,将最新数据版本对应的用户数据更新到分布式文件系统中之后,还包括:将分布式文件系统中的数据的编辑权限修改为只读。
结合第一个方面和上述实现方式,在第一个方面的某些实现方式中,获取最新数据版本,以及与最新数据版本对应的用户数据的步骤之后,还包括:
响应于数据查询请求,返回以下数据中的至少一项:
与数据查询请求对应的用户数据、与用户数据对应的数据版本或与用户数据对应的数据路径。
第二个方面,本申请提供了一种数据同步装置,包括:
获取模块,用于获取最新数据版本,以及与最新数据版本对应的用户数据;
分类模块,用于根据最新数据版本的更新类型,确定用户数据的数据路径并分类到数据文档中,数据文档包括第一数据文档和第二数据文档;
同步模块,用于根据数据文档,将最新数据版本对应的用户数据更新到分布式文件系统中。
第三个方面,本申请提供了一种数据同步服务器,包括:
处理器;
存储器,与处理器电连接;
至少一个程序,被存储在存储器中并被配置为由处理器执行,至少一个程序被配置用于:实现如本申请第一个方面描述的数据同步方法。
第四个方面,本申请提供了一种计算机可读存储介质,计算机可读存储介质存储有至少一条指令、至少一段程序、代码集或指令集,至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行以实现如本申请第一个方面描述的数据同步方法。
本申请实施例提供的技术方案带来的有益技术效果是:
本申请提供的数据同步方法通过获取最新数据版本以及对应的用户数据,根据最新数据版本的更新类型,将用户数据的数据路径分类到数据文档中并分别将用户数据更新到分布式文件系统中,可在具有大量数据的环境下,通过管控数据版本,将数据备份到分布式文件系统,操作简单,易于上手,有利于提高数据单位时间上的吞吐量,根据数据版本的更新类型自动将用户数据的数据路径分类到不同的数据文档,能够有效防止数据误删或者传错目录的情况。
本申请附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本申请的实践了解到。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本申请实施例提供的一种数据同步系统的结构框架示意图;
图2为本申请实施例提供的一种数据同步方法的方法流程示意图;
图3为本申请实施例提供的获取最新数据版本的方法流程示意图;
图4为本申请实施例提供的确定用户数据的数据路径并分类到数据文档中的方法流程示意图;
图5为本申请实施例提供的一种数据同步装置的结构框架示意图;
图6为本申请一实例提供的用户数据更新备份的全流程示意图;
图7为本申请实施例提供的一种数据同步服务器的结构框架示意图。
具体实施方式
下面详细描述本申请,本申请的实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的部件或具有相同或类似功能的部件。此外,如果已知技术的详细描述对于示出的本申请的特征是不必要的,则将其省略。下面通过参考附图描述的实施例是示例性的,仅用于解释本申请,而不能解释为对本申请的限制。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本申请所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本申请的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
海量数据的数据备份是现在和将来的大数据时代十分必要的容灾手段,为避免在对广泛来源的数据备份时,由于操作过程繁琐,发生数据误删或误传的问题,本申请提供了一种解决方案。
本申请的实施例提供了一种数据同步系统,如图1所示,该数据同步系统包括终端、服务器和分布式文件系统。
终端既可以是个人电脑,也可以是其他服务器或者数据系统。本申请的实施例中提到的服务器能够用于执行本申请提供的数据同步方法,实现将数据备份条理清楚地更新到分布式文件系统的目的。在服务器上安装有SVN(subversion的缩写,一个开源的版本控制系统),通过SVN实现用户数据以及数据版本的有序管理。为配合服务器完成数据的有序管理,终端上也相应安装有SVN,以便于在终端快速及时地实现用户数据以及数据版本的更新。
本申请实施例提供的分布式文件系统是HDFS(Hadoop Distributed FileSystem,分布式文件系统),是指被设计成适合运行在通用硬件上的分布式文件系统,是一个具有高度容错性的系统,适合部署在廉价的计算设备上。HDFS能提供高吞吐量的数据访问,非常适合在大规模数据集上的应用。在HDFS中,一个文件一旦经过创建、写入、关闭后,一般就不需要修改了。这样简单的一致性分布式文件系统,有利于提高数据吞吐量,使开发人员能够方便快捷地通过HDFS来读取文件,并进行数据处理和数据清洗等操作。服务器将用户数据有序更新到HDFS中,能够有效实现稳定的数据容灾。
终端与服务器之间的通信连接,以及服务器与分布式文件系统之间的通信连接,包括有线连接和无线连接。例如,终端可以通过无线方式与服务器连接。无线连接方法可以包括下述至少一项:无线局域网、移动通信网络、NFC(Near Field Communication,近场通讯)连接、蓝牙连接。无线局域网可以是WiFi(Wireless Fidelity,无线保真)局域网等。移动通信网络可以是3G(3rd-Generation wireless telephone technology,第三代无线电话技术)网络或LTE(Long Term Evolution,长期演进)网络等。
本申请的实施例提供的数据同步系统中服务器主要用于执行一种数据同步方法,以解决现有技术存在的数据备份效率低,容易出错的技术问题,下面详细描述这一方法。
本申请第一个方面的实施例中提供了一种数据同步方法,如图2所示,包括如下步骤:
S100:获取最新数据版本,以及与最新数据版本对应的用户数据。
S200:根据最新数据版本的更新类型,确定用户数据的数据路径并分类到数据文档中,数据文档包括第一数据文档和第二数据文档。
S300:根据数据文档,将最新数据版本对应的用户数据更新到分布式文件系统中。
本申请提供的数据同步方法通过获取最新数据版本以及对应的用户数据,根据最新数据版本的更新类型,将用户数据的数据路径分类到数据文档中并分别将用户数据更新到分布式文件系统中,可在具有大量数据的环境下,通过管控数据版本,将数据备份到分布式文件系统,操作简单,易于上手,有利于提高数据单位时间上的吞吐量,根据数据版本的更新类型自动将用户数据的数据路径分类到不同的数据文档,能够有效防止数据误删或者传错目录的情况。
为执行S100,本申请实施例提供的服务器装设有SVN,通过SVN进行用户数据的收集,对应进行数据版本的更新。为了确保接下来进行数据处理的用户数据包含的内容最大化,在S100中,获取的是某一数据周期内包含数据内容最多、最充分的最新数据版本,以及与该最新数据版本对应的用户数据。用户数据可能来自于第一用户、第二用户和/或第三用户等等,也可能来自同一用户不同时刻、不同批次的用户数据。
可行的,在上述实施例的一种实现方式中,S100中获取最新数据版本的步骤,具体包括:
S110:获取多个用户数据,根据用户数据对数据版本进行更新。
S120:确定预设更新周期内最后更新的数据版本为最新数据版本。
通过服务器中SVN的SVN add文件夹,根据SVN的添加命令添加用户数据并实现数据版本的更新。服务器会在一定的预设更新周期内集中处理这些已经被更新的数据版本,通常预设更新周期根据服务器的硬件性能以及用户需求综合设定,例如预设更新周期为24小时,或者12小时等等。在预设更新周期内,最后更新的数据版本对应的用户数据最充分。举例而言,SVN中相关文件夹中获取到用户数据,就会对数据版本进行更新。在某一天当中,根据第一用户的用户数据更新的是版本A,根据第二用户的用户数据更新的是版本B,根据第三用户的用户数据更新的是版本C。从时间先后的顺序上来说,最后更新的版本C是最新版本,包括了版本A和版本B的内容,因此服务器获取到的是最新数据版本,即版本C。
可行的,在本申请实施例的另一种实现方式中,更新类型包括增加数据和删除数据。确定用户数据的数据路径并分类到数据文档中,如图4所示,具体包括如下步骤:
S210:根据最新数据版本中各用户数据的更新类型,创建各用户数据对应的数据文档。
S220:将用户数据的数据路径写入到与更新类型对应的数据文档中。
用户数据从操作类型上可以分为增加内容和减少内容两种,根据用户数据对数据版本进行更新,更新类型至少包括增加数据和删除数据两种。服务器根据获取到的最新数据版本以及与最新数据版本对应的用户数据之后,将用户数据中需要增加的部分和需要删除的部分进行区分,确定出用户数据中全部数据的数据路径。需要说明的是,数据路径是指数据存取路径,是数据在计算机系统中的存取位置。服务器中存储有用户数据,相应地,服务器中就存在着与用户数据相对应的数据路径。根据更新类型,将用户数据以及与用户数据对应的用户数据的数据路径分别写入到数据文档之中,为数据的清晰管理提供操作基础。
可行的,在上述实现方式的一种具体实施方式中,将用户数据的数据路径写入到与更新类型对应的数据文档中,包括:
当最新数据版本对应的用户数据的更新类型为增加数据时,确定用户数据对应的数据文档为第一数据文档,将用户数据的数据路径写入到第一数据文档中。
当最新数据版本对应的用户数据的更新类型为删除数据时,确定用户数据对应的数据文档为第二数据文档,将用户数据的数据路径写入到第二数据文档中。
更新类型包括增加数据和删除数据,第一数据文档收纳与增加数据相关的数据路径,第二数据文档收纳与删除数据相关的数据路径。当确定最新数据版本对应的用户数据的更新类型为增加数据时,也即用户数据或者用户数据中的某一项数据相对于之前数据版本的数据而言是存在新增内容的,则相应地,将该用户数据的数据路径写入到第一数据文档中。类似的,当确定用户数据或者用户数据中的某一项数据相对于之前数据版本的数据而言,是需要删除某些内容的,相应地,将该具有删减内容的用户数据的数据路径写入到第二数据文档中。
具体而言,上述过程可采用在服务器中执行SH(shell,壳)脚本,来分辨和截取增量的数据路径和删除的数据路径,并在第一数据文档和第二数据文档中写入上述两类数据路径。SH脚本与Windows/Dos下的批处理相似,也就是用各类命令预先放入到一个文件中,方便一次性执行的一个程序文件,比Windows下的批处理更强大,比用其他编程程序编辑的程序效率更高,因此能够高效率地进行用户数据的数据路径的分类和数据路径写入。
可行的,在上述实现方式的一种具体的实施方式中,S300:根据数据文档,将最新数据版本对应的用户数据更新到分布式文件系统中,具体则包括:
根据第一数据文档中的数据路径,将最新数据版本对应的用户数据增加到分布式文件系统中;
或者,根据第二数据文档中解析出数据路径,从分布式文件系统中删除最新数据版本对应的用户数据。
服务器对用户数据的数据路径进行分类并写入到不同的数据文档之后,需要将其上传到分布式文件系统中,也即上传到HDFS上,进行数据备份。服务器对能够对接的HDFS进行文件扫描,对已有用户数据和数据路劲进行匹配,然后服务器通过HDFS命令,根据第一数据文档中的数据路径对用户数据进行上传,或者根据第二数据文档中的数据路径执行删除用户数据的操作。
在计算机系统中存储有数据,无论是在服务器当中,还是在HDFS上,都包括有数据以及能够对应数据的数据路径。然而,由于分属于两个系统部分,服务器上的数据路径并不与HDFS上的数据路径相同,但由于服务器与HDFS能够连接并实现数据交流,服务器上的数据路径与HDFS上的数据路径存在关联关系,服务器上第一数据文档中的数据路径对应着HDFS上新增的用户数据的数据路径,第二数据文档中的数据路径对应着HDFS上删除的用户数据的数据路径。
可行的,在本申请的一种实现方式中,根据数据文档,将最新数据版本对应的用户数据更新到分布式文件系统中之后,还包括:将分布式文件系统中的数据的编辑权限修改为只读。
数据处理之后,将上传的数据在HDFS进行权限管理,服务器赋予这些更新上去的数据只读数据权限服务器获取到最新数据版本以及与最新数据版本对应的用户数据后,能够在服务器上对用户数据进行阅读和编辑,并相应得出最终的数据版本。而服务器一旦将用户数据按照第一数据文档和第二数据文档中的数据路径相应将数据更新到HDFS上之后,HDFS上的数据就只能阅读,不能进行编辑,防止数据误删或写入其他误传的数据,确保HDFS上备份的数据的安全性和稳定性。
可行的,在本申请实施例的一个具体实现方式中,S100:获取最新数据版本,以及与最新数据版本对应的用户数据的步骤之后,还包括:
响应于数据查询请求,返回以下数据中的至少一项:
与数据查询请求对应的用户数据、与用户数据对应的数据版本或与用户数据对应的数据路径。
服务器能够获取各个终端收集的用户数据以及对应的数据版本,相应地,也允许服务器根据获取到的数据查询请求,该数据查询请求可由服务器收取自与服务器连接的终端,服务器对数据查询请求进行回应,相应给出数据查询请求中要求的用户数据,或者要求的与用户数据对应的数据版本,甚至可只给出用户数据的数据路径。通过本实现方式,用户能够查阅到服务器上存储的不同版本的用户数据,在编辑权限允许的情况下,还能对用户数据进行编辑修改。
基于同一发明构思,本申请第二个方面提供一种数据同步装置10,如图5所示,包括获取模块11、分类模块12和同步模块13。
其中,获取模块11用于获取最新数据版本,以及与最新数据版本对应的用户数据。分类模块12用于根据最新数据版本的更新类型,确定用户数据的数据路径并分类到数据文档中,数据文档包括第一数据文档和第二数据文档。同步模块13用于根据数据文档,将最新数据版本对应的用户数据更新到分布式文件系统中。
本申请提供的数据同步装置根据最新数据版本的更新类型,将用户数据的数据路径分类到数据文档中并分别将用户数据更新到分布式文件系统中,可在具有大量数据的环境下,通过管控数据版本,将数据备份到分布式文件系统。便于用户操作,数据更新方便有条理,有利于根据数据版本的更新类型自动将用户数据的数据路径分类到不同的数据文档,有效防止数据误删或者传错目录的情况。
可行的,获取模块11获取最新数据版本的步骤,包括:获取多个用户数据,根据用户数据对数据版本进行更新。确定预设更新周期内最后更新的数据版本为最新数据版本。
可行的,在上述实施例的一个实现方式中,更新类型包括增加数据和删除数据。分类模块12确定用户数据的数据路径并分类到数据文档中,包括:根据最新数据版本中各用户数据的更新类型,创建各用户数据对应的数据文档。将用户数据的数据路径写入到与更新类型对应的数据文档中。
可行的,分类模块12将用户数据的数据路径写入到与更新类型对应的数据文档中,包括:当最新数据版本对应的用户数据的更新类型为增加数据时,确定用户数据对应的数据文档为第一数据文档,将用户数据的数据路径写入到第一数据文档中。当最新数据版本对应的用户数据的更新类型为删除数据时,确定用户数据对应的数据文档为第二数据文档,将用户数据的数据路径写入到第二数据文档中。
可行的,同步模块13根据数据文档,将最新数据版本对应的用户数据更新到分布式文件系统中,具体步骤包括:根据第一数据文档中的数据路径,将最新数据版本对应的用户数据增加到分布式文件系统中,或者,根据第二数据文档中解析出数据路径,从分布式文件系统中删除最新数据版本对应的用户数据。
可行的,同步模块13根据数据文档,将最新数据版本对应的用户数据更新到分布式文件系统中之后,还包括下列步骤:将分布式文件系统中的数据的编辑权限修改为只读。
可行的,获取模块11获取最新数据版本,以及与最新数据版本对应的用户数据的步骤之后,还包括:响应于数据查询请求,返回以下数据中的至少一项:与数据查询请求对应的用户数据、与用户数据对应的数据版本或与用户数据对应的数据路径。
为更方便地理解本申请提供的数据同步方法的运行原理,下面提供一种应用案例:
如图6所示,两个用户在工作过程中根据各自的需求,从各自的终端,即图中的第一终端和第二终端,产生了第一用户数据和第二用户数据,这些用户数据汇总到SVN中,由SVN进行数据版本管理,对原有的数据版本进行了更新。图6中虚线框内的内容是服务器囊括的内容。在一个以24小时为时长的预设更新周期期满时,SVN确定出其中包含用户数据最充分的数据版本,通过执行SH脚本,分别截取最新数据版本对应的用户数据中属于增量数据的数据路径,即增加数据内容的用户数据的数据路径,将其归于服务器创建的第一数据文档,截取最新数据版本对应的用户数据中属于删除数据的数据路径,即减少数据内容的用户数据的数据路径,将其归于服务器创建的第二数据文档。
上述执行内容可对应图6中“截取增量用户数据的数据路径并创建第一文档”,以及“截取减少用户数据的数据路径并创建第二文档”。完成上述的数据路径截取并分别归档之后,服务器读取完成之后的数据文档,解析文件内容,根据数据文档的种类,增量传输新的数据到HDFS,而如果是减少内容,则减少删除HDFS上对应的数据,使得HDFS上的数据得到更新。
本申请提供的实践案例中列举了第一终端和第二终端两个用户终端,而实际上不限于用户数量仅为两个。第一用户数据和第二用户数据经SVN更新为服务器中的新的数据版本后,用户能够经由必要的权限验证,直接访问服务器中存储的用户数据,也可访问HDFS中的数据。用户直接访问服务器中的数据,可根据权限对数据进行编辑修改,产生新的数据版本,而对于HDFS中的数据,用户只具备读取权限,不授予普通的用户修改的权限,防止数据失真和漏失。
基于同一发明构思,本申请实施例提供了一种数据同步服务器,该数据同步服务器,包括:存储器和处理器。
存储器与处理器电连接。
至少一个计算机程序,存储于存储器中,用于被处理器执行时,实现本申请实施例提供的任一数据同步方法/实现本申请实施例提供的数据同步方法的各种可选实施方式。本申请实施例提供的数据同步服务器可以作为本申请实施例提供的数据同步系统中的服务器。
本技术领域技术人员可以理解,本申请实施例提供的电子设备可以为所需的目的而专门设计和制造,或者也可以包括通用计算机中的已知设备。这些设备具有存储在其内的计算机程序,这些计算机程序选择性地激活或重构。这样的计算机程序可以被存储在设备(例如,计算机)可读介质中或者存储在适于存储电子指令并分别耦联到总线的任何类型的介质中。
与现有技术相比可实现:
本申请提供的数据同步服务器可在具有大量数据的环境下,通过管控数据版本,将数据备份到分布式文件系统。数据更新方便有条理,有利于根据数据版本的更新类型自动将用户数据的数据路径分类到不同的数据文档,有效防止数据误删或者传错目录的情况。
本申请在一个可选实施例中提供了一种电子设备,如图7所示,图7所示的电子设备1000包括:处理器1001和存储器1003。其中,处理器1001和存储器1003相电连接,如通过总线1002相连。
处理器1001可以是CPU(Central Processing Unit,中央处理器),通用处理器,DSP(Digital Signal Processor,数据信号处理器),ASIC(Application SpecificIntegrated Circuit,专用集成电路),FPGA(Field-Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器1001也可以是实现计算功能的组合,例如涉及一个或多个微处理器组合,DSP和微处理器的组合等。
总线1002可包括一通路,在上述组件之间传送信息。总线1002可以是PCI(Peripheral Component Interconnect,外设部件互连标准)总线或EISA(ExtendedIndustry Standard Architecture,扩展工业标准结构)总线等。总线1002可以分为地址总线、数据总线、控制总线等。为便于表示,图7中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
存储器1003可以是ROM(Read-Only Memory,只读存储器)或可存储静态信息和指令的其他类型的静态存储设备,RAM(random access memory,随机存取存储器)或者可存储信息和指令的其他类型的动态存储设备,也可以是EEPROM(Electrically ErasableProgrammable Read Only Memory,电可擦可编程只读存储器)、CD-ROM(Compact DiscRead-Only Memory,只读光盘)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。
可选地,电子设备1000还可以包括收发器1004。收发器1004可用于信号的接收和发送。收发器1004可以允许电子设备1000与其他设备进行无线或有线通信以交换数据。需要说明的是,实际应用中收发器1004不限于一个。
可选地,电子设备1000还可以包括输入单元1005。输入单元1005可用于接收输入的数字、字符、图像和/或声音信息,或者产生与电子设备1000的用户设置以及功能控制有关的键信号输入。输入单元1005可以包括但不限于触摸屏、物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆、拍摄装置、拾音器等中的一种或多种。
可选地,电子设备1000还可以包括输出单元1006。输出单元1006可用于输出或展示经过处理器1001处理的信息。输出单元1006可以包括但不限于显示装置、扬声器、振动装置等中的一种或多种。
虽然图7示出了具有各种装置的电子设备1000,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
可选的,存储器1003用于存储执行本申请方案的应用程序代码,并由处理器1001来控制执行。处理器1001用于执行存储器1003中存储的应用程序代码,以实现本申请实施例提供的任一种数据同步方法。
基于同一的发明构思,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该程序被处理器执行时实现本申请实施例所提供的任一数据同步方法/实现本申请实施例提供的数据同步方法的各种可选实施方式。
本申请实施例提供了一种计算机可读存储介质,与现有技术相比,数据更新和备份的执行更方便有条理,有利于根据数据版本的更新类型自动将用户数据的数据路径分类到不同的数据文档,有效防止数据误删或者传错目录的情况。
本技术领域技术人员可以理解,本申请中已经讨论过的各种操作、方法、流程中的步骤、措施、方案可以被交替、更改、组合或删除。进一步地,具有本申请中已经讨论过的各种操作、方法、流程中的其他步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。进一步地,现有技术中的具有与本申请中公开的各种操作、方法、流程中的步骤、措施、方案也可以被交替、更改、重排、分解、组合或删除。
术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本申请的描述中,除非另有说明,“多个”的含义是两个或两个以上。
在本申请的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通。对于本领域的普通技术人员而言,可以具体情况理解上述术语在本申请中的具体含义。
应该理解的是,虽然附图的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,其可以以其他的顺序执行。而且,附图的流程图中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,其执行顺序也不必然是依次进行,而是可以与其他步骤或者其他步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
以上所述仅是本申请的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (8)
1.一种数据同步方法,其特征在于,包括:
获取最新数据版本,以及与所述最新数据版本对应的用户数据;
根据所述最新数据版本的更新类型,确定所述用户数据的数据路径并分类到数据文档中,所述数据文档包括第一数据文档和第二数据文档;
根据所述数据文档,将所述最新数据版本对应的用户数据更新到分布式文件系统中;
所述根据所述最新数据版本的更新类型,确定所述用户数据的数据路径并分类到数据文档中,包括:
根据所述最新数据版本中各用户数据的更新类型,创建各用户数据对应的数据文档;
当所述最新数据版本对应的用户数据的更新类型为增加数据时,确定所述用户数据对应的数据文档为第一数据文档,将所述用户数据的数据路径写入到所述第一数据文档中;
当所述最新数据版本对应的用户数据的更新类型为删除数据时,确定所述用户数据对应的数据文档为第二数据文档,将所述用户数据的数据路径写入到所述第二数据文档中。
2.根据权利要求1所述的数据同步方法,其特征在于,所述获取最新数据版本的步骤,包括:
获取多个用户数据,根据所述用户数据对数据版本进行更新;
确定预设更新周期内最后更新的数据版本为最新数据版本。
3.根据权利要求1所述的数据同步方法,其特征在于,所述根据所述数据文档,将所述最新数据版本对应的用户数据更新到分布式文件系统中,包括:
根据所述第一数据文档中的所述数据路径,将所述最新数据版本对应的用户数据增加到所述分布式文件系统中;
或者,根据所述第二数据文档中解析出所述数据路径,从所述分布式文件系统中删除所述最新数据版本对应的用户数据。
4.根据权利要求1所述的数据同步方法,其特征在于,所述根据所述数据文档,将所述最新数据版本对应的用户数据更新到分布式文件系统中之后,还包括:将所述分布式文件系统中的数据的编辑权限修改为只读。
5.根据权利要求1所述的数据同步方法,其特征在于,所述获取最新数据版本,以及与所述最新数据版本对应的用户数据的步骤之后,还包括:
响应于数据查询请求,返回以下数据中的至少一项:
与所述数据查询请求对应的用户数据、与用户数据对应的数据版本或与用户数据对应的数据路径。
6.一种数据同步装置,其特征在于,包括:
获取模块,用于获取最新数据版本,以及与所述最新数据版本对应的用户数据;
分类模块,用于根据所述最新数据版本的更新类型,确定所述用户数据的数据路径并分类到数据文档中,所述数据文档包括第一数据文档和第二数据文档;
同步模块,用于根据所述数据文档,将所述最新数据版本对应的用户数据更新到分布式文件系统中;
所述分类模块具体用于根据所述最新数据版本中各用户数据的更新类型,创建各用户数据对应的数据文档;当所述最新数据版本对应的用户数据的更新类型为增加数据时,确定所述用户数据对应的数据文档为第一数据文档,将所述用户数据的数据路径写入到所述第一数据文档中;当所述最新数据版本对应的用户数据的更新类型为删除数据时,确定所述用户数据对应的数据文档为第二数据文档,将所述用户数据的数据路径写入到所述第二数据文档中。
7.一种数据同步服务器,其特征在于,包括:
处理器;
存储器,与所述处理器电连接;
至少一个程序,被存储在所述存储器中并被配置为由所述处理器执行,所述至少一个程序被配置用于:实现如权利要求1~5中任一项所述的数据同步方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如权利要求1~5中任一项所述的数据同步方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010291541.XA CN111522783B (zh) | 2020-04-14 | 2020-04-14 | 数据同步方法、装置、电子设备及计算机可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010291541.XA CN111522783B (zh) | 2020-04-14 | 2020-04-14 | 数据同步方法、装置、电子设备及计算机可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111522783A CN111522783A (zh) | 2020-08-11 |
CN111522783B true CN111522783B (zh) | 2023-11-24 |
Family
ID=71902686
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010291541.XA Active CN111522783B (zh) | 2020-04-14 | 2020-04-14 | 数据同步方法、装置、电子设备及计算机可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111522783B (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6510439B1 (en) * | 1999-08-06 | 2003-01-21 | Lucent Technologies Inc. | Method and system for consistent update and retrieval of document in a WWW server |
GB2445370A (en) * | 2005-04-14 | 2008-07-09 | Rajesh Kapur | Method for preserving access to deleted and overwritten documents by means of a system recycle bin |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9170990B2 (en) * | 2013-03-14 | 2015-10-27 | Workshare Limited | Method and system for document retrieval with selective document comparison |
GB2529436B (en) * | 2014-08-20 | 2016-05-18 | Ibm | Grouping file system events to perform continuous file system monitoring and backup |
US20160253352A1 (en) * | 2015-02-27 | 2016-09-01 | Barracuda Networks, Inc. | Method and apparatus for file synchronization and sharing with cloud storage |
RU2609081C2 (ru) * | 2015-06-29 | 2017-01-30 | Общество С Ограниченной Ответственностью "Яндекс" | Способ (варианты) и система (варианты) обработки документа в распределенной архитектуре |
-
2020
- 2020-04-14 CN CN202010291541.XA patent/CN111522783B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6510439B1 (en) * | 1999-08-06 | 2003-01-21 | Lucent Technologies Inc. | Method and system for consistent update and retrieval of document in a WWW server |
GB2445370A (en) * | 2005-04-14 | 2008-07-09 | Rajesh Kapur | Method for preserving access to deleted and overwritten documents by means of a system recycle bin |
Also Published As
Publication number | Publication date |
---|---|
CN111522783A (zh) | 2020-08-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112000741B (zh) | 内外网数据交换系统、方法、装置、计算机设备和介质 | |
US9864736B2 (en) | Information processing apparatus, control method, and recording medium | |
CN104246767A (zh) | 用于云同步系统的遥测系统 | |
CN112636992B (zh) | 一种动态路由方法、装置、设备及存储介质 | |
CN111737227B (zh) | 数据修改方法及系统 | |
CN116204438A (zh) | 测试用例生成方法、自动化测试方法和相关装置 | |
CN110955469A (zh) | 一种x86平台分布式批量调用联机交易的方法及装置 | |
CN112000630B (zh) | 一种日志存储方法、装置、设备及可读存储介质 | |
CN111522783B (zh) | 数据同步方法、装置、电子设备及计算机可读存储介质 | |
CN115098297B (zh) | 一种云原生存储数据卷的一致性快照生成方法和系统 | |
TWI571754B (zh) | 用來進行檔案同步控制之方法與裝置 | |
CN114297196A (zh) | 元数据存储方法、装置、电子设备及存储介质 | |
CN114254035A (zh) | 数据库系统、数据处理方法及设备 | |
CN112699129A (zh) | 一种数据处理系统、方法及装置 | |
CN112181722A (zh) | 一种数据备份及恢复方法、装置、设备及可读存储介质 | |
CN111930690A (zh) | 文件生成方法及装置 | |
CN111339100A (zh) | 数据核对方法及装置 | |
US20090241134A1 (en) | Remote storage service api | |
CN115604667B (zh) | 消息发送方法、装置、计算机设备和存储介质 | |
CN111753141B (zh) | 一种数据管理方法及相关设备 | |
CN112035103A (zh) | 一种代码生成方法、装置、服务器及介质 | |
CN117992274A (zh) | 非关系型数据库的数据恢复方法、装置、计算设备集群 | |
CN114461572A (zh) | 用于分布式文件系统的元数据采集方法及装置 | |
CN118093103A (zh) | 一种基于注解的多事务补偿方法与系统 | |
CN111949287A (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 | ||
GR01 | Patent grant |