一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

子范围同步的制作方法

2022-02-20 19:51:56 来源:中国专利 TAG:


1.本文描述的实施例总体上涉及在在线数据源与客户端设备之间同步数据,特别是同步与变化的用户权限相关联的受保护数据,同时限制数据下载要求和相关联的计算资源。


技术实现要素:

2.许多计算设备,例如个人计算机、智能电话和膝上型电脑,可以访问远程在线数据源,包括例如存储在诸如microsoft之类的文件管理系统中的数据。这些在线数据源存储可供可以访问在线数据源的各种计算设备下载和修改的数据(文件)。这些计算设备还可以安装本地客户端软件应用,这些应用允许计算设备访问在线数据源,并且在一些情况下,下载和缓存可以经由在线数据源访问的数据的本地副本。
3.例如,在线数据源可以存储可由一个或多个用户访问的共享数据空间,其中,共享数据空间包括公共数据和受保护数据(或轻度保护数据和强保护数据)。用户必须具有访问受保护数据的权限,并且必须提供认证信息,例如执行多因素认证,才能访问受保护数据。特别地,当用户被授予共享数据空间内受保护数据的权限(并且用户提供经过验证的认证信息)时,在线数据源会提供令牌,该令牌允许安装在用户的计算设备上的本地客户端软件应用下载存储在共享数据空间内的、基于用户的当前权限用户可以访问的数据(包括公共信息和用户有权限访问的受保护信息)。因此,随着用户权限的变化(例如,允许用户访问另外的受保护数据),用户的计算设备使用所接收的令牌下载包括受保护数据和公共数据二者的所有适用数据。因此,认证令牌的使用增加了计算设备、通信网络、在线数据源或其组合的计算资源负担。当下载的信息包括比受保护数据更多的公共数据时尤其如此,这是因为随着权限的变化,这些公共数据也会被重新下载。
4.因此,本文描述的实施例提供了用于在在线数据源与客户端设备之间同步数据以更有效地使用客户端设备、通信网络和在线数据源的计算资源以及防止用户访问所需数据的延迟的系统和方法等。特别地,本文描述的实施例执行子范围同步,其中,响应于权限变化和有效认证,用户接收认证令牌,该认证令牌允许用户在共享数据空间内下载用户可访问的新的受保护数据,而不重新下载(或以其他方式同步)其他部分或共享数据空间,例如公共数据。在该下载完成之后,用户使用存储的同步令牌同步来自包括新的受保护数据集和任何公共数据的共享数据空间的下载的数据。
5.例如,一个实施例提供了一种用于在在线数据源与客户端软件应用之间同步数据的方法。该方法包括,响应于与用户相关联的、对包括在在线数据源的共享数据空间中的受保护数据集的权限的变化,利用与用户相关联的客户端应用来接收由在线数据源发布的与受保护数据集相关联的受保护数据同步令牌,以及利用客户端应用,使用受保护数据同步令牌来将包括在共享数据空间中的受保护数据集从在线数据源下载到客户端应用,而不重新下载包括在共享数据空间中的公共数据集。在下载了受保护数据集之后,该方法包括使用存储的数据空间同步令牌,在在线数据源与客户端应用之间同步包括受保护数据集和公
共数据集的共享数据空间。
6.另一个实施例提供了一种用于在在线数据源与客户端软件应用之间同步数据的系统。该系统包括用户设备,该用户设备包括存储客户端应用的存储器和电子处理器,该电子处理器被配置为执行客户端应用以响应于与用户相关联的、对包括在在线数据源的共享数据空间中的受保护数据集的权限的变化,从在线数据源接收受保护数据同步令牌,以及使用受保护数据同步令牌来将包括在共享数据空间中的受保护数据集从在线数据源下载到客户端应用,而不重新下载包括在共享数据空间中的公共数据集。在下载了受保护数据集之后,系统被配置为使用存储的数据空间同步令牌和受保护数据同步令牌,在在线数据源与客户端应用之间同步包括受保护数据集和公共数据集的共享数据空间。
7.另一个实施例提供了一种存储指令的非暂时性计算机可读介质,所述指令当由电子处理器执行时执行一组功能。该组功能包括,响应于与用户相关联的、对包括在在线数据源的共享数据空间中的数据的权限的变化,该权限的变化包括对包括在存储的数据空间中的受保护数据集的权限的撤回,从在线数据源接收对于与受保护数据集相关联的先前接收的受保护数据同步令牌的撤销通知;以及响应于撤销通知,删除受保护数据同步令牌,从共享数据空间的本地存储副本中删除受保护数据集,而不从共享数据空间的本地存储副本中删除公共数据集,以及在删除了受保护数据集之后,使用存储的数据空间同步令牌,在在线源与客户端应用之间同步包括公共数据集并且排除受保护数据的共享数据空间。
附图说明
8.图1示意性地示出了根据一个实施例的用于在在线数据源与客户端软件应用之间同步数据的系统。
9.图2示意性地示出了根据一个实施例的包括在图1的系统中的在线数据源。
10.图3示意性地示出了根据一个实施例的包括在图1的系统中的用户设备。
11.图4示出了根据一个实施例的由图1的系统执行的用于同步数据的方法的流程图。
具体实施方式
12.在以下描述和附图中描述和示出了一个或多个实施例。这些实施例不限于本文提供的具体细节并且可以以各种方式修改。此外,可以存在本文没有描述的其他实施例。而且,本文描述为由一个组件执行的功能可以由多个组件以分布式方式执行。同样,由多个组件执行的功能可以由单个组件合并和执行。类似地,被描述为执行特定功能的组件也可以执行本文未描述的另外的功能。例如,以某种方式“配置”的设备或结构至少以该方式被配置,但也可以以未列出的方式被配置。此外,本文描述的一些实施例可以包括一个或多个电子处理器,其被配置为通过执行存储在非暂时性计算机可读介质中的指令来执行所描述的功能。类似地,本文描述的实施例可以被实现为存储指令的非暂时性计算机可读介质,该指令可由一个或多个电子处理器执行以执行所描述的功能。如在本技术中使用的,“非暂时性计算机可读介质”包括所有计算机可读介质但不包括暂时性、传播信号。因此,非暂时性计算机可读介质可以包括例如硬盘、cd-rom、光存储设备、磁存储设备、rom(只读存储器)、ram(随机存取存储器)、寄存器存储器、处理器高速缓存或它们的任意组合。
13.此外,本文使用的措辞和术语是为了描述的目的,不应被视为限制。例如,“包括”、“含有”、“包含”、“具有”及其变体在本文中的使用意在涵盖其后列出的项目及其等价物以及另外的项目。术语“连接”和“耦合”被广泛使用,包括直接和间接的连接和耦合。此外,“连接”和“耦合”不限于物理或机械连接或耦合并且可以包括直接或间接的电连接或耦合。此外,电子通信和通知可以使用有线连接、无线连接或它们的组合来执行,并且可以通过各种类型的网络、通信信道和连接,直接或通过一个或多个中间设备发送。此外,诸如第一和第二、顶部和底部等的关系术语在本文中可以仅用于将一个实体或动作与另一个实体或动作区分开来,而不必要求或暗示这些实体或动作之间的任何实际的这种关系或顺序。
14.如上所述,用户在同步受保护数据时经常需要同步大量公共数据,包括当用户被授权访问先前未下载到用户的设备的新的受保护数据时。这个过程浪费了计算资源和用户时间。因此,本文描述的实施例执行子范围同步,其中,新的受保护数据是使用专用于该新的受保护数据的认证令牌来下载的,并且该认证令牌与现有同步令牌相组合地随后被用于维持在线数据源与用户的设备之间的同步,包括新的受保护数据和任何公共数据二者。换言之,仅下载新添加的受保护数据,而不重新下载(或以其他方式同步)包括新的受保护数据的整个数据空间,包括例如公共数据。
15.图1示意性地示出了用于在在线数据源与客户端软件应用之间同步数据的系统10。如图1所示,系统10包括在线数据源12、多个客户端或用户设备14(也单独称为用户设备14)和通信网络16。应当理解,系统10被提供作为示例,并且在一些实施例中,系统10包括另外的组件。例如,系统10可以包括更少或额外的用户设备14、多于一个的在线数据源12、多于一个的通信网络16等。
16.在线数据源12和多个用户设备14通过通信网络16进行通信。通信网络16的部分可以使用无线网络来实现,例如广域网(例如,互联网),局域网(例如,蓝牙
tm
网络或wi-fi),或其组合或衍生物。替代地或另外地,通信网络16的部分可以使用专用连接(例如有线或无线连接)来实现。还应当理解,在一些实施例中,在线数据源12和多个用户设备14可以通过图1中未示出的一个或多个中间设备进行通信。
17.在线数据源12包括一个或多个计算设备,例如一个或多个服务器。例如,如图2所示,在一些实施例中,在线数据源12包括至少一个服务器,该服务器包括电子处理器20、存储器22和通信接口24。电子处理器20、存储器22和通信接口24通过一个或多个通信线路或总线,以无线方式,或它们的组合进行通信。在一些实施例中,在线数据源12包括除了图2中所示的那些组件之外的另外的组件,并且包括在在线数据源12中的组件可以以各种配置布置。例如,如前所述,在一些实施例中,在线数据源12包括多个服务器、数据库等以提供在线数据源。
18.可以包括无线收发器的通信接口24允许在线数据源12通过通信网络16与外部设备通信,例如多个用户设备14,进行通信。
19.存储器22包括非暂时性计算机可读的存储介质。电子处理器20包括微处理器、专用集成电路(asic)或其他合适的电子设备。电子处理器20被配置为从存储器22中取回数据,并且执行与本文描述的方法相关的软件(指令)等。
20.例如,如图2所示,存储器22存储认证软件25和令牌生成软件26。应当理解,本文描述的由软件25和26执行的功能可以在各种配置中组合和分布。例如,在一些实施例中,本文描述的经由令牌生成软件26执行的功能由认证软件25执行,反之亦然。此外,在一些实施例
中,在线数据源12使用的软件应用可以被存储在相同或不同服务器或其他类型的计算设备上的不同存储器中。因此,图2所示的软件的配置被提供作为一种示例配置并且不应被认为是限制性的。
21.认证软件25在由电子处理器20执行时,基于认证信息来认证用户或与用户相关联的用户设备14,目的是授予对在线数据源12的访问权,特别是,授予对存储在在线数据源12内的受保护数据的访问权。在一些实施例中,认证软件25被配置为执行多因素认证以认证用户(例如经由电子邮件、文本消息等向用户发送带有验证码的电子通信)。然而,可以使用其他认证技术。
22.令牌生成软件26在由电子处理器20执行时生成受保护数据同步(“受保护数据同步(protected data sync)”)令牌,其授权用户设备14的用户访问受保护数据,如下所述。在一些实施例中,令牌生成软件26在用户经由认证软件25被认证之后生成这样的令牌。由令牌生成软件26生成的受保护数据同步令牌例如是不可变的(例如,文本)字符串,其包含可解析以标识用户、用户设备14、安装在用户设备14上的客户端应用或其组合的唯一标识符,并授予对以其他方式受保护而无法进行公共访问的数据的访问权。例如,受保护数据同步令牌可以标识存储在用户被授权访问和下载的在线数据源12内的受保护数据。认证令牌还可以包括定时信息,例如指示特定受保护数据集的最后下载或同步的时间戳。
23.在一些实施例中,令牌生成软件26还生成数据空间同步(“数据空间同步(data space sync)”)令牌。数据空间令牌用于同步先前下载的数据以捕获对利用在线数据源12维护的数据所做的更改。数据空间同步令牌可以标识用户、用户设备14、安装在用户设备14上的客户端应用、或它们的组合。在一些实施例中,数据空间同步令牌还包括标识要同步的数据的信息,包括用户被授权访问的受保护数据集。在一些实施例中,数据空间同步令牌还包括定时信息(时间戳),例如执行最近同步的时间等。
24.例如,数据空间同步令牌可以用于跟踪由在线数据源12维护的共享数据空间内的变化。例如,当用户第一次访问在线数据源12时,在线数据源12可以提供初始数据空间同步令牌,其可以是空字符串。当用户随后请求同步(其可以周期性地执行或响应于用户请求或其他触发动作或事件而执行)时,用户将数据空间同步令牌提交给在线数据源12(例如,作为同步请求的一部分)。在线数据源12使用所接收的数据空间同步令牌来确定表示上次下载或同步的时间的适用时间戳,在线数据源12使用该时间戳来识别(通过查询一个或多个数据库)包括在共享数据空间中的、修改日期大于(超过)适用时间戳的数据项。在线数据源12对所识别的数据项(按修改日期)进行排序,并且将所识别的数据项(按排序)连同包括更新的时间戳的更新的数据空间同步令牌返回给用户。时间戳可以被设置为当前时间和日期,或者紧接在最后识别的修改之后的时间。用户(用户设备14)将所接收的修改应用到共享空间的本地存储副本以保持本地副本与在线数据源12一致。因此,在一些实施例中,用户接收应用到共享数据空间的一个数据空间同步令牌,但将为包括在共享数据空间中的每个受保护数据集接收单独的受保护数据同步令牌。在一些实施例中,每个受保护数据同步令牌的功能类似于如上所述的数据空间同步令牌,但仅用于识别受保护数据集内的修改(与整个共享数据空间相比)。
25.如图2所示,在线数据源12还包括共享数据空间27,其包括公共数据集28和一个或多个受保护数据集29a、29b和29c(也统称为受保护数据集29)。如上所述,一个或多个用户
与共享数据空间27相关联,并且这些用户可以访问共享数据空间27以下载存储在空间27中的数据以用于用户设备14上的本地存储。为了维护本地存储的数据与存储在共享数据空间27中的数据一致,用户设备14周期性地(以自动频率,响应于用户请求或其他触发事件,或其组合)将本地存储的数据与包含在共享数据空间27中的数据同步,例如通过使用如上所述的数据空间同步令牌。还如上所述,与共享数据空间27相关联的每个用户都可以访问和下载存储在空间27中的公共数据集28。然而,对于受保护数据集29,必须授予用户访问受保护数据集29的权限,并且必须提供认证信息以根据用户的当前权限访问受保护数据。在一些实施例中,公共数据集28和受保护数据集29二者都受到保护并且需要访问授权。在这些实施例中,受保护数据集29比公共数据集28受到更多保护。例如,公共数据集28可能需要登录帐户或执行访问授权,而受保护数据集29可能需要这两者,并且另外,每次用户希望访问受保护数据集29时都需要多因素授权。
26.在一些实施例中,公共数据集28和受保护数据集29可以包括需要不同授权级别的多层数据。例如,受保护数据集29可以包括由进一步授权保护的第二级数据(例如,仅对管理者或有权访问受保护数据集29的某些许可的人可用的更受保护数据集)。很像受保护数据集29需要比公共数据集28更进一步的访问权限,即使用户有权访问受保护数据集29,该第二层也需要比受保护数据集29更进一步的访问权限。而且,在单个层中,可能有多个范围(例如,文件夹),每个范围都需要不同的认证(例如,不同的密码、代码等)。
27.在一些实施例中,存储在共享数据集27中的数据的至少一部分(例如,受保护数据集29a-c中的至少一个)可以被加密。如果用户被授予对受保护数据集的权限并且用户设备14具有可能破坏受保护数据集29的恶意软件或其他有害软件,则这尤其有利。
28.应当理解,由在线数据源12托管的共享数据空间27可以分布在包括在单个服务器或多个服务器或其他计算设备中的多个存储器上,例如一个或多个数据库。
29.多个用户设备14中的每一个用户设备14都远离在线数据源12(与其分离)并且包括计算设备,例如台式计算机、膝上型计算机、平板计算机、终端、服务器、智能电视、电子白板、平板电脑、智能手机、可穿戴设备等。如图3所示,在一些实施例中,用户设备14包括电子处理器30、存储器32、人机接口(hmi)34和通信接口36。电子处理器30、存储器32、hmi 34和通信接口36通过一条或多条通信线路或总线、以无线方式或其组合进行通信。在一些实施例中,用户设备14包括除了图3中所示的那些组件之外的另外的组件,例如另外的存储器、处理器等。此外,图3所示的包括在用户设备14中的组件可以以各种配置布置。
30.可以包括无线收发器的通信接口36允许用户设备14通过通信网络16与诸如在线数据源12之类的外部设备通信。
31.hmi 34包括输入设备、输出设备或它们的组合。例如,hmi 34可以包括显示设备、触摸屏、键盘、小键盘、按钮、光标控制设备、打印机、扬声器、虚拟现实耳机、麦克风等。在一些实施例中,用户设备14包括多个hmi。例如,用户设备14可以包括触摸屏和小键盘。在一些实施例中,hmi 34被包括在与用户设备14相同的外壳中。然而,在其他实施例中,hmi 34可以在用户设备14的外部,但是可以通过有线或无线连接与用户设备14通信。例如,在一些实施例中,用户设备14包括经由线缆或其他类型的有线或无线连接连接到用户设备14的显示设备。
32.存储器32包括非暂时性计算机可读存储介质。电子处理器30包括微处理器、专用
集成电路(asic)或其他合适的电子设备。电子处理器30被配置为从存储器32取回数据,并且执行软件指令以执行各种功能等。
33.如图3所示,存储器32存储客户端软件应用37。客户端软件应用37在由电子处理器30执行时管理对在线数据源12中存储的数据(例如,共享数据空间27)的访问、下载和同步。例如,客户端软件应用37可以提供用户接口,其允许用户查看和访问存储在共享数据空间27中的数据,选择数据以下载以用于用户设备14(存储器32)上的本地存储,对下载的数据进行更改,并且同步在用户设备14和在线数据源12处对数据所做的任何更改。应当理解,客户端软件应用37也可以执行本文没有描述的另外的功能。例如,在一些实施例中,客户端软件应用37还执行数据处理功能,例如经由电子表格应用、文字处理应用、演示应用、数据库应用等提供的功能。
34.在一些实施例中,由令牌生成软件26生成的受保护数据同步令牌和数据空间同步令牌被发布到客户端软件应用37并由其接收。在一些实施例中,所接收的令牌链接到特定客户端软件应用。然而,在其他实施例中,此类令牌可由不同的客户端软件应用使用。例如,在一些实施例中,用户设备14存储多个客户端软件应用,其中,不同的应用可以访问不同的空间27、同一空间27内的不同数据集或它们的组合。在这种情况下,可以生成唯一的令牌来控制可通过每个客户端软件应用访问的数据。
35.如上所述,不是每次用户对空间27的权限变化时都重新下载共享数据空间27(包括任何公共数据集28),令牌生成软件26可以被配置为生成针对新的受保护数据的受保护数据同步令牌。用户设备14(客户端软件应用37)使用令牌来下载新的受保护数据,而无需还下载(或以其他方式同步)共享数据空间27的其他部分,例如公共数据集28。在完成了下载之后,客户端软件应用37基于数据空间同步令牌执行与共享数据空间的同步,以同步包括新的受保护数据的共享数据空间27。
36.例如,图4是示出根据一个实施例的用于在在线数据源12和客户端软件应用37之间同步数据的方法40的流程图。方法40被描述为由用户设备14(由电子处理器30执行的客户端软件应用37)执行。然而,在一些实施例中,方法40或其部分可以由其他设备或硬件或软件组件来执行。
37.如图4所示,方法40包括,响应于用户设备14的用户关于共享数据空间27的权限的变化,在用户设备14处接收用于与变化的用户权限相关联的受保护数据的受保护数据同步令牌(在框42处)。例如,用户设备14的用户可以加入新团队,开始新项目或在现有项目中担任新角色并且需要访问某个受保护数据集,例如受保护数据集29a。类似地,随着新的受保护数据被添加到共享数据空间27,与用户相关联的权限可以被更新以授予对该受保护数据的访问,这代表用户权限的变化。在一些实施例中,管理者或其他管理员控制对受保护数据的权限。如上所述,所接收的受保护数据同步令牌可以标识用户已被授予访问权限的一个或多个受保护数据集。受保护数据同步令牌还可以标识用户、用户设备14、客户端软件应用37或它们的组合。
38.在一些实施例中,在用户被认证之后生成受保护数据同步令牌。例如,认证软件25可以执行用户的多因素认证,并且该认证过程的成功完成可以触发合适的受保护数据同步令牌的生成。
39.在用户设备14接收并存储了发布的受保护数据同步令牌之后(在框42处),在线数
据源12和客户端软件应用37之间的任何正在进行的同步动作停止(这包括更新的数据空间同步令牌的存储),并且客户端软件应用37使用所接收的受保护数据同步令牌下载新的受保护数据集(例如,受保护数据集29a),而不下载(或以其他方式同步)共享数据空间27的其他部分,例如公共数据集28(在框43处)。
40.在下载了新的受保护数据集29a之后(在框43处),包括使用受保护数据同步令牌下载的受保护数据29的共享数据空间27被同步(在框44处)。同步空间27可以包括向在线数据源12提交包括存储的数据空间同步令牌的请求。如上所述,在线数据源12使用所接收的数据空间同步令牌来识别需要应用于用户设备14上的、共享数据空间27的本地存储副本的修改。如上所述,与对于每个同步以及可供用户访问的每个新的受保护数据集都将共享数据空间27(包括公共数据集28)完全重新下载到用户设备14相比,以此方式执行同步提供了对计算资源(处理周期、带宽、电池寿命等)的更有效使用。
41.在一些实施例中,每个受保护数据同步令牌与数据空间同步令牌一起存储以指示用户可以同步哪些受保护数据集。然而,在其他实施例中,在下载了相关联的受保护数据集和同步了共享数据空间27(包括新下载的受保护数据集)之后,每个受保护数据同步令牌用于更新数据空间同步令牌以指示:用户现在可以同步受保护数据集。例如,可以修改数据空间同步令牌以包括允许用户访问的受保护数据集的唯一标识符。在更新了数据空间同步令牌之后,可以丢弃受保护数据同步令牌,这实现了有效的存储器使用。
42.如上所述,如上所述的用户权限的变化可以包括授予对共享数据空间27中的新的(对于用户而言是新的或对于共享数据空间27而言是新的)受保护数据集的访问权。类似地,在一些实施例中,用户权限的变化可以包括撤回对包括在共享数据空间27中的现有受保护数据集的访问权。例如,当用户对特定受保护数据集29的权被撤销时,先前提供的受保护数据同步令牌可以被撤销,这可以触发用户设备14的先前下载的受保护数据的删除(作为如上所述的同步的一部分),或者可以修改数据空间同步令牌以移除受保护数据集29的标识符。例如,可以向客户端软件应用37提供撤销通知,以触发先前提供的受保护数据同步令牌的删除,或受保护数据集29的标识符从数据空间同步令牌的移除。类似地,在一些实施例中,认证令牌的撤销可以单独触发与被撤销的权限相关联的任何下载数据的删除,以在如上所述执行空间27的一般同步之前无延迟地执行该删除并实施数据完整性。因此,不是删除所有先前下载的数据并随后从共享数据空间27重新下载适用数据(这浪费计算资源并引入延迟),而是仅删除撤销的受保护数据而不删除先前下载到用户设备14的、共享数据空间的其他部分,例如公共数据集。
43.因此,如上所述,通过使用子范围同步,新的受保护数据被快速下载并在客户端设备处可用,而不重新下载(或以其他方式同步)整个共享数据空间,除了受保护数据外,该共享数据空间还可以包括公共数据。因此,所公开的同步过程更有效地使用计算资源并减少完成同步的延迟,尤其是在提供新的受保护数据集时。
44.在所附权利要求中阐述了一些实施例的各种特征和优点。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献