CN113742426A - 一种数据同步方法、装置、设备、服务器及存储介质 - Google Patents
一种数据同步方法、装置、设备、服务器及存储介质 Download PDFInfo
- Publication number
- CN113742426A CN113742426A CN202111048209.1A CN202111048209A CN113742426A CN 113742426 A CN113742426 A CN 113742426A CN 202111048209 A CN202111048209 A CN 202111048209A CN 113742426 A CN113742426 A CN 113742426A
- Authority
- CN
- China
- Prior art keywords
- map data
- synchronization
- historical map
- data
- historical
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 59
- 238000012163 sequencing technique Methods 0.000 claims abstract description 21
- 230000001360 synchronised effect Effects 0.000 claims description 39
- 238000004590 computer program Methods 0.000 claims description 6
- 238000001914 filtration Methods 0.000 claims description 4
- 230000000977 initiatory effect Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 6
- 230000003287 optical effect Effects 0.000 description 3
- 238000010408 sweeping Methods 0.000 description 3
- 230000009286 beneficial effect Effects 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 239000000835 fiber Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000008707 rearrangement Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- 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/29—Geographical information databases
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)
- Computing Systems (AREA)
- Remote Sensing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种数据同步方法、装置、设备、服务器及存储介质。所述方法包括:从后台服务器中获取标识时间戳,所述标识时间戳为对最晚时间戳进行标识后得到,所述最晚时间戳为目标机器人最后一次进行地图数据同步的时间;对历史地图数据列表进行排序得到排序后的历史地图数据列表,排序后的历史地图数据列表中所包括的历史地图数据的生成时间晚于所述标识时间戳;重复的从所述排序后的历史地图数据列表中选取一条生成时间最早的历史地图数据,通过向所述后台服务器发送所述生成时间最早的历史地图数据,并根据从所述后台服务器获取的返回值实现地图数据同步。利用该方法,能够有效避免数据的重复同步。
Description
技术领域
本发明实施例涉及数据同步技术领域,尤其涉及一种数据同步方法、装置、设备、服务器及存储介质。
背景技术
扫地机器人已在日常生活中得到广泛的应用,机器人在运行过程中会生成越来越多的工作记录和地图数据,生成的地图数据只能存储于第三方平台且只能通过客户端应用软件间接的对地图数据进行同步。
现有技术在进行地图数据同步的时候会因为存在多个客户端应用软件都需要进行数据同步的情况,因此会存在地图数据重复同步的问题。
发明内容
本发明实施例提供了一种数据同步方法、装置、设备、服务器及存储介质,能够有效避免数据的重复同步。
第一方面,本发明实施例提供了一种数据同步方法,由客户端执行,包括:
从后台服务器中获取标识时间戳,所述标识时间戳为对最晚时间戳进行标识后得到,所述最晚时间戳为目标机器人最后一次进行地图数据同步的时间;
对历史地图数据列表进行排序得到排序后的历史地图数据列表,排序后的历史地图数据列表中所包括的历史地图数据的生成时间晚于所述标识时间戳;
重复的从所述排序后的历史地图数据列表中选取一条生成时间最早的历史地图数据,通过向所述后台服务器发送所述生成时间最早的历史地图数据,并根据从所述后台服务器获取的返回值实现地图数据同步,所述排序后的历史地图列表根据所述返回值进行更新,所述返回值包括所述后台服务器基于所述生成时间最早的历史地图数据得到的最后一个进行同步的历史地图数据对应的生成时间。
第二方面,本发明实施例还提供了一种数据同步方法,由后台服务器执行,包括:
对最晚时间戳进行标识得到标识时间戳;
重复的接收客户端设备发送的第一同步数据,通过向所述客户端设备发送返回值以实现地图数据同步,所述返回值根据所述第一同步数据确定,所述第一同步数据为从排序后的历史地图数据列表中选取的一条生成时间最早的历史地图数据,所述返回值为基于所述第一同步数据得到的最后一个进行同步的历史地图数据对应的生成时间;
其中,所述排序后的历史地图数据列表所对应的排序前的历史地图数据列表中所包括的历史地图数据的生成时间晚于所述标识时间戳。
第三方面,本发明实施例还提供了一种数据同步装置,配置于客户端设备,包括:
获取模块,用于从后台服务器中获取标识时间戳,所述标识时间戳为对最晚时间戳进行标识后得到,所述最晚时间戳为目标机器人最后一次进行地图数据同步的时间;
排序模块,用于对历史地图数据列表进行排序得到排序后的历史地图数据列表,排序后的历史地图数据列表中所包括的历史地图数据的生成时间晚于所述标识时间戳;
同步模块,用于重复的从所述排序后的历史地图数据列表中选取一条生成时间最早的历史地图数据,通过向所述后台服务器发送所述生成时间最早的历史地图数据,并根据从所述后台服务器获取的返回值实现地图数据同步,所述排序后的历史地图列表根据所述返回值进行更新,所述返回值包括所述后台服务器基于所述生成时间最早的历史地图数据得到的最后一个进行同步的历史地图数据对应的生成时间。
第四方面,本发明实施例还提供了一种数据同步装置,配置于后台服务器,包括:
生成模块,用于对最晚时间戳进行标识得到标识时间戳;
同步模块,用于重复的接收客户端设备发送的第一同步数据,通过向所述客户端设备发送返回值以实现地图数据同步,所述返回值根据所述第一同步数据确定,所述第一同步数据为从排序后的历史地图数据列表中选取的一条生成时间最早的历史地图数据,所述返回值为基于所述第一同步数据得到的最后一个进行同步的历史地图数据对应的生成时间;
其中,所述排序后的历史地图数据列表所对应的排序前的历史地图数据列表中所包括的历史地图数据的生成时间晚于所述标识时间戳。
第五方面,本发明实施例还提供了一种客户端设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器用于实现本发明任意实施例中所述的数据同步方法。
第五方面,本发明实施例还提供了一种后台服务器,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器用于实现本发明任意实施例中所述的数据同步方法。
第六方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现如本发明任意实施例所提供的数据同步方法。
本发明实施例提供了一种数据同步方法、装置、设备、服务器及存储介质,首先从后台服务器中获取标识时间戳,所述标识时间戳为对最晚时间戳进行标识后得到,所述最晚时间戳为目标机器人最后一次进行地图数据同步的时间;然后对所述最晚时间戳进行标识得到标识时间戳;然后对历史地图数据列表进行排序得到排序后的历史地图数据列表,排序后的历史地图数据列表中所包括的历史地图数据的生成时间晚于所述标识时间戳;最后重复的从所述排序后的历史地图数据列表中选取一条生成时间最早的历史地图数据,通过向所述后台服务器发送所述生成时间最早的历史地图数据,并根据从所述后台服务器获取的返回值实现地图数据同步,所述排序后的历史地图列表根据所述返回值进行更新,所述返回值包括所述后台服务器基于所述生成时间最早的历史地图数据得到的最后一个进行同步的历史地图数据对应的生成时间。利用上述技术方案,能够有效避免数据的重复同步。
附图说明
图1为本发明实施例一所提供的一种数据同步方法的流程示意图;
图2为本发明实施例二所提供的一种数据同步方法的流程示意图;
图3为本发明实施例三所提供的一种数据同步方法的示例流程图;
图4为本发明实施例四所提供的一种数据同步装置的结构示意图;
图5为本发明实施例五所提供的一种数据同步装置的结构示意图;
图6为本发明实施例六所提供的一种客户端设备的结构示意图;
图7为本发明实施例七所提供的一种后台服务器的结构示意图。
具体实施方式
下面将参照附图更详细地描述本发明的实施例。虽然附图中显示了本发明的某些实施例,然而应当理解的是,本发明可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本发明。应当理解的是,本发明的附图及实施例仅用于示例性作用,并非用于限制本发明的保护范围。
应当理解,本发明的方法实施方式中记载的各个步骤可以按照不同的顺序执行,和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本发明的范围在此方面不受限制。
本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
需要注意,本发明中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
需要注意,本发明中提及的“一个”、“多个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
本发明实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
实施例一
图1为本发明实施例一所提供的一种数据同步方法的流程示意图,该方法可适用于进行数据同步的情况,该方法可以由数据同步装置来执行,其中该装置可由软件和/或硬件实现,并一般集成在客户端设备上,在本实施例中客户端设备包括但不限于:计算机、平板电脑以及智能手机等,本实施例中的客户端设备可以为具有IOS系统和安卓系统的设备,需要进一步说明的是,本实施例中客户端设备的数量可以为多个。
如图1所示,本发明实施例一提供的一种数据同步方法,包括如下步骤:
S110、从后台服务器中获取标识时间戳,所述标识时间戳为对最晚时间戳进行标识后得到,所述最晚时间戳为目标机器人最后一次进行地图数据同步的时间。
其中,目标机器人可以为任意一个能够进行地图数据同步的机器人,目标机器人可以为具有任意功能的机器人,在本实施例中,目标机器人可以为扫地机器人。目标机器人如何进行地图数据同步为现有技术,此处不做赘述。其中,地图数据可以理解为目标机器人对应行驶的地图上的数据,目标机器人可以按照地图上的行走路线进行移动。
可选的,对客户端设备从后台服务器中获取标识时间戳的方式不做具体限制,示例性的,客户端设备从后台服务器中获取标识时间戳的方式可以为通过应用程序接口(Application Programming Interface,API)从后台服务器中获取标识时间戳。
进一步的,若后台服务器中没有生成标识时间戳即客户端设备无法获取到标识时间戳,则可以将标识时间戳设置为0。
S120、对历史地图数据列表进行排序得到排序后的历史地图数据列表,排序后的历史地图数据列表中所包括的历史地图数据的生成时间晚于所述标识时间戳。
其中,历史地图数据列表为从第三方平台获取的历史地图数据组成的列表。具体的,客户端设备可以从第三方平台中获取生成时间晚于标识时间戳的历史地图数据,由获取到的历史地图数据构成历史地图数据列表。
在本实施例中,对历史地图数据列表进行排序的具体方式可以为:将历史地图数据列表中包括的历史地图数据按照生成时间的先后顺序进行正序排列,得到排序后的历史地图数据列表。
具体的,对历史地图数据列表进行排序得到排序后的历史地图数据列表,包括:从第三方平台获取历史地图数据列表,所述历史地图数据列表中包括生成时间晚于所述标识时间戳的历史地图数据;将所述历史地图数据按照对应的生成时间进行正序排序,得到排序后的历史地图数据列表。
S130、重复的从所述排序后的历史地图数据列表中选取一条生成时间最早的历史地图数据,通过向所述后台服务器发送所述生成时间最早的历史地图数据,并根据从所述后台服务器中获取的返回值实现地图数据同步。
其中,排序后的历史地图列表根据所述返回值进行更新,所述返回值包括所述后台服务器基于所述生成时间最早的历史地图数据得到的最后一个进行同步的历史地图数据对应的生成时间。
在本实施例中,首先从排序后的历史地图数据列表中选取一条生成时间最早的历史地图数据,后台服务器可以基于该历史地图数据生成返回值,客户端根据该返回值可以选择生成时间晚于所述返回值的历史地图数据进行地图数据同步,并对排序后的历史地图数据列表进行过滤,筛选生成时间晚于所述返回值的历史地图数据得到更新后的历史地图数据列表,继续从该更新后的历史地图数据列表中选取生成时间最早的历史地图数据,并继续执行后续操作,如此循环,直到完成所有历史地图数据的同步。
具体的,所述重复的从所述排序后的历史地图数据列表中选取一条生成时间最早的历史地图数据,通过向所述后台服务器发送所述生成时间最早的历史地图数据,并根据从所述后台服务器获取的返回值实现地图数据同步,包括:从所述排序后的历史地图数据列表中选取一条生成时间最早的历史地图数据作为第一同步数据;向后台服务器发起地图数据同步请求;当所述后台服务器响应于所述地图数据同步请求后,将所述第一同步数据发送给所述后台服务器;从所述后台服务器获取返回值;将所述排序后的历史地图数据列表中生成时间早于所述返回值的历史地图数据进行过滤除去,得到更新后的历史地图数据列表;返回继续执行第一同步数据选取操作,直到更新后的历史地图数据列表中的所有历史地图数据全部同步完成。
需要说明的是,每进行一次选取操作后,都可以得到一个对应的更新后的历史地图数据,执行多少次选取操作相应的就会得到多少个对应的更新后的历史地图数据,每次得到的更新后的历史地图数据都是不同的。随着过滤次数的增加,每次得到的更新后的历史地图数据中包括的历史地图数据越来越少。
本发明实施例一提供的一种数据同步方法,首先从后台服务器中获取标识时间戳,所述标识时间戳为对最晚时间戳进行标识后得到,所述最晚时间戳为目标机器人最后一次进行地图数据同步的时间;然后对历史地图数据列表进行排序得到排序后的历史地图数据列表,排序后的历史地图数据列表中所包括的历史地图数据的生成时间晚于所述标识时间戳;最终重复的从所述排序后的历史地图数据列表中选取一条生成时间最早的历史地图数据,通过向所述后台服务器发送所述生成时间最早的历史地图数据,并根据从所述后台服务器获取的返回值实现地图数据同步,所述排序后的历史地图列表根据所述返回值进行更新,所述返回值包括所述后台服务器基于所述生成时间最早的历史地图数据得到的最后一个进行同步的历史地图数据对应的生成时间。利用上述方法,能够有效避免数据的重复同步。
实施例二
图2为本发明实施例二所提供的一种数据同步方法的流程示意图,该方法可适用于进行数据同步的情况,该方法可以由数据同步装置来执行,其中该装置可由软件和/或硬件实现,并一般集成在后台服务器中。
如图2所示,本发明实施例二提供的一种数据同步方法,包括如下步骤:
S210、对最晚时间戳进行标识得到标识时间戳。
在本实施例中,不限制采取何种方式对最晚时间戳进行标识,标识的目的是将最晚时间戳打上标记,用于标识客户端设备已同步的最后一条地图数据对应的生成时间。
S220、重复的接收客户端设备发送的第一同步数据,通过向所述客户端设备发送返回值以实现地图数据同步,所述返回值根据所述第一同步数据确定,所述第一同步数据为从排序后的历史地图数据列表中选取的一条生成时间最早的历史地图数据,所述返回值为基于所述第一同步数据得到的最后一个进行同步的历史地图数据对应的生成时间。
其中,所述排序后的历史地图数据列表所对应的排序前的历史地图数据列表中所包括的历史地图数据的生成时间晚于所述标识时间戳。
在本实施例中,接收到客户端设备发送的第一同步数据后,可以基于所述第一同步数据确定返回值,并将返回值发送给客户端,以使客户端可以根据返回值选择生成时间早于所述返回值的历史地图数据进行地图数据同步。
具体的,重复的接收客户端设备发送的第一同步数据,通过向所述客户端设备发送返回值,以实现地图数据同步,包括:接收所述客户端设备发送的第一同步数据;确定是否需要对所述第一同步数据进行保存;从保存在所述后台服务器中的历史地图数据中查询出最后一个进行同步的历史地图数据,作为最晚同步地图数据;将所述最晚同步地图数据对应的生成时间作为返回值返回给客户端设备,以使所述客户端设备根据所述返回值进行数据同步;返回继续执行第一同步数据接收操作,直到更新后的历史地图数据列表中的所有历史地图数据全部同步完成。
在本实施例中,后台服务器可以重复接收客户端设备发送的历史地图数据,每次接收后都可以返回一个返回值给客户端,以协助客户端对排序后的历史地图数据列表中包括的所有历史地图数据进行同步。
其中,确定是否需要对所述第一同步数据进行保存方式可以为:根据第一同步数据在历史时间内是否已完成同步确定是否需要对第一同步数据进行保存。其中,历史时间可以理解为早于当前时间的时间。
进一步的,所述确定是否需要对所述第一同步数据进行保存,包括:查询所述第一同步数据在历史时间内是否已完成同步;若是,则将所述第一同步数据不进行保存;若否,则将所述第一同步数据进行保存。
在本实施例中,确定是否需要对第一同步数据进行保存可以使得对保存成功的历史地图数据不再重复进行保存,从而可以避免地图数据的重复同步。
本发明实施例二提供的一种数据同步方法,首先对最晚时间戳进行标识得到标识时间戳;然后重复的接收客户端设备发送的第一同步数据,通过向所述客户端设备发送返回值以实现地图数据同步,所述返回值根据第一同步时间确定,所述第一同步数据为从排序后的历史地图数据列表中选取的一条生成时间最早的历史地图数据,所述返回值为基于所述第一同步数据得到的最后一个进行同步的历史地图数据对应的生成时间;其中,所述排序后的历史地图数据列表所对应的排序前的历史地图数据列表中所包括的历史地图数据的生成时间晚于所述标识时间戳。该方法通过在后台服务器中对最晚时间戳进行标识,可以有效避免历史地图数据的重复同步。
实施例三
图3为本发明实施例三所提供的一种数据同步方法的示例流程图,如图3所示,数据同步方法的具体实施步骤如下:
步骤1、客户端设备调用后台服务器提供的API接口,查看具体的某个扫地机器人即目标机器人最后同步的历史地图数据生成的时间戳即最晚时间戳。
步骤2、客户端设备向第三方平台拉取生成时间晚于最晚时间戳的历史地图数据列表。
步骤3、客户端设备将拉取到的历史地图数据列表按照生成时间正序排列,得到排序后的历史地图数据。
步骤4、客户端设备从排序后历史地图数据中选择一条生成时间最早的历史地图数据即第一同步数据,向调用后台服务器提供的同步API,进行地图数据同步。
步骤5、后台服务器接收到客户端设备发起的同步请求后,首先查询该历史地图数据是否已同步过,若已同步,则不对该历史地图数据进行保存;若该历史地图数据未同步过,则保存该历史地图数据。
步骤6、后台服务器查询最后同步的一条历史地图数据,并将该历史地图数据的生成时间作为返回值返回给客户端设备。
步骤7、客户端设备接收到同步历史地图数据的API的返回值,根据返回值过滤掉步骤2中的地图数据列表中的生成时间早于该返回值的历史地图数据。
步骤8、返回重新执行步骤4,循环往复,直到完成所有历史滴入数据的同步。
本发明实施例三所提供的一种数据同步方法,通过在各后台服务器中对最晚时间戳进行标识得到标识时间戳,使得客户端设备每次同步数据时只需从第三方平台拉取生成时间晚于标识时间戳的历史地图数据进行同步,因此可以减少需要进行数据同步的数据的数量。此外,通过后台服务器对同步的每一条历史地图数据进行校验,对已保存的历史地图数据不再进行保存,可以有效避免历史地图数据的重复同步。
实施例四
图4为本发明实施例四所提供的一种数据同步装置的结构示意图,该装置可适用于进行数据同步的情况,其中该装置可由软件和/或硬件实现,并一般集成在客户端设备上。
如图4所示,该装置包括:获取模块410、排序模块420以及同步模块430。
获取模块410,用于从后台服务器中获取标识时间戳,所述标识时间戳为对最晚时间戳进行标识后得到,所述最晚时间戳为目标机器人最后一次进行地图数据同步的时间;
排序模块420,用于对历史地图数据列表进行排序得到排序后的历史地图数据列表,排序后的历史地图数据列表中所包括的历史地图数据的生成时间晚于所述标识时间戳;
同步模块430,用于重复的从所述排序后的历史地图数据列表中选取一条生成时间最早的历史地图数据,通过向所述后台服务器发送所述生成时间最早的历史地图数据,并根据从所述后台服务器获取的返回值实现地图数据同步,所述排序后的历史地图列表根据所述返回值进行更新,所述返回值包括所述后台服务器基于所述生成时间最早的历史地图数据得到的最后一个进行同步的历史地图数据对应的生成时间。
在本实施例中,该装置首先通过获取模块410从后台服务器中获取标识时间戳,所述标识时间戳为对最晚时间戳进行标识后得到,所述最晚时间戳为目标机器人最后一次进行地图数据同步的时间;然后通过排序模块420对历史地图数据列表进行排序得到排序后的历史地图数据列表,排序后的历史地图数据列表中所包括的历史地图数据的生成时间晚于所述标识时间戳;最后通过同步模块430重复的从所述排序后的历史地图数据列表中选取一条生成时间最早的历史地图数据,通过向所述后台服务器发送所述生成时间最早的历史地图数据,并根据从所述后台服务器获取的返回值实现地图数据同步,所述排序后的历史地图列表根据所述返回值进行更新,所述返回值包括所述后台服务器基于所述生成时间最早的历史地图数据得到的最后一个进行同步的历史地图数据对应的生成时间。
本实施例提供了一种数据同步装置,能够有效避免数据的重复同步。
进一步的,排序模块420具体用于:从第三方平台获取历史地图数据列表,所述历史地图数据列表中包括生成时间晚于所述标识时间戳的历史地图数据;将所述历史地图数据按照对应的生成时间进行正序排序,得到排序后的历史地图数据列表。
进一步的,同步模块430具体用于:从所述排序后的历史地图数据列表中选取一条生成时间最早的历史地图数据作为第一同步数据;向后台服务器发起地图数据同步请求;当所述后台服务器响应于所述地图数据同步请求后,将所述第一同步数据发送给所述后台服务器;从所述后台服务器获取返回值,所述返回值为所述后台服务器基于所述第一同步数据得到的最后一个进行同步的历史地图数据对应的生成时间;将所述排序后的历史地图数据列表中生成时间早于所述返回值的历史地图数据进行过滤,得到更新后的历史地图数据列表;返回继续执行第一同步数据选取操作,直到更新后的历史地图数据列表中的所有历史地图数据全部同步完成。
上述数据同步装置可执行本发明任意实施例所提供的数据同步方法,具备执行方法相应的功能模块和有益效果。
实施例五
图5为本发明实施例五所提供的一种数据同步装置的结构示意图,该装置可适用于进行数据同步的情况,其中该装置可由软件和/或硬件实现,并一般集成在客户端设备上。
如图5所示,该装置包括:生成模块510以及同步模块520。
生成模块510,用于对最晚时间戳进行标识得到标识时间戳;
同步模块520,用于重复的接收客户端设备发送的第一同步数据,通过向所述客户端设备发送返回值以实现地图数据同步,所述返回值根据所述第一同步数据确定,所述第一同步数据为从排序后的历史地图数据列表中选取的一条生成时间最早的历史地图数据,所述返回值为基于所述第一同步数据得到的最后一个进行同步的历史地图数据对应的生成时间;其中,所述排序后的历史地图数据列表所对应的排序前的历史地图数据列表中所包括的历史地图数据的生成时间晚于所述标识时间戳。
在本实施例中,该装置首先通过生成模块510对最晚时间戳进行标识得到标识时间戳,然后通过同步模块520重复的接收客户端设备发送的第一同步数据,通过向所述客户端设备发送返回值以实现地图数据同步,所述返回值根据所述第一同步数据确定,所述第一同步数据为从排序后的历史地图数据列表中选取的一条生成时间最早的历史地图数据,所述返回值为基于所述第一同步数据得到的最后一个进行同步的历史地图数据对应的生成时间;其中,所述排序后的历史地图数据列表所对应的排序前的历史地图数据列表中所包括的历史地图数据的生成时间晚于所述标识时间戳。
本实施例提供了一种数据同步装置,能够有效避免数据的重复同步。
进一步的,同步模块520具体用于:接收所述客户端设备发送的第一同步数据;确定是否需要对所述第一同步数据进行保存;从保存在所述后台服务器中的历史地图数据中查询出最后一个进行同步的历史地图数据,作为最晚同步地图数据;将所述最晚同步地图数据对应的生成时间作为返回值返回给客户端设备,以使所述客户端设备根据所述返回值进行数据同步;返回继续执行第一同步数据接收操作,直到更新后的历史地图数据列表中的所有历史地图数据全部同步完成。
进一步的,所述确定是否需要对所述第一同步数据进行保存,包括:查询所述第一同步数据在历史时间内是否已完成同步;若是,则将所述第一同步数据不进行保存;若否,则将所述第一同步数据进行保存。
上述数据同步装置可执行本发明任意实施例所提供的数据同步方法,具备执行方法相应的功能模块和有益效果。
实施例六
图6为本发明实施例六所提供的一种客户端设备的结构示意图。如图6所示,本发明实施例六提供的客户端设备包括:一个或多个处理器61和存储装置62;该客户端设备中的处理器61可以是一个或多个,图6中以一个处理器61为例;存储装置62用于存储一个或多个程序;所述一个或多个程序被所述一个或多个处理器61执行,使得所述一个或多个处理器61实现如本发明实施例中任一项所述的数据同步方法。
所述客户端设备还可以包括:输入装置63和输出装置64。
客户端设备中的处理器61、存储装置62、输入装置63和输出装置64可以通过总线或其他方式连接,图6中以通过总线连接为例。
该客户端设备中的存储装置62作为一种计算机可读存储介质,可用于存储一个或多个程序,所述程序可以是软件程序、计算机可执行程序以及模块,如本发明实施例一所提供的数据同步方法对应的程序指令/模块(例如,附图4所示的数据同步装置中的模块,包括:获取模块410、排序模块420以及同步模块430)。处理器61通过运行存储在存储装置62中的软件程序、指令以及模块,从而执行客户端设备的各种功能应用以及数据处理,即实现上述方法实施例中的数据同步方法。
存储装置62可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据客户端设备的使用所创建的数据等。此外,存储装置62可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储装置62可进一步包括相对于处理器61远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置63可用于接收输入的数字或字符信息,以及产生与客户端设备的用户设置以及功能控制有关的键信号输入。输出装置64可包括显示屏等显示设备。
并且,当上述客户端设备所包括一个或者多个程序被所述一个或者多个处理器61执行时,程序进行如下操作:
从后台服务器中获取标识时间戳,所述标识时间戳为对最晚时间戳进行标识后得到,所述最晚时间戳为目标机器人最后一次进行地图数据同步的时间;
对历史地图数据列表进行排序得到排序后的历史地图数据列表,排序后的历史地图数据列表中所包括的历史地图数据的生成时间晚于所述标识时间戳;
重复的从所述排序后的历史地图数据列表中选取一条生成时间最早的历史地图数据,通过向所述后台服务器发送所述生成时间最早的历史地图数据,并根据从所述后台服务器获取的返回值实现地图数据同步,所述排序后的历史地图列表根据所述返回值进行更新,所述返回值包括所述后台服务器基于所述生成时间最早的历史地图数据得到的最后一个进行同步的历史地图数据对应的生成时间。
实施例七
图7为本发明实施例七所提供的一种后台服务器的结构示意图。如图7所示,本发明实施例七提供的后台服务器包括:一个或多个处理器71和存储装置72;该后台服务器中的处理器71可以是一个或多个,图7中以一个处理器71为例;存储装置72用于存储一个或多个程序;所述一个或多个程序被所述一个或多个处理器71执行,使得所述一个或多个处理器71实现如本发明实施例中任一项所述的数据同步方法。
所述后台服务器还可以包括:输入装置73和输出装置74。
后台服务器中的处理器71、存储装置72、输入装置73和输出装置74可以通过总线或其他方式连接,图7中以通过总线连接为例。
该后台服务器中的存储装置72作为一种计算机可读存储介质,可用于存储一个或多个程序,所述程序可以是软件程序、计算机可执行程序以及模块,如本发明实施例二所提供的数据同步方法对应的程序指令/模块(例如,附图5所示的数据同步装置中的模块,包括:生成模块610以及同步模块620)。处理器71通过运行存储在存储装置72中的软件程序、指令以及模块,从而执行后台服务器的各种功能应用以及数据处理,即实现上述方法实施例中的数据同步方法。
存储装置72可包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序;存储数据区可存储根据后台服务器的使用所创建的数据等。此外,存储装置72可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实例中,存储装置72可进一步包括相对于处理器71远程设置的存储器,这些远程存储器可以通过网络连接至设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
输入装置73可用于接收输入的数字或字符信息,以及产生与后台服务器的用户设置以及功能控制有关的键信号输入。输出装置74可包括显示屏等显示设备。
并且,当上述后台服务器所包括一个或者多个程序被所述一个或者多个处理器71执行时,程序进行如下操作:
对最晚时间戳进行标识得到标识时间戳;
重复的接收客户端设备发送的第一同步数据,通过向所述客户端设备发送返回值以实现地图数据同步,所述返回值根据所述第一同步数据确定,所述第一同步数据为从排序后的历史地图数据列表中选取的一条生成时间最早的历史地图数据,所述返回值为基于所述第一同步数据得到的最后一个进行同步的历史地图数据对应的生成时间;
其中,所述排序后的历史地图数据列表所对应的排序前的历史地图数据列表中所包括的历史地图数据的生成时间晚于所述标识时间戳。
实施例八
本发明实施例八提供了一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时用于执行数据同步方法。
如应用于客户端设备的方法,该方法包括:
从后台服务器中获取标识时间戳,所述标识时间戳为对最晚时间戳进行标识后得到,所述最晚时间戳为目标机器人最后一次进行地图数据同步的时间;
对历史地图数据列表进行排序得到排序后的历史地图数据列表,排序后的历史地图数据列表中所包括的历史地图数据的生成时间晚于所述标识时间戳;
重复的从所述排序后的历史地图数据列表中选取一条生成时间最早的历史地图数据,通过向所述后台服务器发送所述生成时间最早的历史地图数据,并根据从所述后台服务器获取的返回值实现地图数据同步,所述排序后的历史地图列表根据所述返回值进行更新,所述返回值包括所述后台服务器基于所述生成时间最早的历史地图数据得到的最后一个进行同步的历史地图数据对应的生成时间。
如应用于后台服务器的方法,该方法包括:
对最晚时间戳进行标识得到标识时间戳;
重复的接收客户端设备发送的第一同步数据,通过向所述客户端设备发送返回值以实现地图数据同步,所述返回值根据所述第一同步数据确定,所述第一同步数据为从排序后的历史地图数据列表中选取的一条生成时间最早的历史地图数据,所述返回值为基于所述第一同步数据得到的最后一个进行同步的历史地图数据对应的生成时间;
其中,所述排序后的历史地图数据列表所对应的排序前的历史地图数据列表中所包括的历史地图数据的生成时间晚于所述标识时间戳。
可选的,该程序被处理器执行时还可以用于执行本发明任意实施例所提供的数据同步方法。
本发明实施例的计算机存储介质,可以采用一个或多个计算机可读的介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如可以是,但不限于,电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机存取存储器(Random Access Memory,RAM)、只读存储器(Read Only Memory,ROM)、可擦式可编程只读存储器(ErasableProgrammable Read Only Memory,EPROM)、闪存、光纤、便携式CD-ROM、光存储器件、磁存储器件、或者上述的任意合适的组合。计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于:电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、无线电频率(Radio Frequency,RF)等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言或其组合来编写用于执行本发明操作的计算机程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。
Claims (11)
1.一种数据同步方法,其特征在于,由客户端设备执行,所述方法包括:
从后台服务器中获取标识时间戳,所述标识时间戳为对最晚时间戳进行标识后得到,所述最晚时间戳为目标机器人最后一次进行地图数据同步的时间;
对历史地图数据列表进行排序得到排序后的历史地图数据列表,排序后的历史地图数据列表中所包括的历史地图数据的生成时间晚于所述标识时间戳;
重复的从所述排序后的历史地图数据列表中选取一条生成时间最早的历史地图数据,通过向所述后台服务器发送所述生成时间最早的历史地图数据,并根据从所述后台服务器获取的返回值实现地图数据同步,所述排序后的历史地图列表根据所述返回值进行更新,所述返回值包括所述后台服务器基于所述生成时间最早的历史地图数据得到的最后一个进行同步的历史地图数据对应的生成时间。
2.根据权利要求1所述的方法,其特征在于,对历史地图数据列表进行排序得到排序后的历史地图数据列表,包括:
从第三方平台获取历史地图数据列表,所述历史地图数据列表中包括生成时间晚于所述标识时间戳的历史地图数据;
将所述历史地图数据按照对应的生成时间进行正序排序,得到排序后的历史地图数据列表。
3.根据权利要求1所述的方法,其特征在于,所述重复的从所述排序后的历史地图数据列表中选取一条生成时间最早的历史地图数据,通过向所述后台服务器发送所述生成时间最早的历史地图数据,并根据从所述后台服务器中获取的返回值实现地图数据同步,包括:
从所述排序后的历史地图数据列表中选取一条生成时间最早的历史地图数据作为第一同步数据;
向后台服务器发起地图数据同步请求;
当所述后台服务器响应于所述地图数据同步请求后,将所述第一同步数据发送给所述后台服务器;
从所述后台服务器获取返回值;
将所述排序后的历史地图数据列表中生成时间早于所述返回值的历史地图数据进行过滤,得到更新后的历史地图数据列表;
返回继续执行第一同步数据选取操作,直到更新后的历史地图数据列表中的所有历史地图数据全部同步完成。
4.一种数据同步方法,其特征在于,由后台服务器执行,所述方法包括:
对最晚时间戳进行标识得到标识时间戳;
重复的接收客户端设备发送的第一同步数据,通过向所述客户端设备发送返回值以实现地图数据同步,所述返回值根据所述第一同步数据确定,所述第一同步数据为从排序后的历史地图数据列表中选取的一条生成时间最早的历史地图数据,所述返回值为基于所述第一同步数据得到的最后一个进行同步的历史地图数据对应的生成时间;
其中,所述排序后的历史地图数据列表所对应的排序前的历史地图数据列表中所包括的历史地图数据的生成时间晚于所述标识时间戳。
5.根据权利要求4所述的方法,其特征在于,重复的接收客户端设备发送的第一同步数据,通过向所述客户端设备发送返回值,以实现地图数据同步,包括:
接收所述客户端设备发送的第一同步数据;
确定是否需要对所述第一同步数据进行保存;
从保存在所述后台服务器中的历史地图数据中查询出最后一个进行同步的历史地图数据,作为最晚同步地图数据;
将所述最晚同步地图数据对应的生成时间作为返回值返回给客户端设备,以使所述客户端设备根据所述返回值进行数据同步;
返回继续执行第一同步数据接收操作,直到更新后的历史地图数据列表中的所有历史地图数据全部同步完成。
6.根据权利要求5所述的方法,其特征在于,所述确定是否需要对所述第一同步数据进行保存,包括:
查询所述第一同步数据在历史时间内是否已完成同步;
若是,则将所述第一同步数据不进行保存;
若否,则将所述第一同步数据进行保存。
7.一种数据同步装置,其特征在于,配置于客户端设备,所述装置包括:
获取模块,用于从后台服务器中获取标识时间戳,所述标识时间戳为对最晚时间戳进行标识后得到,所述最晚时间戳为目标机器人最后一次进行地图数据同步的时间;
排序模块,用于对历史地图数据列表进行排序得到排序后的历史地图数据列表,排序后的历史地图数据列表中所包括的历史地图数据的生成时间晚于所述标识时间戳;
同步模块,用于重复的从所述排序后的历史地图数据列表中选取一条生成时间最早的历史地图数据,通过向所述后台服务器发送所述生成时间最早的历史地图数据,并根据从所述后台服务器获取的返回值实现地图数据同步,所述排序后的历史地图列表根据所述返回值进行更新,所述返回值包括所述后台服务器基于所述生成时间最早的历史地图数据得到的最后一个进行同步的历史地图数据对应的生成时间。
8.一种数据同步装置,其特征在于,配置于后台服务器,所述装置包括:
生成模块,用于对最晚时间戳进行标识得到标识时间戳;
同步模块,用于重复的接收客户端设备发送的第一同步数据,通过向所述客户端设备发送返回值以实现地图数据同步,所述返回值根据所述第一同步数据确定,所述第一同步数据为从排序后的历史地图数据列表中选取的一条生成时间最早的历史地图数据,所述返回值为基于所述第一同步数据得到的最后一个进行同步的历史地图数据对应的生成时间;
其中,所述排序后的历史地图数据列表所对应的排序前的历史地图数据列表中所包括的历史地图数据的生成时间晚于所述标识时间戳。
9.一种客户端设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器用于执行权利要求1-3任一项所述的数据同步方法。
10.一种后台服务器,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序;
所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器用于执行权利要求4-6任一项所述的数据同步方法。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1-6任一项所述的数据同步方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111048209.1A CN113742426A (zh) | 2021-09-08 | 2021-09-08 | 一种数据同步方法、装置、设备、服务器及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111048209.1A CN113742426A (zh) | 2021-09-08 | 2021-09-08 | 一种数据同步方法、装置、设备、服务器及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113742426A true CN113742426A (zh) | 2021-12-03 |
Family
ID=78736937
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111048209.1A Pending CN113742426A (zh) | 2021-09-08 | 2021-09-08 | 一种数据同步方法、装置、设备、服务器及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113742426A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116170448A (zh) * | 2023-04-20 | 2023-05-26 | 河北先见软件科技股份有限公司 | 一种跨组织的数据共享的方法和存储介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100100590A1 (en) * | 2008-10-21 | 2010-04-22 | Palay Andrew J | Always ready client/server data synchronization |
CN107370803A (zh) * | 2017-07-11 | 2017-11-21 | 福建省天奕网络科技有限公司 | 一种数据同步的方法及终端 |
CN108536752A (zh) * | 2018-03-13 | 2018-09-14 | 北京信安世纪科技有限公司 | 一种数据同步方法、装置和设备 |
WO2018219178A1 (zh) * | 2017-05-27 | 2018-12-06 | Oppo广东移动通信有限公司 | 数据同步方法、装置、服务器及存储介质 |
CN111245548A (zh) * | 2020-01-14 | 2020-06-05 | 平安国际智慧城市科技股份有限公司 | 基于时间戳的数据同步方法、装置和计算机设备 |
CN111309747A (zh) * | 2020-02-18 | 2020-06-19 | 京东数字科技控股有限公司 | 数据同步方法、系统和装置 |
-
2021
- 2021-09-08 CN CN202111048209.1A patent/CN113742426A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100100590A1 (en) * | 2008-10-21 | 2010-04-22 | Palay Andrew J | Always ready client/server data synchronization |
WO2018219178A1 (zh) * | 2017-05-27 | 2018-12-06 | Oppo广东移动通信有限公司 | 数据同步方法、装置、服务器及存储介质 |
CN107370803A (zh) * | 2017-07-11 | 2017-11-21 | 福建省天奕网络科技有限公司 | 一种数据同步的方法及终端 |
CN108536752A (zh) * | 2018-03-13 | 2018-09-14 | 北京信安世纪科技有限公司 | 一种数据同步方法、装置和设备 |
CN111245548A (zh) * | 2020-01-14 | 2020-06-05 | 平安国际智慧城市科技股份有限公司 | 基于时间戳的数据同步方法、装置和计算机设备 |
CN111309747A (zh) * | 2020-02-18 | 2020-06-19 | 京东数字科技控股有限公司 | 数据同步方法、系统和装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116170448A (zh) * | 2023-04-20 | 2023-05-26 | 河北先见软件科技股份有限公司 | 一种跨组织的数据共享的方法和存储介质 |
CN116170448B (zh) * | 2023-04-20 | 2023-07-18 | 河北先见软件科技股份有限公司 | 一种跨组织的数据共享的方法和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110708237A (zh) | 消息交互方法、装置、可读介质及电子设备 | |
US9680719B2 (en) | Communication system, client terminal, and server | |
CN111858518A (zh) | 一种引用文档的更新方法、装置、电子设备及存储介质 | |
CN105786839A (zh) | 一种应用数据获取方法及装置 | |
CN109408481B (zh) | 日志采集规则的更新方法、装置、电子设备及可读介质 | |
CN112015816A (zh) | 数据同步方法、装置、介质及电子设备 | |
CN111309747A (zh) | 数据同步方法、系统和装置 | |
CN110795446A (zh) | 榜单更新方法、装置、可读介质和电子设备 | |
CN110413367B (zh) | 任务创建方法、装置、存储介质及电子设备 | |
CN104079623A (zh) | 多级云存储同步控制方法及系统 | |
CN113760488A (zh) | 调度任务的方法、装置、设备和计算机可读介质 | |
CN110336592B (zh) | 适用蓝牙读卡器的数据传输方法、电子设备及存储介质 | |
CN113742426A (zh) | 一种数据同步方法、装置、设备、服务器及存储介质 | |
CN108696554B (zh) | 负载均衡方法和装置 | |
CN111639059A (zh) | 日志信息的存储及定位方法、电子设备及存储介质 | |
CN108021688B (zh) | 一种数据处理方法及装置 | |
CN111324470A (zh) | 用于生成信息的方法及装置 | |
CN111161072A (zh) | 基于区块链的随机数生成方法、设备及存储介质 | |
CN115082038A (zh) | 系统集成方法、装置及电子设备 | |
CN105677331A (zh) | 一种任务执行方法和装置 | |
CN114253924A (zh) | 一种同步方法、设备和存储介质 | |
CN115328506A (zh) | 应用程序包生成方法、加载方法、装置、介质及设备 | |
CN114035861A (zh) | 集群配置方法、装置、电子设备和计算机可读介质 | |
CN114139731A (zh) | 纵向联邦学习建模优化方法、设备、介质及程序产品 | |
CN113420400A (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 |