CN110019262B - 数据更新方法及装置 - Google Patents

数据更新方法及装置 Download PDF

Info

Publication number
CN110019262B
CN110019262B CN201710935709.4A CN201710935709A CN110019262B CN 110019262 B CN110019262 B CN 110019262B CN 201710935709 A CN201710935709 A CN 201710935709A CN 110019262 B CN110019262 B CN 110019262B
Authority
CN
China
Prior art keywords
user data
distributed processing
updated
preset
preset memory
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
CN201710935709.4A
Other languages
English (en)
Other versions
CN110019262A (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.)
Beijing Gridsum Technology Co Ltd
Original Assignee
Beijing Gridsum Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Gridsum Technology Co Ltd filed Critical Beijing Gridsum Technology Co Ltd
Priority to CN201710935709.4A priority Critical patent/CN110019262B/zh
Publication of CN110019262A publication Critical patent/CN110019262A/zh
Application granted granted Critical
Publication of CN110019262B publication Critical patent/CN110019262B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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

Abstract

本发明公开了一种数据更新方法及装置。其中,该方法包括:获取历史用户数据并存储于当前处理任务的分布式处理设备的预设内存中,其中,历史用户数据为访问网站的历史过程中产生的用户数据;判断是否需要更新预设内存中的历史用户数据;若判断出需要更新预设内存中的历史用户数据,将需更新的用户数据更新至对应的预设内存中,得到当前用户数据;在所有分布式处理设备都完成处理任务后,将每个分布式处理设备对应的预设内存中的当前用户数据更新至预设数据库中。本发明解决了相关技术中在更新数据时由于数据处理设备的多样性导致数据更新效率低,数据无法准确更新的技术问题。

Description

数据更新方法及装置
技术领域
本发明涉及数据处理技术领域,具体而言,涉及一种数据更新方法及装置。
背景技术
相关技术中,对于用户的访问日志数据需要进行分析处理,而在对数据库中的数据进行更新时,一般采用即时更新策略,即如果有新的数据产生(如用户的访问时间产生变化),就会立即对数据库中存储的数据进行更新(如更新数据库中的用户ID对应的访问时间)。但是,这种更新方案对于有多个数据处理器同时更新同一个数据库时,会出现对数据库中的内容频繁反复的更新,这样会与程序发生错误的情况,会导致重复执行错误,尤其是在数据库更新后,若需要将数据库恢复至原始状态,这样会导致原来正确更新数据的处理装置也要重新执行,数据处理的效率低,并且数据库中的数据被反复改变,导致无需利用原始数据的处理设备也无法调取数据,会导致数据处理出现错误,无法准确更新数据。
针对上述相关技术中在更新数据时由于数据处理设备的多样性导致数据更新效率低,数据无法准确更新的技术问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种数据更新方法及装置,以至少解决相关技术中在更新数据时由于数据处理设备的多样性导致数据更新效率低,数据无法准确更新的技术问题。
根据本发明实施例的一个方面,提供了一种数据更新方法,包括:获取历史用户数据并存储于当前处理任务的分布式处理设备的预设内存中,其中,所述历史用户数据为访问网站的历史过程中产生的用户数据,所述历史用户数据预先存储在预设数据库中,所述预设数据库对应有多个分布式处理设备;判断是否需要更新所述预设内存中的历史用户数据;若判断出需要更新所述预设内存中的历史用户数据,将需更新的用户数据更新至对应的所述预设内存中,得到当前用户数据;在所有分布式处理设备都完成处理任务后,将每个所述分布式处理设备对应的预设内存中的所述当前用户数据更新至所述预设数据库中。
进一步地,在将需更新的用户数据更新至对应的所述预设内存中之后,包括:分别判断所述多个分布式处理设备中的每个分布式处理设备的运行程序是否出现异常;若所述多个分布式处理设备中存在分布式处理设备的运行程序异常,将出现异常的分布式处理设备作为目标分布式处理设备;删除所述目标分布式处理设备对应的预设内存中的所述当前用户数据;对所述目标分布式处理设备对应的预设内存重新加载所述预设数据库中存储的所述历史用户数据。
进一步地,在对所述目标分布式处理设备对应的预设内存重新加载所述预设数据库中存储的所述历史用户数据之后,包括:重新判断是否需要更新所述预设内存中的所述历史用户数据;若判断出需要更新所述预设内存中的所述历史用户数据,将需更新的用户数据更新至对应的所述预设内存中,得到当前用户数据。
进一步地,在分别判断所述多个分布式处理设备中的每个分布式处理设备的运行程序是否出现异常之后,还包括:若判断出所述多个分布式处理设备中的任一分布式处理设备的运行程序正常执行,则在所述运行程序执行完成后,发送预设通知信息,其中,所述预设通知消息用于告知与该分布式处理设备并行执行的其它所述分布式处理设备成功完成处理任务;在所述运行程序执行完成的情况下,监听其它所述分布式处理设备的执行状态。
进一步地,所述用户数据包括下述至少之一:用户标识、用户当前访问时间、累计访问次数。
根据本发明实施例的另一方面,还提供了一种数据更新装置,包括:获取单元,用于获取历史用户数据并存储于当前处理任务的分布式处理设备的预设内存中,其中,所述历史用户数据为访问网站的历史过程中产生的用户数据,所述历史用户数据预先存储在预设数据库中,所述预设数据库对应有多个分布式处理设备;判断单元,用于判断是否需要更新所述预设内存中的历史用户数据;第一更新单元,用于若判断出需要更新所述预设内存中的历史用户数据,将需更新的用户数据更新至对应的所述预设内存中,得到当前用户数据;第二更新单元,用于在所有分布式处理设备都完成处理任务后,将每个所述分布式处理设备对应的预设内存中的所述当前用户数据更新至所述预设数据库中。
进一步地,包括:判断模块,用于在将需更新的用户数据更新至对应的所述预设内存中之后,分别判断所述多个分布式处理设备中的每个分布式处理设备的运行程序是否出现异常;确定模块,用于若所述多个分布式处理设备中存在分布式处理设备的运行程序异常,将出现异常的分布式处理设备作为目标分布式处理设备;删除模块,用于删除所述目标分布式处理设备对应的预设内存中的所述当前用户数据;重新加载模块,用于对所述目标分布式处理设备对应的预设内存重新加载所述预设数据库中存储的所述历史用户数据。
进一步地,包括:重新判断模块,用于在对所述目标分布式处理设备对应的预设内存重新加载所述预设数据库中存储的所述历史用户数据之后,重新判断是否需要更新所述预设内存中的所述历史用户数据;更新模块,用于若判断出需要更新所述预设内存中的所述历史用户数据,将需更新的用户数据更新至对应的所述预设内存中,得到当前用户数据。
根据本发明实施例的另一方面,还提供了一种存储介质,其上存储有程序,所述程序执行上述任一项所述的数据更新方法。
根据本发明实施例的另一方面,还提供了一种处理器,所述处理器用于运行程序,所述程序运行时执行上述任一项所述的数据更新方法。
在本发明实施例中,可以先获取历史用户数据,该历史用户数据为访问网站的历史过程中产生的用户数据,然后可以将历史用户数据存储于当前处理任务的分布式处理设备的预设内存中,之后,可以判断是否需要更新预设内存中的历史用户数据,并在判断出需要更新预设内存中的历史用户数据后,将需更新的用户数据更新至预设内存中,在所有分布式处理设备都完成处理任务后,将每个分布式处理设备对应的预设内存中的当前用户数据更新至预设数据库中。在该实施例中,将数据库中的数据读取到分布式处理设备的预设内存中,这样在分布式处理设备处理任务时,不会对数据库中的数据进行修改,保证了分布式处理设备发生异常处理任务时,重新到预设数据库中读取历史用户数据,进而解决相关技术中在更新数据时由于数据处理设备的多样性导致数据更新效率低,数据无法准确更新的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的数据更新方法的流程图;
图2是根据本发明实施例的数据更新装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
为便于用户理解本发明,下面对本发明的实施例中的涉及的部分术语或者名称做出如下解释:
分布式数据库:数据库连接各个计算机,每台计算机可以单独放置,并将数据库中的数据拷贝一份,或者部分拷贝副本,并具有自己局部的数据库,位于不同地点的许多计算机通过网络互相连接,共同组成一个完整的、全局的逻辑上集中、物理上分布的大型数据库。在数据库存储的数据可以存储历史用户数据,在计算机使用时将数据库中存储的历史用户数据拷贝到计算机中,并在发生异常时,重新从数据库中读取历史用户数据。
URL,统一资源定位符,是对可以从互联网上得到的资源的位置和访问方法的一种简洁的表示,是互联网上标准资源的地址。互联网上的每个文件都有一个唯一的URL,它包含的信息指出文件的位置以及浏览器应该如何处理。
根据本发明实施例,提供了一种数据更新的方法实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
以下实施例可以应用于分布式处理设备中,多个分布式处理终端、PC等设备可以与同一个数据库连接,在提取数据时,从数据库中提取出存储的数据,以进行后续的分析使用。其中,本发明中的分布式处理设备可以包括但不限于:移动终端、PC。在数据库中存储的数据不做具体限定,可以是用户根据实际情况自行设置需要存储的数据,本发明中的下述实施例中涉及的数据为用户访问网站的数据,在访问网站过程中会相应产生访问用户的IP地址、URL、访问请求对应的网页、加载返回结果的速度、加载返回结果的开始时间和结束时间等信息,通过分析调用可以将数据库存储的数据提取并进行相关处理。在本发明中的各个计算机的处理任务可以为用户启动设备后的所做出的各种操作,分布式处理设备根据该操作采用相应的处理进程进行处理,例如,用户启动终端中的微信app进行聊天操作,分布式处理设备需要调用数据库中存储的数据以进行聊天数据显示,或者打开百度浏览器进行网页点击后,可以根据百度浏览器的点击操作调用数据库中存储的网页信息,并返回至分布式处理设备中。
下面采用优选的实施步骤对本发明做出说明,图1是根据本发明实施例的数据更新方法的流程图,如图1所示,该方法包括如下步骤:
步骤S102,获取历史用户数据并存储于当前处理任务的分布式处理设备的预设内存中,其中,历史用户数据为访问网站的历史过程中产生的用户数据,历史用户数据预先存储在预设数据库中,预设数据库对应有多个分布式处理设备。
其中,上述的历史用户数据可以是指存储在数据库中的数据,该数据可以是用户在历史过程中访问网站后,存储的用户发送访问请求中携带的信息以及反馈访问请求的反馈结果的用户数据,其中,访问请求中携带的信息可以包括但不限于:用户访问IP地址、用户标识、发送访问请求的时间、使用的访问浏览器、访问的网页等,而返回访问请求的反馈结果中可以包括但不限于:加载返回结果的状态码、加载返回结果的开始时间和结束时间、URL等,并且在数据库还需要存储用户当前访问时间和累计访问次数。其中,本发明中的数据库可以重点记录的用户数据包括下述至少之一:用户标识、用户当前访问时间、累计访问次数,该用户标识可以为记录的用户的ID,本发明中可以为每个用户建立单独的数据表,用户在访问网站时可以进行注册,在注册时会输入用户的相关基础信息(包括用户的姓名、学历等信息)和登录密码等,然后数据库可以为该用户分配一个新用户ID(例如,用户001、用户002);而对于用户当前访问时间,可以是在用户登录网站时或者发送访问请求时的访问时间,例如,用户当前访问时间为11:30:23;对于累计访问次数,可以理解为记录每次发送访问请求后记录的访问网站的次数,例如,累计访问次数为20次,用户在每次登陆网站或者发送访问网页的请求时,可以记录访问请求中携带的用户ID,若数据库中没有存储该用户的相关信息,则可以为该用户建立一个新的用户ID。
上述历史用户数据可以是指在当前发送处理请求任务之前的时间段中存储的数据,例如,在数据库存储用户002,用户访问时间为2016-10-2,10:20:20,累计访问次数为10次等。
通过上述步骤可以将数据库存储的数据放置在分布式处理设备的预设内存中,之后进行的任务处理和更新数据的操作可以是在分布式处理设备中进行的操作,分布式处理设备在处理任务或者更新数据时可以对预设内存中存储的数据进行相关操作,无需通过数据库进行操作,这样可以保证数据库中存储的数据不会被改变,在更新数据时只需要对预设内存中的数据进行更新,无需改变数据库中的数据。由于相关技术中,存在多个分布式处理设备同时对数据库中的数据进行修改,在发生处理异常需要获取历史用户数据时,会存在数据已经修改无法获取到历史用户数据的情况,这样会导致分布式处理设备无法正常处理任务,本发明中可以将数据读取到分布式处理设备的内存中,并不会通过数据库的数据来处理任务,这样不会对数据库中的数据进行修改,保证数据的完整性。
本发明中的多个分布式处理设备可以对应一个预设数据库,数据库中会存储多个用户对应的历史用户数据,在分布式处理设备需要处理任务时,可以将数据库中相应用户的数据读取出来,以放置到预设内存中。
步骤S104,判断是否需要更新预设内存中的历史用户数据。
该步骤中,可以是对需要更新的用户数据进行判断处理,例如,在有新的用户访问网站时,可以为该用户分配一个用户ID,并记录其当前访问的具体时间和累计访问次数为1,或者在历史用户数据中更新该用户最新的访问时间,并增加其累计访问次数1。
步骤S106,若判断出需要更新预设内存中的历史用户数据,将需更新的用户数据更新至对应的预设内存中,得到当前用户数据。
上述步骤中,是在需要更新用户数据时,确定当前用户数据,该当前用户数据相对于历史用户数据可以理解为产生变化的数据,即需要更新用户数据。
另外,在将需更新的用户数据更新至对应的预设内存中之后,包括:分别判断多个分布式处理设备中的每个分布式处理设备的运行程序是否出现异常;若多个分布式处理设备中存在分布式处理设备的运行程序异常,将出现异常的分布式处理设备作为目标分布式处理设备;删除目标分布式处理设备对应的预设内存中的当前用户数据;对目标分布式处理设备对应的预设内存重新加载预设数据库中存储的历史用户数据。
其中,在对目标分布式处理设备对应的预设内存重新加载预设数据库中存储的历史用户数据之后,包括:重新判断是否需要更新预设内存中的历史用户数据;若判断出需要更新预设内存中的历史用户数据,将需更新的用户数据更新至对应的预设内存中,得到当前用户数据。
对于分布式处理设备异常处理任务的情况,需要删除预设内存中保存的数据,并重新到预设数据库中获取到历史用户数据,以进行新的任务处理,本发明中在预设数据库中可以保存用户访问网站的历史用户数据,其并不会在分布式处理设备处理任务产生改变,只有在全部的分布式处理设备处理完任务后,才可以将信息更新到预设数据库中,在分布式处理设备处理完成任务之前,不能改变数据库中的历史用户数据,以在有分布式处理设备发生处理任务异常时,可以从数据库中读取历史用户数据。
对于上述实施例,在分别判断多个分布式处理设备中的每个分布式处理设备的运行程序是否出现异常之后,还包括:若判断出多个分布式处理设备中的任一分布式处理设备的运行程序正常执行,则在运行程序执行完成后,发送预设通知信息,其中,预设通知消息用于告知与该分布式处理设备并行执行的其它分布式处理设备成功完成处理任务;在运行程序执行完成的情况下,监听其它分布式处理设备的执行状态。
即可以在分布式处理设备中的任一设备处理完成后,可以将完成任务的消息发送至其他处理设备中,并监控其他设备是否完成,以在全部设备都完成处理任务后,将每个分布式处理设备中的数据更新至数据库中,从而将数据库中保存的多个用户的数据进行更新。
步骤S108,在所有分布式处理设备都完成处理任务后,将每个分布式处理设备对应的预设内存中的当前用户数据更新至预设数据库中。
通过上述步骤,可以先获取历史用户数据,该历史用户数据为访问网站的历史过程中产生的用户数据,历史用户数据预先存储在预设数据库中,预设数据库对应有多个分布式处理设备,然后可以将历史用户数据存储于当前处理任务的分布式处理设备的预设内存中,之后,可以判断是否需要更新预设内存中的历史用户数据,并在判断出需要更新预设内存中的历史用户数据后,将需更新的用户数据更新至预设内存中,在所有分布式处理设备都完成处理任务后,将每个分布式处理设备对应的预设内存中的当前用户数据更新至预设数据库中。在该实施例中,将数据库中的数据读取到分布式处理设备的预设内存中,这样在分布式处理设备处理任务时,不会对数据库中的数据进行修改,保证了分布式处理设备发生异常处理任务时,重新到预设数据库中读取历史用户数据,进而解决相关技术中在更新数据时由于数据处理设备的多样性导致数据更新效率低,数据无法准确更新的技术问题。
下面是根据本发明的优选的实施方式。
该实施例可以相对于相关技术中需要跟踪用户的连续访问行为,实现方案是将用户id,最近访问时间,累计访问次数存储在数据库中,当程序处理时,先去数据库里查看是否存在该用户,如果不存在就向数据库中添加一条新用户记录,包括(用户id,当前访问时间,累计访问次数);如果存在,就更新当前访问时间,累计访问次数累加1。在相关技术中,需要实时更新数据库中的数据,就是说处理到该用户就即时更新数据库,这样会在程序出现异常重跑时出现问题,重试时可能部分用户的信息已经更新到数据库中了,就会出现反复更新的问题。尤其是分布式处理数据时,由于数据库是公用的,而执行时往往是数十台机子一起并发执行,往往是某几台出现问题需要重跑,如果对数据库进行了更新,那么重跑时必须恢复数据库状态,这时正确执行的那几台也必须要重新执行了,因为他们之前对数据库的更新都被删除了,导致更新数据库和处理任务的效率低。
另外,在处理用户信息时直接从数据库获取,然后更新也是直接对数据库进行操作的,一旦出现错误由于数据库已经混乱了,所以必须恢复到原来的状态。本发明中可以改善该方式,具体方案如下:
11、某台机子处理用户访问信息前,从数据库获取所有用户的信息,缓存在本地内存中,后面交互不再通过数据库。
12、在处理用户信息时,若需要对数据库进行更新,如添加新用户访问信息或者更新老用户状态信息,对内存中的用户信息进行更新,而不是直接更新数据库。
13、若程序中间出现异常,那么就将内存中的用户信息丢弃,然后重新去数据库里面获取用户信息。然后重新执行11-13。
14、若程序执行正常,则通知集群里的其他机子,本机任务已成功完成,并监听其他机子的执行状态。待所有机子均正常完成任务后,再统一将各自内存里的用户信息刷新到数据库中。
通过上述实施例,如果某台设备在处理任务出现错误,由于数据库始终状态没变,只需要重新去数据库读取数据即可,其他成功完成任务的设备就不需要重复执行了,只有出现错误的设备需要重试,极大提升了效率,避免数据库状态不一致导致不必要的设备重跑任务。
图2是根据本发明实施例的数据更新装置的示意图,如图2所示,该装置可以包括:获取单元21,用于获取历史用户数据并存储于当前处理任务的分布式处理设备的预设内存中,其中,历史用户数据为访问网站的历史过程中产生的用户数据,历史用户数据预先存储在预设数据库中,预设数据库对应有多个分布式处理设备;判断单元23,用于判断是否需要更新预设内存中的历史用户数据;第一更新单元25,用于若判断出需要更新预设内存中的历史用户数据,将需更新的用户数据更新至对应的预设内存中,得到当前用户数据;第二更新单元27,用于在所有分布式处理设备都完成处理任务后,将每个分布式处理设备对应的预设内存中的当前用户数据更新至预设数据库中。
通过上述实施例,可以通过获取单元21先获取历史用户数据,该历史用户数据为访问网站的历史过程中产生的用户数据,历史用户数据预先存储在预设数据库中,预设数据库对应有多个分布式处理设备,然后可以将历史用户数据存储于当前处理任务的分布式处理设备的预设内存中,之后,可以通过判断单元23判断是否需要更新预设内存中的历史用户数据,并通过第一更新单元25在判断出需要更新预设内存中的历史用户数据后,将需更新的用户数据更新至预设内存中,通过第二更新单元27在所有分布式处理设备都完成处理任务后,将每个分布式处理设备对应的预设内存中的当前用户数据更新至预设数据库中。在该实施例中,将数据库中的数据读取到分布式处理设备的预设内存中,这样在分布式处理设备处理任务时,不会对数据库中的数据进行修改,保证了分布式处理设备发生异常处理任务时,重新到预设数据库中读取历史用户数据,进而解决相关技术中在更新数据时由于数据处理设备的多样性导致数据更新效率低,数据无法准确更新的技术问题。
其中,上述装置还可以包括:判断模块,用于在将需更新的用户数据更新至对应的预设内存中之后,分别判断多个分布式处理设备中的每个分布式处理设备的运行程序是否出现异常;确定模块,用于若多个分布式处理设备中存在分布式处理设备的运行程序异常,将出现异常的分布式处理设备作为目标分布式处理设备;删除模块,用于删除目标分布式处理设备对应的预设内存中的当前用户数据;重新加载模块,用于对目标分布式处理设备对应的预设内存重新加载预设数据库中存储的历史用户数据。
另外,上述装置还可以包括:重新判断模块,用于在对目标分布式处理设备对应的预设内存重新加载预设数据库中存储的历史用户数据之后,重新判断是否需要更新预设内存中的历史用户数据;更新模块,用于若判断出需要更新预设内存中的历史用户数据,将需更新的用户数据更新至对应的预设内存中,得到当前用户数据。
上述的数据更新装置还可以包括处理器和存储器,上述获取单元21、判断单元23、第一更新单元25、第二更新单元27等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来对多个分布式处理设备中的数据进行更新,达到避免数据库状态不一致导致不必要的设备重跑。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
根据本发明实施例的另一方面,还提供了一种存储介质,其上存储有程序,程序执行上述任一项的数据更新方法。
根据本发明实施例的另一方面,还提供了一种处理器,处理器用于运行程序,程序运行时执行上述任一项的数据更新方法。
本发明实施例提供了一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现以下步骤:获取历史用户数据并存储于当前处理任务的分布式处理设备的预设内存中,其中,历史用户数据为访问网站的历史过程中产生的用户数据,历史用户数据预先存储在预设数据库中,预设数据库对应有多个分布式处理设备;判断是否需要更新预设内存中的历史用户数据;若判断出需要更新预设内存中的历史用户数据,将需更新的用户数据更新至对应的预设内存中,得到当前用户数据;在所有分布式处理设备都完成处理任务后,将每个分布式处理设备对应的预设内存中的当前用户数据更新至预设数据库中。
可选地,上述处理器执行程序时,还可以分别判断多个分布式处理设备中的每个分布式处理设备的运行程序是否出现异常;若多个分布式处理设备中存在分布式处理设备的运行程序异常,将出现异常的分布式处理设备作为目标分布式处理设备;删除目标分布式处理设备对应的预设内存中的当前用户数据;对目标分布式处理设备对应的预设内存重新加载预设数据库中存储的历史用户数据。
可选地,上述处理器执行程序时,还可以重新判断是否需要更新预设内存中的历史用户数据;若判断出需要更新预设内存中的历史用户数据,将需更新的用户数据更新至对应的预设内存中,得到当前用户数据。
可选地,上述处理器执行程序时,还可以在判断出多个分布式处理设备中的任一分布式处理设备的运行程序正常执行,则在运行程序执行完成后,发送预设通知信息,其中,预设通知消息用于告知与该分布式处理设备并行执行的其它分布式处理设备成功完成处理任务;在运行程序执行完成的情况下,监听其它分布式处理设备的执行状态。
可选的,用户数据包括下述至少之一:用户标识、用户当前访问时间、累计访问次数。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序:获取历史用户数据并存储于当前处理任务的分布式处理设备的预设内存中,其中,历史用户数据为访问网站的历史过程中产生的用户数据,历史用户数据预先存储在预设数据库中,预设数据库对应有多个分布式处理设备;判断是否需要更新预设内存中的历史用户数据;若判断出需要更新预设内存中的历史用户数据,将需更新的用户数据更新至对应的预设内存中,得到当前用户数据;在所有分布式处理设备都完成处理任务后,将每个分布式处理设备对应的预设内存中的当前用户数据更新至预设数据库中。
可选地,上述计算机程序产品执行程序时,还可以分别判断多个分布式处理设备中的每个分布式处理设备的运行程序是否出现异常;若多个分布式处理设备中存在分布式处理设备的运行程序异常,将出现异常的分布式处理设备作为目标分布式处理设备;删除目标分布式处理设备对应的预设内存中的当前用户数据;对目标分布式处理设备对应的预设内存重新加载预设数据库中存储的历史用户数据。
可选地,上述计算机程序产品执行程序时,还可以重新判断是否需要更新预设内存中的历史用户数据;若判断出需要更新预设内存中的历史用户数据,将需更新的用户数据更新至对应的预设内存中,得到当前用户数据。
可选地,上述计算机程序产品执行程序时,还可以在判断出多个分布式处理设备中的任一分布式处理设备的运行程序正常执行,则在运行程序执行完成后,发送预设通知信息,其中,预设通知消息用于告知与该分布式处理设备并行执行的其它分布式处理设备成功完成处理任务;在运行程序执行完成的情况下,监听其它分布式处理设备的执行状态。
可选的,用户数据包括下述至少之一:用户标识、用户当前访问时间、累计访问次数。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (7)

1.一种数据更新方法,其特征在于,包括:
获取历史用户数据并存储于当前处理任务的分布式处理设备的预设内存中,其中,所述历史用户数据为访问网站的历史过程中产生的用户数据,所述历史用户数据预先存储在预设数据库中,所述预设数据库对应有多个分布式处理设备;
判断是否需要更新所述预设内存中的历史用户数据;
若判断出需要更新所述预设内存中的历史用户数据,将需更新的用户数据更新至对应的所述预设内存中,得到当前用户数据;
在所有分布式处理设备都完成处理任务后,将每个所述分布式处理设备对应的预设内存中的所述当前用户数据更新至所述预设数据库中;
在将需更新的用户数据更新至对应的所述预设内存中之后,分别判断所述多个分布式处理设备中的每个分布式处理设备的运行程序是否出现异常;若所述多个分布式处理设备中存在分布式处理设备的运行程序异常,将出现异常的分布式处理设备作为目标分布式处理设备;删除所述目标分布式处理设备对应的预设内存中的所述当前用户数据;对所述目标分布式处理设备对应的预设内存重新加载所述预设数据库中存储的所述历史用户数据;
在分别判断所述多个分布式处理设备中的每个分布式处理设备的运行程序是否出现异常之后,还包括:若判断出所述多个分布式处理设备中的任一分布式处理设备的运行程序正常执行,则在所述运行程序执行完成后,发送预设通知信息,其中,所述预设通知信 息用于告知与该分布式处理设备并行执行的其它所述分布式处理设备成功完成处理任务;在所述运行程序执行完成的情况下,监听其它所述分布式处理设备的执行状态。
2.根据权利要求1所述的方法,其特征在于,在对所述目标分布式处理设备对应的预设内存重新加载所述预设数据库中存储的所述历史用户数据之后,包括:重新判断是否需要更新所述预设内存中的所述历史用户数据;若判断出需要更新所述预设内存中的所述历史用户数据,将需更新的用户数据更新至对应的所述预设内存中,得到当前用户数据。
3.根据权利要求1所述的方法,其特征在于,所述用户数据包括下述至少之一:用户标识、用户当前访问时间、累计访问次数。
4.一种数据更新装置,其特征在于,包括:
获取单元,用于获取历史用户数据并存储于当前处理任务的分布式处理设备的预设内存中,其中,所述历史用户数据为访问网站的历史过程中产生的用户数据,所述历史用户数据预先存储在预设数据库中,所述预设数据库对应有多个分布式处理设备;
判断单元,用于判断是否需要更新所述预设内存中的历史用户数据;
第一更新单元,用于若判断出需要更新所述预设内存中的历史用户数据,将需更新的用户数据更新至对应的所述预设内存中,得到当前用户数据;
第二更新单元,用于在所有分布式处理设备都完成处理任务后,将每个所述分布式处理设备对应的预设内存中的所述当前用户数据更新至所述预设数据库中;
判断模块,用于在将需更新的用户数据更新至对应的所述预设内存中之后,分别判断所述多个分布式处理设备中的每个分布式处理设备的运行程序是否出现异常;
确定模块,用于若所述多个分布式处理设备中存在分布式处理设备的运行程序异常,将出现异常的分布式处理设备作为目标分布式处理设备;
删除模块,用于删除所述目标分布式处理设备对应的预设内存中的所述当前用户数据;
重新加载模块,用于对所述目标分布式处理设备对应的预设内存重新加载所述预设数据库中存储的所述历史用户数据;
所述装置还用于在分别判断所述多个分布式处理设备中的每个分布式处理设备的运行程序是否出现异常之后,若判断出所述多个分布式处理设备中的任一分布式处理设备的运行程序正常执行,则在所述运行程序执行完成后,发送预设通知信息,其中,所述预设通知信 息用于告知与该分布式处理设备并行执行的其它所述分布式处理设备成功完成处理任务;在所述运行程序执行完成的情况下,监听其它所述分布式处理设备的执行状态。
5.根据权利要求4所述的装置,其特征在于,包括:重新判断模块,用于在对所述目标分布式处理设备对应的预设内存重新加载所述预设数据库中存储的所述历史用户数据之后,重新判断是否需要更新所述预设内存中的所述历史用户数据;更新模块,用于若判断出需要更新所述预设内存中的所述历史用户数据,将需更新的用户数据更新至对应的所述预设内存中,得到当前用户数据。
6.一种存储介质,其上存储有程序,其特征在于,所述程序执行权利要求1至3中任一项所述的数据更新方法。
7.一种处理器,所述处理器用于运行程序,其特征在于,所述程序运行时执行权利要求1至3中任一项所述的数据更新方法。
CN201710935709.4A 2017-10-10 2017-10-10 数据更新方法及装置 Active CN110019262B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710935709.4A CN110019262B (zh) 2017-10-10 2017-10-10 数据更新方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710935709.4A CN110019262B (zh) 2017-10-10 2017-10-10 数据更新方法及装置

Publications (2)

Publication Number Publication Date
CN110019262A CN110019262A (zh) 2019-07-16
CN110019262B true CN110019262B (zh) 2022-05-27

Family

ID=67186494

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710935709.4A Active CN110019262B (zh) 2017-10-10 2017-10-10 数据更新方法及装置

Country Status (1)

Country Link
CN (1) CN110019262B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113568936B (zh) * 2021-07-30 2023-06-13 多点生活(成都)科技有限公司 实时流数据存储方法、装置、终端设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102355497A (zh) * 2011-09-28 2012-02-15 中国铁道科学研究院电子计算技术研究所 数据同步方法
CN104038532A (zh) * 2014-05-05 2014-09-10 北京荣之联科技股份有限公司 一种分布式系统互联方法及装置
CN104598610A (zh) * 2015-01-29 2015-05-06 无锡江南计算技术研究所 一种分步式数据库数据分发上传同步方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8677003B1 (en) * 2007-10-11 2014-03-18 Liveops, Inc. Distributed processing of streaming data on an event protocol

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102355497A (zh) * 2011-09-28 2012-02-15 中国铁道科学研究院电子计算技术研究所 数据同步方法
CN104038532A (zh) * 2014-05-05 2014-09-10 北京荣之联科技股份有限公司 一种分布式系统互联方法及装置
CN104598610A (zh) * 2015-01-29 2015-05-06 无锡江南计算技术研究所 一种分步式数据库数据分发上传同步方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
移动数据库中数据同步技术的研究;李艳 蓝雯飞;《重庆科技学院学报(自然科学版)》;20081231;第10卷(第6期);112-114页 *

Also Published As

Publication number Publication date
CN110019262A (zh) 2019-07-16

Similar Documents

Publication Publication Date Title
US11683671B2 (en) System, method, apparatus, and computer program product for providing mobile device support services
US9239878B2 (en) Interactivity analyses of web resources based on reload events
CN110943860B (zh) 一种bmc固件更新方法、系统、电子设备及存储介质
JP4494330B2 (ja) ポリシ制御方法、装置及びプログラム
CN111782339A (zh) 一种容器创建方法、装置、电子设备及存储介质
CN110784374A (zh) 业务系统运行状态的监控方法、装置、设备和系统
CN107870989A (zh) 网页生成方法及终端设备
CN111930472B (zh) 一种代码调试方法、装置、电子设备及存储介质
CN110750443A (zh) 网页测试的方法、装置、计算机设备及存储介质
CN108280174A (zh) 前端文件构建方法和服务器、页面访问方法和终端
CN111147310A (zh) 一种日志跟踪处理的方法、装置、服务器及介质
CN108650123B (zh) 故障信息记录方法、装置、设备和存储介质
CN109462507B (zh) 配置更新方法、装置、系统及电子设备
CN110019262B (zh) 数据更新方法及装置
CN114168383A (zh) 一种应用状态监控重启工具、方法、介质及设备
CN116391177A (zh) 带优先级的非活动存储器设备更新
CN112579189A (zh) 配置文件更新方法及装置
CN110597828A (zh) 一种数据库变更方法、装置、设备及存储介质
CN111367750A (zh) 一种异常处理方法、装置及其设备
CN113127056B (zh) 一种信息处理方法、装置、设备及可读存储介质
CN112148419B (zh) 云平台中镜像管理方法、装置、系统及存储介质
CN111104251B (zh) 恢复文件的方法、设备和计算机可读介质
US8825610B1 (en) System management based on goals relevant to a current state of a managed system
CN114924940A (zh) 性能测试方法、装置、存储介质以及电子设备
CN115202988A (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
CB02 Change of applicant information

Address after: 100083 No. 401, 4th Floor, Haitai Building, 229 North Fourth Ring Road, Haidian District, Beijing

Applicant after: Beijing Guoshuang Technology Co.,Ltd.

Address before: 100086 Beijing city Haidian District Shuangyushu Area No. 76 Zhichun Road cuigongfandian 8 layer A

Applicant before: Beijing Guoshuang Technology Co.,Ltd.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant