CN109194711A - 一种组织架构的同步方法、客户端、服务端及介质 - Google Patents
一种组织架构的同步方法、客户端、服务端及介质 Download PDFInfo
- Publication number
- CN109194711A CN109194711A CN201810844856.5A CN201810844856A CN109194711A CN 109194711 A CN109194711 A CN 109194711A CN 201810844856 A CN201810844856 A CN 201810844856A CN 109194711 A CN109194711 A CN 109194711A
- Authority
- CN
- China
- Prior art keywords
- node
- attribute data
- sequence
- client
- server
- 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.)
- Granted
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1095—Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明公开了一种组织架构的同步方法、客户端、服务端及介质,方法包括:发送同步请求,同步请求中包含客户端同步版本号,客户端同步版本号记录当前客户端的第一节点属性序列的最大序列号,第一节点属性序列包括客户端对应的多个节点的当前属性数据;若服务端同步版本号记录的当前服务端的总节点属性序列的最大序列号大于第一节点属性序列的最大序列号,总节点属性序列包括多个客户端对应的多个节点的历史属性数据,获取服务端下发的增量节点的属性数据,增量节点包括总节点属性序列的最大序列号与第一节点属性序列的最大序列号之间的序列号对应的节点;请求根据增量节点的属性数据变更对应的第一节点属性序列中的节点的属性数据。
Description
技术领域
本发明涉及互联网通信技术领域,尤其涉及一种组织架构的同步方法、客户端、服务端及介质。
背景技术
随着计算机和互联网技术的快速发展,诸多应用均提供了群组的创建和应用功能。通过群组的应用,多个用户可以同时实现通讯和交互,企业利用群组有助于提升组织架构内成员的沟通效率。同时,企业的组织架构作为非常重要且敏感的信息,关乎着隐私和安全。针对组织架构信息,企业各成员具有的查看权限并不相同。
随着成员的变动等,企业组织架构更新,成员查看到的组织架构也需要同步。然而利用服务端下发全量信息、客户端将本地信息与全量信息对比实现组织架构的同步,这样客户端往往流量消耗大、拉取得到大量冗余信息,甚至会因为内存不足出现crash(程序停止工作等)等。
发明内容
为了解决现有技术应用在对企业尤其是超大企业的组织架构同步时、客户端流量消耗大、内存占比高、同步速度慢等问题,本发明提供了一种组织架构的同步方法、客户端、服务端及介质:
第一方面,本发明提供了一种组织架构的同步方法,所述方法包括:
发送同步请求,同步请求中包含客户端同步版本号,所述客户端同步版本号记录当前客户端的第一节点属性序列的最大序列号,所述第一节点属性序列包括所述客户端对应的多个节点的当前属性数据;
若服务端同步版本号记录的当前服务端的总节点属性序列的最大序列号大于所述第一节点属性序列的最大序列号,所述总节点属性序列包括多个所述客户端对应的多个节点的历史属性数据,获取所述服务端下发的增量节点的属性数据,所述增量节点包括所述总节点属性序列的最大序列号与所述第一节点属性序列的最大序列号之间的序列号对应的节点;
将所述第一节点属性序列中的节点的属性数据与所述增量节点的属性数据进行对比;
请求根据所述增量节点的属性数据变更所述第一节点属性序列中的所述节点的属性数据;
更新并存储所述客户端同步版本号。
第二方面提供了一种客户端,所述客户端包括:
同步请求发送模块:用于发送同步请求,同步请求中包含客户端同步版本号,所述客户端同步版本号记录当前客户端的第一节点属性序列的最大序列号,所述第一节点属性序列包括所述客户端对应的多个节点的当前属性数据;
增量节点获取模块:用于若服务端同步版本号记录的当前服务端的总节点属性序列的最大序列号大于所述第一节点属性序列的最大序列号,所述总节点属性序列包括多个所述客户端对应的多个节点的历史属性数据,获取所述服务端下发的增量节点的属性数据,所述增量节点包括所述总节点属性序列的最大序列号与所述第一节点属性序列的最大序列号之间的序列号对应的节点;
属性数据对比模块:用于将所述第一节点属性序列中的节点的属性数据与所述增量节点的属性数据进行对比;
属性数据变更模块:用于请求根据所述增量节点的属性数据变更所述第一节点属性序列中的所述节点的属性数据;
同步版本号更新模块:用于更新并存储所述客户端同步版本号。
第三方面提供了一种服务端,所述服务端包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如第一方面所述的组织架构的同步方法。
第四方面提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如第一方面所述的组织架构的同步方法。
本发明提供的一种组织架构的同步方法、客户端、服务端及介质,具有如下技术效果:
本发明通过客户端发送同步请求,同步请求中包含客户端同步版本号,所述客户端同步版本号记录当前客户端的第一节点属性序列的最大序列号,若服务端同步版本号记录的当前服务端的总节点属性序列的最大序列号大于所述第一节点属性序列的最大序列号,获取所述服务端下发的增量节点的属性数据。利用版本号和增量更新,变更所述第一节点属性序列中的所述节点的属性数据,更新并存储所述客户端同步版本号。利用服务端下发增量信息,降低客户端的流量消耗、减少客户端拉取到的冗余信息,有助于对企业组织架构的快速同步。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案和优点,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它附图。
图1是本发明实施例提供的一种应用环境的示意图;
图2是本发明实施例提供的一种组织架构的同步方法的流程示意图;
图3是本发明实施例提供的获取所述服务端下发的增量节点的属性数据的一种的流程示意图;
图4是本发明实施例提供的获取所述服务端下发的增量节点的属性数据的一种流程示意图;
图5是本发明实施例提供的请求根据所述增量节点的属性数据变更所述第一节点属性序列中的所述节点的属性数据的一种流程示意图;
图6是本发明实施例提供的一种同步请求中包含客户端隐藏规则版本号的流程示意图;
图7是本发明实施例提供的一种同步请求中包含客户端序列号删除版本号的流程示意图;
图8是本发明实施例提供的一种客户端的组成框图;
图9是本发明实施例提供的增量节点获取模块的一种组成框图;
图10是本发明实施例提供的增量节点获取模块的一种组成框图;
图11也是本发明实施例提供的一种组织架构的同步方法的流程示意图;
图12是本发明实施例提供的一种同步版本号的应用示意图;
图13是本发明实施例提供的一种服务端的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“包括”和“具有”以及他们的任何变形,示意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务端不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
请参阅图1,图1是本发明实施例提供的一种应用环境的示意图,如图1所示,该应用环境下,企业的成员利用群组客户端实现企业组织架构内的沟通,各成员通过各自的客户端从服务端处更新同步到最新的企业组织架构。比如企业成员可以在客户端首页的tab上选择”通讯录”,并且可以通过”通讯录”找到本公司的所有成员,并与其发起会话或者视频语音通话等。需要说明的是,图1仅仅是一种示例。
本发明的组织架构的同步方法应用于企业尤其是大企业(不仅仅包括破万级别的,更包括百万级别以上的)。企业组织架构可以看作为多叉树结构:叶子节点代表成员,非叶子节点代表部门。其中,部门最多只有一个父部门,但成员可属于多个部门。
在企业组织架构中,针对组织架构信息,企业管理员(也可以是企业成员,相对普通成员具有更高的权限)具有高粒度隐私保护操作权限,不仅支持个人信息隐藏,也支持通讯录查看权限等操作。企业管理员可以在客户端(比如通过web或app)进行添加/删除部门、添加/删除/移动/编辑成员等操作,并且操作结果会及时同步给本公司所有成员。企业管理员可以进行架构隐藏操作:可以在管理后台设置白名单和黑名单。比如,白名单内的成员可以查看完整的组织架构,其他成员在组织架构里看不到他们。黑名单内的成员只能看到自己所在小组(部门)和其所属的父部门,其余人可以看到黑名单的成员。当然,黑白名单可以根据企业的具体需求来设置。
企业管理员的操作影响着服务端的企业组织架构的总数据,普通成员使用群组时客户端会通过服务端下发的数据更新企业组织架构,这个企业组织架构是普通成员基于自身的权限能看到的。不同的普通成员看到的企业组织架构可以是不一样的。企业管理员看到的企业组织架构是整体的、全面的,同样服务端获得的企业组织架构的总数据也是整体的、全面的。
在实际应用中,在首次同步服务端的企业组织架构数据时,往往由服务端下发全量节点的数据压缩包,客户端解压该压缩包后得到企业组织架构的展示。当然客户端首次同步企业组织架构时获得的全量节点的数据压缩包、也是根据客户端对应的企业成员的权限的。
以下介绍本发明客户端在非首次同步服务端的企业组织架构数据时、应用的组织架构的同步方法,图2是本发明实施例提供的一种组织架构的同步方法的流程示意图,本说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的系统或服务端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。具体的如图2、11、12所示,所述方法可以包括:
S201:发送同步请求,同步请求中包含客户端同步版本号,所述客户端同步版本号记录当前客户端的第一节点属性序列的最大序列号,所述第一节点属性序列包括所述客户端对应的多个节点的当前属性数据;
在本发明实施例中,客户端每完成一次企业组织架构同步都会更新并存储本次的客户端同步版本号。客户端同步版本号随着客户端对企业组织架构的同步次数而递增。同样的,服务端每完成一次企业组织架构同步都会更新并存储本次的服务端同步版本号。服务端同步版本号随着服务端对企业组织架构的同步次数而递增。
企业成员以节点的形式呈现在企业组织架构中,成员A基于他的权限可以通过客户端查看到他自身以及成员B、C、D在企业组织架构中的位置。属性数据包括成员的个人信息、成员在企业中所在的部门、该属性数据在总节点属性序列中的序列号。那么第一节点属性序列包括了成员A、B、C、D的属性数据,其中成员A、B、C、D的属性数据根据该属性数据在总节点属性序列中的序列号排序。而客户端同步版本号记录当前客户端的第一节点属性序列的最大序列号,比如成员A的属性数据在总节点属性序列中的序列号为10,成员B的属性数据在总节点属性序列中的序列号为12,成员C的属性数据在总节点属性序列中的序列号为200,成员D的属性数据在总节点属性序列中的序列号为5,那么客户端同步版本号记录当前客户端的第一节点属性序列的最大序列号为200。
企业组织架构的调整存在着新建部门且移动若干成员到新部门的情况,也存在解散某个部门的情况。而企业成员离职也会通过组织架构同步下来,意味着超大型企业基本上每天都会有改动。
S202:若服务端同步版本号记录的当前服务端的总节点属性序列的最大序列号大于所述第一节点属性序列的最大序列号,所述总节点属性序列包括多个所述客户端对应的多个节点的历史属性数据,获取所述服务端下发的增量节点的属性数据,所述增量节点包括所述总节点属性序列的最大序列号与所述第一节点属性序列的最大序列号之间的序列号对应的节点;
在本发明实施例中,总节点属性序列包括了成员A、B、C、D、E、F、G等所有企业成员的属性数据,其中成员A、B、C、D、E、F、G等所有企业成员的属性数据根据该属性数据在总节点属性序列中的序列号排序。而客户端同步版本号记录当前客户端的第一节点属性序列的最大序列号,比如成员A的属性数据在总节点属性序列中的序列号为10,成员B的属性数据在总节点属性序列中的序列号为12,成员C的属性数据在总节点属性序列中的序列号为200,成员D的属性数据在总节点属性序列中的序列号为5,成员E的属性数据在总节点属性序列中的序列号为310(最大值),成员F的属性数据在总节点属性序列中的序列号为202,成员G的属性数据在总节点属性序列中的序列号为80,那么服务端同步版本号记录当前服务端的总节点属性序列的最大序列号为310。
那么客户端获取所述服务端下发的增量节点的属性数据,所述增量节点包括所述总节点属性序列的最大序列号与所述第一节点属性序列的最大序列号之间的序列号对应的节点。序列号310和序列号200之间有110个序列号(包括序列号310),这些序列号对应的节点(成员)数量小于或等于110,因为同一个节点在企业组织架构中有变动也产生一个新的属性数据,这些序列号对应的节点(成员)也不一定都是成员A基于他的权限可以通过客户端查看到的。
如图12所示,客户端发送同步请求,同步请求中包含客户端同步版本号,所述客户端同步版本号记录当前客户端的第一节点属性序列的最大序列号seq=102,而此时服务端同步版本号记录的当前服务端的总节点属性序列的最大序列号seq=105,增量节点对应的序列号为seq=103、104和105。服务端下发这三个增量节点的属性数据给客户端。
具体的,如图3所示,客户端获取下发的增量节点的属性数据时,当服务端下发的增量节点的属性数据的数据包很大,此时若一次性下发全部的数据,会很耗时同时成功率也不高。可以根据数据包的大小分片拉取:
S301:当所述增量节点的属性数据的大小大于预设阈值,获取所述服务端下发的预设阈值的所述增量节点的属性数据;
客户端和服务端可以约定阈值,若请求的同步数据总数超过这个阈值,服务端每次最多返回不超过该阈值的数据。
S302:当从所述服务端获取的所述增量节点的属性数据的大小为预设阈值,请求所述服务端继续下发所述增量节点的属性数据;
若客户端发现服务端返回的数据数量等于阈值,则再次到服务端请求数据,直到服务端下发的数据数量小于阈值。
S303:当从所述服务端获取的所述增量节点的属性数据的大小小于预设阈值,停止向所述服务端发送所述增量节点的属性数据的请求。
同样的,可以以增量节点的数量为参考与服务端约定预设数量分片拉取:
当所述增量节点的数量大于预设数量,获取所述服务端下发的预设数量的所述增量节点的属性数据;
当从所述服务端获取的属性数据对应的所述增量节点的数量为预设数量,请求所述服务端继续下发所述增量节点的属性数据;
当从所述服务端获取的属性数据对应的所述增量节点的数量小于预设数量,停止向所述服务端发送所述增量节点的属性数据的请求。
当然,以上通过分片拉取增量节点的属性数据的形式在实际应用中,可以通过分片拉取获得全部的增量节点的属性数据后再进行之后的同步,也可以一遍分片拉取部分的增量节点的属性数据并同步直至全部拉取并同步完成。
具体的,如图4所示,客户端获取下发的增量节点的属性数据时,这些增量节点会包括一些比如成员A基于他的权限无法通过客户端查看到的节点(成员E、F、G)。所述节点的属性数据以哈希值的形式存储,此时:
S401:获取所述服务端下发的所述增量节点的属性数据的哈希值;
哈希值表现为字符串,把任意长度的输入(增量节点的属性数据)通过散列算法变换成固定长度的输出,这样根据固定长度的输出可以一定程度的过滤掉脏数据,避免脏数据对客户端同步企业组织架构的影响。
S402:判断所述哈希值对应的所述属性数据的存储结构是否满足预设的存储结构;
属性数据的存储结构可以表示为:
seq | vid | departmentid | is_delete |
其中,seq是指属性数据在总节点属性序列中的序列号,每有一个成员在组织架构中发生变动(部门变化、离职等)就会生成一个属性数据,属性数据中的seq相比前一个生成的属性数据的seq+1;vid是指节点(成员)id;departmentid是指节点所属部门id,一个成员属于多个部门,也用一个节点的属性数据的存储结构表示;is_delete表示节点是否已被删除,若节点被删除了,服务端不会真正的删除该节点,服务端不会物理删除该节点,而是将is_delete标为true(1)。总节点属性序列依据seq排序,可以看作为流,可以看作是企业成员在组织架构中发生变动的一个总回放。
S403:若不满足,过滤掉所述哈希值。
通过判断所述哈希值对应的所述属性数据的存储结构是否满足预设的存储结构可以实现:成员A基于他的权限是无法识别比如成员E、F、G的属性数据的哈希值的,成员A同步到基于他的权限能够查看到的企业组织架构;同时也过滤掉脏数据,避免出现组织架构展示错误。
另外,也可以采用霍夫曼(Huffman)算法,属性数据的存储结构可以以诸如这样的字符串seq=100#vid=2#departmentid=3#is_delete=0形式表示。先计算出每个字符出现的次数,再将其放到Priority Queue中(用出现的次数据当priority),Priority Queue是以Prioirry排序一个数组,如果Priority一样,会使用出现的次序排序。接着把这个Priority Queue转成二叉树,始终从Queue的头取两个元素来构造一个二叉树(第一个元素是左结点,第二个是右结点),并把这两个元素的Priority相加,并放回Priority中(再次注意,这里的Priority就是字符出现的次数)。同样,再把前两个取出来,形成一个Priority为两个元素的priority相加的结点,然后再放回Priority Queue中。以此,最终得到一棵二叉树及编码表。属性数据经霍夫曼算法编码后数据的大小被有效的压缩,减小服务端发下增量节点的属性数据对客户端存储的要求。同时属性数据能有效被客户端识别,以此可以过滤掉脏数据及成员A基于他的权限无法识别比如成员E、F、G的属性数据。
当然,这与上述的客户端获取下发的增量节点的属性数据时分片拉取的方式可以同时应用。
S203:将所述第一节点属性序列中的节点的属性数据与所述增量节点的属性数据进行对比;
在本发明实施例中,在所述增量节点中筛选出所述客户端对应的节点。比如,上一次客户端同步版本号下,成员A的属性数据在总节点属性序列中的序列号为10,成员B的属性数据在总节点属性序列中的序列号为12,成员C的属性数据在总节点属性序列中的序列号为200,成员D的属性数据在总节点属性序列中的序列号为5。本次由同步请求而获取的所述服务端下发的增量节点的属性数据中,成员B的属性数据在总节点属性序列中的序列号为215,成员C的属性数据在总节点属性序列中的序列号为230,也就表明成员D在企业组织架构中没有变动。
另外,本次由同步请求而获取的所述服务端下发的增量节点的属性数据中还有:成员H的属性数据在总节点属性序列中的序列号为261,成员I的属性数据在总节点属性序列中的序列号为266。成员H、I是成员A基于他的权限在本次同步中能够看到的,此时成员A可能没有出现所属部门的变动。
S204:请求根据所述增量节点的属性数据变更所述第一节点属性序列中的所述节点的属性数据;
具体的,如图5所示,
S501:若所述增量节点包括所述客户端对应的节点,根据所述增量节点的属性数据变更对应的所述第一节点属性序列中的节点的属性数据;
根据上述,变更第一节点属性序列中成员B、C对应的属性数据。
S502:若所述增量节点不包括所述客户端对应的节点,根据所述增量节点的属性数据增加所述客户端对应的节点、并同步所述第一节点属性序列中的节点的属性数据。
根据上述,在第一节点属性序列中增加成员H、I对应的属性数据。
S205:更新并存储所述客户端同步版本号。
完成成员A基于他的权限可以通过客户端查看到的企业组织架构。
同时,企业组织架构的同步时序,服务端下发的版本号回退标记是很重要的信号。版本号回退这个标记,仅仅在同步的首次会随着新的版本号而下发。在完整组织架构同步期间,客户端需要将该标记缓存,并且跟着版本号一起存在数据库中。在完整组织架构同步结束后,需要根据是否版本号回退来决定删除掉数据库中的待删除节点。若同步架构时,后台下发了需要版本号回退的flag(标志位),客户端将缓存和db(数据库)中的所有节点标为待删除。针对服务端下发的更新节点,在组织架构树中清除掉节点的待删除标记。在完整组织架构同步结束后,在db中找到并删除掉所有标为待删除的节点,并且清除掉所有缓存数据。在增量同步过程中,不应该影响正常的架构树展示。所以在架构同步过程中,若有上层来请求db中的数据,则需要过滤掉有待删除标记的节点。
在一个可能的实施例中,比如成员A的所属部门发生了变动(比如所属部门更换了父部门、所属部门内新增成员超过阈值),成员A基于它的权限通过客户端查看到的企业组织架构也可能发生变化。或者,企业组织架构的隐藏规则变化过大,服务端若继续计算出增量节点的属性数据,会加大整体资源使用、服务端运算速度也会下降。如图6所示,发送同步请求的步骤之后,包括:
S601:检查所述同步请求中是否包含客户端隐藏规则版本号,所述客户端隐藏规则版本号记录当前客户端查看组织架构的权限的变更次数;
S602:当所述同步请求中包含所述客户端隐藏规则版本号,若服务端隐藏规则版本号大于所述客户端隐藏规则版本号,所述服务端隐藏规则版本号记录当前所述服务端查看组织架构的权限的变更次数,获取所述服务端下发的全量节点的属性数据;
服务端下发全量节点的属性数据,是一种版本号回退的情况,效果类似于客户端用空版本号去同步组织架构。这种情况下,客户端会对比本地的所有节点,找到差异请求节点具体信息。
S603:将所述第一节点属性序列中的节点的属性数据与所述全量节点的属性数据进行对比;
理想状况下,若服务端下发全量节点的属性数据,客户端铲掉旧数据、拉取全量节点的属性数据,并且用新数据覆盖即可。但是客户端这样做会消耗大量的流量和内存资源,所以若服务端下发全量节点的属性数据,客户端需要本地对比出增删改节点,再去拉变更节点的属性数据。
S604:请求根据所述全量节点的属性数据变更所述第一节点属性序列中的所述节点的属性数据;
S605:更新并存储所述客户端隐藏规则版本号。
在一个可能的实施例中,比如服务端不可能永久存储删除的记录,删除的记录对服务端是毫无意义的而且永久存储会占用大量的硬盘空间,并且无效数据过多也会影响架构读取速度。此时服务端会依据总节点属性序列的序列号从小到大开始删除。如图7所示,发送同步请求的步骤之后,包括:
S701:检查所述同步请求中是否包含客户端序列号删除版本号,所述客户端序列号删除版本号记录当前客户端的第一节点属性序列的最小序列号;
S702:当所述同步请求中包含所述客户端序列号删除版本号,若服务端序列号删除版本号记录的当前所述服务端的所述总节点属性序列的最小序列号大于所述第一节点属性序列的最小序列号,获取所述服务端下发的全量节点的属性数据;
服务端下发全量节点的属性数据,是一种版本号回退的情况,效果类似于客户端用空版本号去同步组织架构。这种情况下,客户端会对比本地的所有节点,找到差异请求节点具体信息。
S703:将所述第一节点属性序列中的节点的属性数据与所述全量节点的属性数据进行对比;
理想状况下,若服务端下发全量节点的属性数据,客户端铲掉旧数据、拉取全量节点的属性数据,并且用新数据覆盖即可。但是客户端这样做会消耗大量的流量和内存资源,所以若服务端下发全量节点的属性数据,客户端需要本地对比出增删改节点,再去拉变更节点的属性数据。
S704:请求根据所述全量节点的属性数据变更对应的所述第一节点属性序列中的所述节点的属性数据;
S705:更新并存储所述客户端序列号删除版本号。
当然,当is_delete=1的节点(比如离职的成员)的数目超过一定的阈值后,服务端会物理删除掉所有的is_delete为true的节点。此时可以根据阈值的设置,在超过一定的阈值后,服务端向客户端下发的全量节点的属性数据,进行企业组织架构的同步。
在一种可能的实施例中,同步版本号、隐藏规则版本号和序列号删除版本号拼接成字符串。
由以上本说明书实施例发布的技术方案可见,本说明书实施例中本发明通过客户端发送同步请求,同步请求中包含客户端同步版本号,所述客户端同步版本号记录当前客户端的第一节点属性序列的最大序列号,若服务端同步版本号记录的当前服务端的总节点属性序列的最大序列号大于所述第一节点属性序列的最大序列号,获取所述服务端下发的增量节点的属性数据。利用版本号和增量更新,变更所述第一节点属性序列中的所述节点的属性数据,更新并存储所述客户端同步版本号。利用服务端下发增量信息,降低客户端的流量消耗、减少客户端拉取到的冗余信息,有助于对企业组织架构的快速同步。
本发明实施例还发布了一种客户端,如图8所示,所述客户端包括:
同步请求发送模块81:用于发送同步请求,同步请求中包含客户端同步版本号,所述客户端同步版本号记录当前客户端的第一节点属性序列的最大序列号,所述第一节点属性序列包括所述客户端对应的多个节点的当前属性数据;
增量节点获取模块82:用于若服务端同步版本号记录的当前服务端的总节点属性序列的最大序列号大于所述第一节点属性序列的最大序列号,所述总节点属性序列包括多个所述客户端对应的多个节点的历史属性数据,获取所述服务端下发的增量节点的属性数据,所述增量节点包括所述总节点属性序列的最大序列号与所述第一节点属性序列的最大序列号之间的序列号对应的节点;
如图9所示,增量节点获取模块82包括:属性数据获取单元821:用于当所述增量节点的属性数据的大小大于预设阈值,获取所述服务端下发的预设阈值的所述增量节点的属性数据;属性数据请求单元822:用于当从所述服务端获取的所述增量节点的属性数据的大小为预设阈值,请求所述服务端继续下发所述增量节点的属性数据;请求停止单元823:用于当从所述服务端获取的所述增量节点的属性数据的大小小于预设阈值,停止向所述服务端发送所述增量节点的属性数据的请求。
如图10所示,所述节点的属性数据以哈希值的形式存储;增量节点获取模块82包括:哈希值获取单元824:用于获取所述服务端下发的所述增量节点的属性数据的哈希值;存储结构判断单元825:用于判断所述哈希值对应的所述属性数据的存储结构是否满足预设的存储结构;哈希值过滤单元826:用于若所述哈希值对应的所述属性数据的存储结构不满足预设的存储结构,过滤掉所述哈希值。
属性数据对比模块83:用于将所述第一节点属性序列中的节点的属性数据与所述增量节点的属性数据进行对比;属性数据对比模块包括:节点筛选单元:用于在所述增量节点中筛选出所述客户端对应的节点。
属性数据变更模块84:用于请求根据所述增量节点的属性数据变更所述第一节点属性序列中的所述节点的属性数据;属性数据变更模块包括:第一属性数据变更单元:用于若所述增量节点包括所述客户端对应的节点,根据所述增量节点的属性数据变更对应的所述第一节点属性序列中的节点的属性数据;第二属性数据变更单元:用于若所述增量节点不包括所述客户端对应的节点,根据所述增量节点的属性数据增加所述客户端对应的节点、并同步所述第一节点属性序列中的节点的属性数据。
同步版本号更新模块85:用于更新并存储所述客户端同步版本号。
其中,同步请求发送模块81还包括:隐藏规则版本号检查单元:用于检查所述同步请求中是否包含客户端隐藏规则版本号,所述客户端隐藏规则版本号记录当前客户端查看组织架构的权限的变更次数;第一全量节点获取单元:用于当所述同步请求中包含所述客户端隐藏规则版本号,若服务端隐藏规则版本号大于所述客户端隐藏规则版本号,所述服务端隐藏规则版本号记录当前所述服务端查看组织架构的权限的变更次数,获取所述服务端下发的全量节点的属性数据;第一属性数据对比单元:用于将所述第一节点属性序列中的节点的属性数据与所述全量节点的属性数据进行对比;第一属性数据变更单元:用于请求根据所述全量节点的属性数据变更对应的所述第一节点属性序列中的所述节点的属性数据;隐藏规则版本号更新单元:用于更新并存储所述客户端隐藏规则版本号。
其中,同步请求发送模块81还包括:序列号删除版本号检查单元:用于检查所述同步请求中是否包含客户端序列号删除版本号,所述客户端序列号删除版本号记录当前客户端的第一节点属性序列的最小序列号;第二全量节点获取单元:用于当所述同步请求中包含所述客户端序列号删除版本号,若服务端序列号删除版本号记录的当前所述服务端的所述总节点属性序列的最小序列号大于所述第一节点属性序列的最小序列号,获取所述服务端下发的全量节点的属性数据;第二属性数据对比单元:用于将所述第一节点属性序列中的节点的属性数据与所述全量节点的属性数据进行对比;第二属性数据变更单元:用于请求根据所述全量节点的属性数据变更对应的所述第一节点属性序列中的所述节点的属性数据;序列号删除版本号更新单元:用于更新并存储所述客户端序列号删除版本号。
需要说明的,所述装置实施例中的客户端与方法实施例基于同样的发明构思。
本发明实施例发布了一种服务端,该服务端包括处理器和存储器,该存储器中存储有至少一条指令、至少一段程序、代码集或指令集,该至少一条指令、该至少一段程序、该代码集或指令集由该处理器加载并执行以实现如上述方法实施例所提供的组织架构的同步方法。
存储器可用于存储软件程序以及模块,处理器通过运行存储在存储器的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器可主要包括存储程序区和属性数据区,其中,存储程序区可存储操作系统、功能所需的应用程序等;属性数据区可存储根据所述设备的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器还可以包括存储器控制器,以提供处理器对存储器的访问。
本发明实施例还提供了一种服务端的结构示意图,请参阅图13,该服务端1300用于实施上述实施例中提供的组织架构的同步方法。该服务端1300可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(Central Processing Units,CPU)1310(例如,一个或一个以上处理器)和存储器1330,一个或一个以上存储应用程序1323或数据1322的存储介质1320(例如一个或一个以上海量存储设备)。其中,存储器1330和存储介质1320可以是短暂存储或持久存储。存储在存储介质1320的程序可以包括一个或一个以上模块,每个模块可以包括对服务端中的一系列指令操作。更进一步地,中央处理器1310可以设置为与存储介质1320通信,在服务端1300上执行存储介质1320中的一系列指令操作。服务端1300还可以包括一个或一个以上电源1360,一个或一个以上有线或无线网络接口1350,一个或一个以上输入输出接口1340,和/或,一个或一个以上操作系统1321,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
本发明的实施例还提供了一种存储介质,所述存储介质可设置于服务端之中以保存用于实现方法实施例中一种组织架构的同步方法相关的至少一条指令、至少一段程序、代码集或指令集,该至少一条指令、该至少一段程序、该代码集或指令集由该处理器加载并执行以实现上述方法实施例提供的组织架构的同步方法。
可选地,在本实施例中,上述存储介质可以位于计算机网络的多个网络服务端中的至少一个网络服务端。可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
由上述本发明提供的一种组织架构的同步方法、客户端、服务端及介质,利用版本号和增量更新,变更所述第一节点属性序列中的所述节点的属性数据,更新并存储所述客户端同步版本号。在非首次更新时通过服务端下发增量信息,降低客户端的流量消耗、减少客户端拉取到的冗余信息,有助于对企业组织架构的快速同步。增加企业组织架构的同步的逻辑鲁棒性,如果同步过程中出现了数据错误,能够通过同步逻辑进行恢复。辅以在一些特殊情况下通过服务端下发全量信息,优化资源使用、保证同步的高效性。
需要说明的是:上述本发明实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统和服务端实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (14)
1.一种组织架构的同步方法,其特征在于,所述方法包括:
发送同步请求,同步请求中包含客户端同步版本号,所述客户端同步版本号记录当前客户端的第一节点属性序列的最大序列号,所述第一节点属性序列包括所述客户端对应的多个节点的当前属性数据;
若服务端同步版本号记录的当前服务端的总节点属性序列的最大序列号大于所述第一节点属性序列的最大序列号,所述总节点属性序列包括多个所述客户端对应的多个节点的历史属性数据,获取所述服务端下发的增量节点的属性数据,所述增量节点包括所述总节点属性序列的最大序列号与所述第一节点属性序列的最大序列号之间的序列号对应的节点;
将所述第一节点属性序列中的节点的属性数据与所述增量节点的属性数据进行对比;
请求根据所述增量节点的属性数据变更所述第一节点属性序列中的所述节点的属性数据;
更新并存储所述客户端同步版本号。
2.根据权利要求1所述的方法,其特征在于,获取所述服务端下发的增量节点的属性数据的步骤,包括:
当所述增量节点的属性数据的大小大于预设阈值,获取所述服务端下发的预设阈值的所述增量节点的属性数据;
当从所述服务端获取的所述增量节点的属性数据的大小为预设阈值,请求所述服务端继续下发所述增量节点的属性数据;
当从所述服务端获取的所述增量节点的属性数据的大小小于预设阈值,停止向所述服务端发送下发所述增量节点的属性数据的请求。
3.根据权利要求1或2任一所述的方法,其特征在于,所述节点的属性数据以哈希值的形式存储;
获取所述服务端下发的增量节点的属性数据的步骤,包括:
获取所述服务端下发的所述增量节点的属性数据的哈希值;
判断所述哈希值对应的所述属性数据的存储结构是否满足预设的存储结构;
若不满足,过滤掉所述哈希值。
4.根据权利要求3所述的方法,其特征在于,将所述第一节点属性序列中的节点的属性数据与所述增量节点的属性数据进行对比的步骤,包括:
在所述增量节点中筛选出所述客户端对应的节点;
请求根据所述增量节点的属性数据变更所述第一节点属性序列中的所述节点的属性数据的步骤,包括:
若所述增量节点包括所述客户端对应的节点,根据所述增量节点的属性数据变更对应的所述第一节点属性序列中的节点的属性数据;
若所述增量节点不包括所述客户端对应的节点,根据所述增量节点的属性数据增加所述客户端对应的节点、并同步所述第一节点属性序列中的节点的属性数据。
5.根据权利要求1所述的方法,其特征在于,发送同步请求的步骤之后,包括:
检查所述同步请求中是否包含客户端隐藏规则版本号,所述客户端隐藏规则版本号记录当前客户端查看组织架构的权限的变更次数;
当所述同步请求中包含所述客户端隐藏规则版本号,若服务端隐藏规则版本号大于所述客户端隐藏规则版本号,所述服务端隐藏规则版本号记录当前所述服务端查看组织架构的权限的变更次数,获取所述服务端下发的全量节点的属性数据;
将所述第一节点属性序列中的节点的属性数据与所述全量节点的属性数据进行对比;
请求根据所述全量节点的属性数据变更对应的所述第一节点属性序列中的所述节点的属性数据;
更新并存储所述客户端隐藏规则版本号。
6.根据权利要求1所述的方法,其特征在于,发送同步请求的步骤之后,包括:
检查所述同步请求中是否包含客户端序列号删除版本号,所述客户端序列号删除版本号记录当前客户端的第一节点属性序列的最小序列号;
当所述同步请求中包含所述客户端序列号删除版本号,若服务端序列号删除版本号记录的当前所述服务端的所述总节点属性序列的最小序列号大于所述第一节点属性序列的最小序列号,获取所述服务端下发的全量节点的属性数据;
将所述第一节点属性序列中的节点的属性数据与所述全量节点的属性数据进行对比;
请求根据所述全量节点的属性数据变更对应的所述第一节点属性序列中的所述节点的属性数据;
更新并存储所述客户端序列号删除版本号。
7.一种客户端,其特征在于,所述客户端包括:
同步请求发送模块:用于发送同步请求,同步请求中包含客户端同步版本号,所述客户端同步版本号记录当前客户端的第一节点属性序列的最大序列号,所述第一节点属性序列包括所述客户端对应的多个节点的当前属性数据;
增量节点获取模块:用于若服务端同步版本号记录的当前服务端的总节点属性序列的最大序列号大于所述第一节点属性序列的最大序列号,所述总节点属性序列包括多个所述客户端对应的多个节点的历史属性数据,获取所述服务端下发的增量节点的属性数据,所述增量节点包括所述总节点属性序列的最大序列号与所述第一节点属性序列的最大序列号之间的序列号对应的节点;
属性数据对比模块:用于将所述第一节点属性序列中的节点的属性数据与所述增量节点的属性数据进行对比;
属性数据变更模块:用于请求根据所述增量节点的属性数据变更所述第一节点属性序列中的所述节点的属性数据;
同步版本号更新模块:用于更新并存储所述客户端同步版本号。
8.根据权利要求7所述的客户端,其特征在于,增量节点获取模块包括:
属性数据获取单元:用于当所述增量节点的属性数据的大小大于预设阈值,获取所述服务端下发的预设阈值的所述增量节点的属性数据;
属性数据请求单元:用于当从所述服务端获取的所述增量节点的属性数据的大小为预设阈值,请求所述服务端继续下发所述增量节点的属性数据;
请求停止单元:用于当从所述服务端获取的所述增量节点的属性数据的大小小于预设阈值,停止向所述服务端发送下发所述增量节点的属性数据的请求。
9.根据权利要求7或8任一所述的客户端,其特征在于,所述节点的属性数据以哈希值的形式存储;
增量节点获取模块包括:
哈希值获取单元:用于获取所述服务端下发的所述增量节点的属性数据的哈希值;
存储结构判断单元:用于判断所述哈希值对应的所述属性数据的存储结构是否满足预设的存储结构;
哈希值过滤单元:用于若所述哈希值对应的所述属性数据的存储结构不满足预设的存储结构,过滤掉所述哈希值。
10.根据权利要求9所述的客户端,其特征在于,属性数据对比模块包括:
节点筛选单元:用于在所述增量节点中筛选出所述客户端对应的节点;
属性数据变更模块包括:
第一属性数据变更单元:用于若所述增量节点包括所述客户端对应的节点,根据所述增量节点的属性数据变更对应的所述第一节点属性序列中的节点的属性数据;
第二属性数据变更单元:用于若所述增量节点不包括所述客户端对应的节点,根据所述增量节点的属性数据增加所述客户端对应的节点、并同步所述第一节点属性序列中的节点的属性数据。
11.根据权利要求7所述的客户端,其特征在于,同步请求发送模块还包括:
隐藏规则版本号检查单元:用于检查所述同步请求中是否包含客户端隐藏规则版本号,所述客户端隐藏规则版本号记录当前客户端查看组织架构的权限的变更次数;
第一全量节点获取单元:用于当所述同步请求中包含所述客户端隐藏规则版本号,若服务端隐藏规则版本号大于所述客户端隐藏规则版本号,所述服务端隐藏规则版本号记录当前所述服务端查看组织架构的权限的变更次数,获取所述服务端下发的全量节点的属性数据;
第一属性数据对比单元:用于将所述第一节点属性序列中的节点的属性数据与所述全量节点的属性数据进行对比;
第一属性数据变更单元:用于请求根据所述全量节点的属性数据变更对应的所述第一节点属性序列中的所述节点的属性数据;
隐藏规则版本号更新单元:用于更新并存储所述客户端隐藏规则版本号。
12.根据权利要求7所述的客户端,其特征在于,同步请求发送模块还包括:
序列号删除版本号检查单元:用于检查所述同步请求中是否包含客户端序列号删除版本号,所述客户端序列号删除版本号记录当前客户端的第一节点属性序列的最小序列号;
第二全量节点获取单元:用于当所述同步请求中包含所述客户端序列号删除版本号,若服务端序列号删除版本号记录的当前所述服务端的所述总节点属性序列的最小序列号大于所述第一节点属性序列的最小序列号,获取所述服务端下发的全量节点的属性数据;
第二属性数据对比单元:用于将所述第一节点属性序列中的节点的属性数据与所述全量节点的属性数据进行对比;
第二属性数据变更单元:用于请求根据所述全量节点的属性数据变更对应的所述第一节点属性序列中的所述节点的属性数据;
序列号删除版本号更新单元:用于更新并存储所述客户端序列号删除版本号。
13.一种服务端,其特征在于,所述服务端包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现如权利要求1至6任一所述的组织架构的同步方法。
14.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如如权利要求1至6任一所述的组织架构的同步方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810844856.5A CN109194711B (zh) | 2018-07-27 | 2018-07-27 | 一种组织架构的同步方法、客户端、服务端及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810844856.5A CN109194711B (zh) | 2018-07-27 | 2018-07-27 | 一种组织架构的同步方法、客户端、服务端及介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109194711A true CN109194711A (zh) | 2019-01-11 |
CN109194711B CN109194711B (zh) | 2020-12-15 |
Family
ID=64937355
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810844856.5A Active CN109194711B (zh) | 2018-07-27 | 2018-07-27 | 一种组织架构的同步方法、客户端、服务端及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109194711B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110414771A (zh) * | 2019-06-04 | 2019-11-05 | 腾讯科技(深圳)有限公司 | 企业组织架构数据的更新方法、装置、服务器及客户端 |
CN111177398A (zh) * | 2019-11-29 | 2020-05-19 | 广东轩辕网络科技股份有限公司 | 一种组织架构更新方法及装置 |
CN111476534A (zh) * | 2020-03-20 | 2020-07-31 | 深圳万威科技有限公司 | 一种企业管理系统中架构版本及权限的处理方法 |
CN113496037A (zh) * | 2020-03-19 | 2021-10-12 | 腾讯科技(深圳)有限公司 | 一种组织架构权限设置方法、装置、设备及存储介质 |
CN114416767A (zh) * | 2022-03-30 | 2022-04-29 | 天津联想协同科技有限公司 | 多网段网盘账户同步方法、装置、网盘及存储介质 |
CN114726872A (zh) * | 2022-04-07 | 2022-07-08 | 平安资产管理有限责任公司 | 数据同步方法、装置、计算机设备及存储介质 |
CN115174186A (zh) * | 2022-06-30 | 2022-10-11 | 京东城市(北京)数字科技有限公司 | 通讯录可见性的处理方法、装置、设备及介质 |
CN117743651A (zh) * | 2024-02-20 | 2024-03-22 | 建信金融科技有限责任公司 | 通讯录加载的优化方法和装置 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5991782A (en) * | 1994-02-18 | 1999-11-23 | Fujitsu Limited | Automated extraction and doubly linked reference marks for partialized document contents and version control |
CN101064630A (zh) * | 2006-04-24 | 2007-10-31 | 华为技术有限公司 | 一种数据同步方法及系统 |
CN101316256A (zh) * | 2007-05-28 | 2008-12-03 | 微码(北京)移动技术有限公司 | 一种数据更新的方法 |
CN103678494A (zh) * | 2013-11-15 | 2014-03-26 | 北京奇虎科技有限公司 | 客户端同步服务端数据的方法及装置 |
CN106657170A (zh) * | 2015-10-28 | 2017-05-10 | 阿里巴巴集团控股有限公司 | 一种数据同步方法及装置 |
CN108259562A (zh) * | 2017-12-11 | 2018-07-06 | 杭州品茗安控信息技术股份有限公司 | 一种基于多端点的数据同步方法及装置 |
-
2018
- 2018-07-27 CN CN201810844856.5A patent/CN109194711B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5991782A (en) * | 1994-02-18 | 1999-11-23 | Fujitsu Limited | Automated extraction and doubly linked reference marks for partialized document contents and version control |
CN101064630A (zh) * | 2006-04-24 | 2007-10-31 | 华为技术有限公司 | 一种数据同步方法及系统 |
CN101316256A (zh) * | 2007-05-28 | 2008-12-03 | 微码(北京)移动技术有限公司 | 一种数据更新的方法 |
CN103678494A (zh) * | 2013-11-15 | 2014-03-26 | 北京奇虎科技有限公司 | 客户端同步服务端数据的方法及装置 |
CN106657170A (zh) * | 2015-10-28 | 2017-05-10 | 阿里巴巴集团控股有限公司 | 一种数据同步方法及装置 |
CN108259562A (zh) * | 2017-12-11 | 2018-07-06 | 杭州品茗安控信息技术股份有限公司 | 一种基于多端点的数据同步方法及装置 |
Non-Patent Citations (1)
Title |
---|
肖承勇: "智能客户端的研究与应用", 《西南交通大学》 * |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110414771A (zh) * | 2019-06-04 | 2019-11-05 | 腾讯科技(深圳)有限公司 | 企业组织架构数据的更新方法、装置、服务器及客户端 |
CN111177398A (zh) * | 2019-11-29 | 2020-05-19 | 广东轩辕网络科技股份有限公司 | 一种组织架构更新方法及装置 |
CN111177398B (zh) * | 2019-11-29 | 2023-07-07 | 广东轩辕网络科技股份有限公司 | 一种组织架构更新方法及装置 |
CN113496037A (zh) * | 2020-03-19 | 2021-10-12 | 腾讯科技(深圳)有限公司 | 一种组织架构权限设置方法、装置、设备及存储介质 |
CN111476534A (zh) * | 2020-03-20 | 2020-07-31 | 深圳万威科技有限公司 | 一种企业管理系统中架构版本及权限的处理方法 |
CN114416767A (zh) * | 2022-03-30 | 2022-04-29 | 天津联想协同科技有限公司 | 多网段网盘账户同步方法、装置、网盘及存储介质 |
CN114416767B (zh) * | 2022-03-30 | 2022-07-26 | 天津联想协同科技有限公司 | 多网段网盘账户同步方法、装置、网盘及存储介质 |
CN114726872A (zh) * | 2022-04-07 | 2022-07-08 | 平安资产管理有限责任公司 | 数据同步方法、装置、计算机设备及存储介质 |
CN115174186A (zh) * | 2022-06-30 | 2022-10-11 | 京东城市(北京)数字科技有限公司 | 通讯录可见性的处理方法、装置、设备及介质 |
CN115174186B (zh) * | 2022-06-30 | 2024-05-17 | 京东城市(北京)数字科技有限公司 | 通讯录可见性的处理方法、装置、设备及介质 |
CN117743651A (zh) * | 2024-02-20 | 2024-03-22 | 建信金融科技有限责任公司 | 通讯录加载的优化方法和装置 |
CN117743651B (zh) * | 2024-02-20 | 2024-05-17 | 建信金融科技有限责任公司 | 通讯录加载的优化方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109194711B (zh) | 2020-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109194711A (zh) | 一种组织架构的同步方法、客户端、服务端及介质 | |
CN110168523B (zh) | 改变监测跨图查询 | |
KR102005831B1 (ko) | 범위-기반 검색을 위한 데이터 저장 관리 | |
Chu et al. | An efficient algorithm for mining temporal high utility itemsets from data streams | |
US8949189B2 (en) | Managing storage of individually accessible data units | |
EP2344959B1 (en) | Index compression in databases | |
Chu et al. | Triangle listing in massive networks | |
US10452629B2 (en) | Automatic maintenance of a set of indexes with different currency characteristics in a database management system | |
US10417265B2 (en) | High performance parallel indexing for forensics and electronic discovery | |
CA2722320C (en) | Paging hierarchical data | |
US20030217055A1 (en) | Efficient incremental method for data mining of a database | |
WO2017151194A1 (en) | Atomic updating of graph database index structures | |
US20150302068A1 (en) | Managing Activities Over Time in an Activity Graph | |
CN104854582B (zh) | 存储高效、更新优化的事务型全文索引视图维护的方法和系统 | |
US11194840B2 (en) | Incremental clustering for enterprise knowledge graph | |
US20140071135A1 (en) | Managing activities over time in an activity graph | |
US20160070763A1 (en) | Parallel frequent sequential pattern detecting | |
US8195700B2 (en) | Distributed storage for collaboration servers | |
US20150370651A1 (en) | Directed backup for massively parallel processing databases | |
JP7153420B2 (ja) | データベース中にグラフ情報を記憶するためのb木使用 | |
US20080222112A1 (en) | Method and System for Document Searching and Generating to do List | |
Zihayat et al. | Mining high utility sequential patterns from evolving data streams | |
Dong et al. | Select actionable positive or negative sequential patterns | |
CN106873906A (zh) | 用于管理元信息的方法和装置 | |
CN114253950B (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 |