数据处理方法及装置转让专利

申请号 : CN201910528089.1

文献号 : CN110245191B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 董广雨周雪军陈洁

申请人 : 政采云有限公司

摘要 :

本申请提供数据处理方法及装置,其中所述数据处理方法用于服务器集群中的每一台服务器,所述方法包括:获取订阅器和所述订阅器的唯一标识;获取当前服务器的唯一标识;确定所述订阅器的唯一标识对应的订阅器编码以及当前服务器的唯一标识对应的当前服务器编码;判断所述订阅器编码与所述服务器编码是否匹配;在所述订阅器编码与所述服务器编码匹配的情况下,将所述订阅器存储到当前服务器,订阅器通过分布式存储的方式存储到服务器集群中,服务器集群支持存储海量的订阅器,并有很好的可拓展性,减轻每一台服务器的压力,提高服务器的处理速度。

权利要求 :

1.一种数据处理方法,其特征在于,用于服务器集群中的每一台服务器,所述方法包括:

获取订阅器和所述订阅器的唯一标识;

获取当前服务器的唯一标识;

确定所述订阅器的唯一标识对应的订阅器编码以及当前服务器的唯一标识对应的当前服务器编码;

判断所述订阅器编码与所述服务器编码是否匹配;

在所述订阅器编码与所述服务器编码匹配的情况下,将所述订阅器存储到当前服务器。

2.如权利要求1所述的数据处理方法,其特征在于,判断所述订阅器编码与所述服务器编码是否匹配包括:获取所述服务器集群中每一台服务器的服务器编码;

将获取到的服务器编码按照预设的规则排序,组成服务器编码序列,将所述订阅器编码对应映射到所述服务器编码序列的相应位置上并按照预设的查找方向在所述服务器编码序列中查找,将查找到距离所述订阅器编码映射位置最近的服务器编码记做第一服务器编码;

判断所述第一服务器编码与所述当前服务器编码是否相同:若是,则所述订阅器编码与所述服务器编码匹配;

若否,则所述订阅器编码与所述服务器编码不匹配。

3.如权利要求2所述的数据处理方法,其特征在于,将每一台服务器的服务器编码按照预设的规则排序,组成服务器编码序列,将所述订阅器编码对应映射到所述服务器编码序列的相应位置上并按照预设的查找方向在所述服务器编码序列中查找,将查找到距离所述订阅器编码映射位置最近的服务器编码记做第一服务器编码,包括:

32

将获取到的服务器编码对应映射到一个有0~2 个节点的圆环的相应节点上;

将所述订阅器编码对应映射到所述圆环的相应节点上并按照顺时针的顺序在所述圆环上查找;

将查找到距离所述订阅器编码映射节点最近的服务器编码记做第一服务器编码。

4.如权利要求1所述的数据处理方法,其特征在于,将所述订阅器存储到当前服务器包括:获取所述订阅器的指定关键字段的值;

根据所述指定关键字段的值从预先存储的键值对数据集中查找是否有与所述指定关键字段的值相对应的第一订阅器集合,其中,在所述键值对数据集中,指定关键字段的值被作为主键,订阅器集合被作为键值,所述订阅器集合中订阅器的指定关键字段的值与对应的主键相同,所述第一订阅器集合是已经存储在键值对数据集中的订阅器集合;

若是,将所述订阅器添加到所述第一订阅器集合中;

若否,新建第二订阅器集合,将所述订阅器添加到所述第二订阅器集合中,将所述指定关键字段的值与所述第二订阅器集合存储到所述键值对数据集中。

5.如权利要求1所述的数据处理方法,其特征在于,在获取订阅器和所述订阅器的唯一标识之前,还包括:

接收订阅器的更新通知;

根据所述更新通知获取更新的订阅器。

6.如权利要求4所述的数据处理方法,其特征在于,在将所述订阅器存储到当前服务器之后,还包括:

获取源数据;

对所述源数据进行语义分析,获取源数据的至少一个关键字段和至少一个指定关键字段;

获取所述指定关键字段的值,根据预先存储的键值对数据集判断当前服务器中是否有与所述源数据的指定关键字段的值相对应的目标订阅器集合;

若有,将所述源数据的关键字段的值与所述目标订阅器集合中每一个订阅器的关键字段的值比对,判断所述目标订阅器集合中是否有与所述源数据匹配的目标订阅器;

若是,则将所述源数据推送给所述目标订阅器的归属人。

7.一种数据处理方法,其特征在于,用于服务器集群中的每一台服务器,所述方法包括:

获取源数据;

对所述源数据进行语义分析,获取源数据的至少一个关键字段和至少一个指定关键字段;

获取所述指定关键字段的值,根据预先存储的键值对数据集判断当前服务器中是否有与所述源数据的指定关键字段的值相对应的目标订阅器集合;

若有,将所述源数据的关键字段的值与所述目标订阅器集合中每一个订阅器的关键字段的值比对,判断所述目标订阅器集合中是否有与所述源数据匹配的目标订阅器;

若是,将所述源数据推送给所述目标订阅器的归属人。

8.一种数据处理装置,其特征在于,用于服务器集群中的每一台服务器,所述装置包括:

第一获取模块,被配置为获取订阅器和所述订阅器的唯一标识;

第二获取模块,被配置为获取当前服务器的唯一标识;

确定模块,被配置为确定所述订阅器的唯一标识对应的订阅器编码以及当前服务器的唯一标识对应的当前服务器编码;

第一判断模块,被配置为判断所述订阅器编码与所述服务器编码是否匹配;

存储模块,被配置为在所述订阅器编码与所述服务器编码匹配的情况下,将所述订阅器存储到当前服务器。

9.如权利要求8所述的数据处理装置,其特征在于,所述第一判断模块,进一步被配置为获取所述服务器集群中每一台服务器的服务器编码;将每一台服务器的服务器编码按照预设的规则排序,组成服务器编码序列,将所述订阅器编码对应映射到所述服务器编码序列的相应位置上并按照预设的查找方向在所述服务器编码序列中查找,将查找到距离所述订阅器编码映射位置最近的服务器编码记做第一服务器编码;判断所述第一服务器编码与所述当前服务器编码是否相同:若是,则所述订阅器编码与所述服务器编码匹配;若否,则所述订阅器编码与所述服务器编码不匹配。

10.如权利要求9所述的数据处理装置,其特征在于,

32

所述第一判断模块,进一步被配置为将获取到的服务器编码对应映射到一个有0~2个节点的圆环的相应节点上;将所述订阅器编码对应映射到所述圆环的相应节点上并按照顺时针的顺序在所述圆环上查找;将查找到距离所述订阅器编码映射节点最近的服务器编码记做第一服务器编码。

11.如权利要求8所述的数据处理装置,其特征在于,所述存储模块,进一步被配置为获取所述订阅器的指定关键字段的值;根据所述指定关键字段的值从预先存储的键值对数据集中查找是否有与所述指定关键字段的值相对应的第一订阅器集合,其中,在所述键值对数据集中,指定关键字段的值被作为主键,订阅器集合被作为键值,所述订阅器集合中订阅器的指定关键字段的值与对应的主键相同,所述第一订阅器集合是已经存储在键值对数据集中的订阅器集合;若是,将所述订阅器添加到所述第一订阅器集合中;若否,新建第二订阅器集合,将所述订阅器添加到所述第二订阅器集合中,将所述指定关键字段的值与所述第二订阅器集合存储到所述键值对数据集中。

12.如权利要求8所述的数据处理装置,其特征在于,还包括:接收模块,被配置为接收订阅器的更新通知;

第四获取模块,被配置为根据所述更新通知获取更新的订阅器。

13.如权利要求11所述的数据处理装置,其特征在于还包括:第三获取模块,被配置为获取源数据;

语义分析模块,被配置为对所述源数据进行语义分析,获取源数据的至少一个关键字段和至少一个指定关键字段;

第二判断模块,被配置为获取所述指定关键字段的值,根据预先存储的键值对数据集判断当前服务器中是否有与所述源数据的指定关键字段的值相对应的目标订阅器集合:若有,将所述源数据的关键字段的值与所述目标订阅器集合中每一个订阅器的关键字段的值比对,判断所述目标订阅器集合中是否有与所述源数据匹配的目标订阅器:若是,则将所述源数据推送给所述目标订阅器的归属人。

14.一种数据处理装置,其特征在于,用于服务器集群中的每一台服务器,所述装置包括:

第三获取模块,被配置为获取源数据;

语义分析模块,被配置为对所述源数据进行语义分析,获取源数据的至少一个关键字段和至少一个指定关键字段;

第二判断模块,被配置为获取所述指定关键字段的值,根据预先存储的键值对数据集判断当前服务器中是否有与所述源数据的指定关键字段的值相对应的目标订阅器集合:若有,将所述源数据的关键字段的值与所述目标订阅器集合中每一个订阅器的关键字段的值比对,判断所述目标订阅器集合中是否有与所述源数据匹配的目标订阅器:若是,将所述源数据推送给所述目标订阅器的归属人。

15.一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,其特征在于,所述处理器执行所述指令时实现权利要求1‑6或7任意一项所述数据处理方法的步骤。

16.一种计算机可读存储介质,其存储有计算机指令,其特征在于,该指令被处理器执行时实现权利要求1‑6或7任意一项所述数据处理方法的步骤。

说明书 :

数据处理方法及装置

技术领域

[0001] 本说明书涉及互联网技术领域,特别涉及一种数据处理方法、装置、计算设备及存储介质。

背景技术

[0002] 随着互联网技术的发展,越来越多的信息直接在互联网上发布。
[0003] 目前,由于信息数量越来越多,但是不同用户或群体关心的信息内容不同,所以如果想从海量的信息中获取想要的数据就需要通过各种复杂的检索实现。
[0004] 因此,如何能快速、准确的从海量信息中获取自己关心的信息就显得尤为重要了。

发明内容

[0005] 有鉴于此,本说明书实施例提供了一种数据处理方法、装置、计算设备及存储介质,以解决现有技术中存在的技术缺陷。
[0006] 根据本说明书实施例的第一方面,提供了一种数据处理方法,用于服务器集群中的每一台服务器,所述方法包括:
[0007] 获取订阅器和所述订阅器的唯一标识;
[0008] 获取当前服务器的唯一标识;
[0009] 确定所述订阅器的唯一标识对应的订阅器编码以及当前服务器的唯一标识对应的当前服务器编码;
[0010] 判断所述订阅器编码与所述服务器编码是否匹配;
[0011] 在所述订阅器编码与所述服务器编码匹配的情况下,将所述订阅器存储到当前服务器。
[0012] 根据本说明书实施例的第二方面,提供了一种数据处理方法,用于服务器集群中的每一台服务器,所述方法包括:
[0013] 获取源数据;
[0014] 对所述源数据进行语义分析,获取源数据的至少一个关键字段和至少一个指定关键字段;
[0015] 获取所述指定关键字段的值,根据预先存储的键值对数据集判断当前服务器中是否有与所述源数据的指定关键字段的值相对应的目标订阅器集合:
[0016] 若有,将所述源数据的关键字段的值与所述目标订阅器集合中每一个订阅器的关键字段的值比对,判断所述目标订阅器集合中是否有与所述源数据匹配的目标订阅器:
[0017] 若是,将所述源数据推送给所述目标订阅器的归属人。
[0018] 根据本说明书实施例的第三方面,提供了一种数据处理装置,所述装置包括:
[0019] 第一获取模块,被配置为获取订阅器和所述订阅器的唯一标识;
[0020] 第二获取模块,被配置为获取当前服务器的唯一标识;
[0021] 确定模块,被配置为确定所述订阅器的唯一标识对应的订阅器编码以及当前服务器的唯一标识对应的当前服务器编码;
[0022] 第一判断模块,被配置为判断所述订阅器编码与所述服务器编码是否匹配;
[0023] 存储模块,被配置为在所述订阅器编码与所述服务器编码匹配的情况下,将所述订阅器存储到当前服务器。
[0024] 根据本说明书实施例的第四方面,提供了一种数据处理装置,所述装置包括:
[0025] 第三获取模块,被配置为获取源数据;
[0026] 语义分析模块,被配置为对所述源数据进行语义分析,获取源数据的至少一个关键字段和至少一个指定关键字段;
[0027] 第二判断模块,被配置为获取所述指定关键字段的值,根据预先存储的键值对数据集判断当前服务器中是否有与所述源数据的指定关键字段的值相对应的目标订阅器集
合:若有,将所述源数据的关键字段的值与所述目标订阅器集合中每一个订阅器的关键字
段的值比对,判断所述目标订阅器集合中是否有与所述源数据匹配的目标订阅器:若是,将
所述源数据推送给所述目标订阅器的归属人。
[0028] 根据本说明书实施例的第五方面,提供了一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述指令时实现所述数
据处理方法的步骤。
[0029] 根据本说明书实施例的第六方面,提供了一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现所述数据处理方法的步骤。
[0030] 本说明书实施例中提供的数据处理方法,通过用于服务器集群中的每一台服务器,所述方法包括:获取订阅器和所述订阅器的唯一标识;获取当前服务器的唯一标识;确
定所述订阅器的唯一标识对应的订阅器编码以及当前服务器的唯一标识对应的当前服务
器编码;判断所述订阅器编码与所述服务器编码是否匹配;在所述订阅器编码与所述服务
器编码匹配的情况下,将所述订阅器存储到当前服务器,订阅器通过分布式存储的方式存
储到服务器集群中,服务器集群支持存储海量的订阅器,并有很好的可拓展性,减轻每一台
服务器的压力,提高服务器的处理速度。

附图说明

[0031] 图1是本申请一实施例提供的数据处理方法的架构图;
[0032] 图2是本申请一实施例提供的一种数据处理方法的流程图;
[0033] 图3是本申请一实施例提供的判断订阅器编码与当前服务器编码是否匹配的方法的流程图;
[0034] 图4a是本申请一实施例提供的查找订阅器归属服务器的方法的流程图;
[0035] 图4b是本申请一实施例提供的查找订阅器归属服务器的方法的示意图;
[0036] 图5是本申请一实施例提供的订阅器存储方法的流程图;
[0037] 图6是本申请一实施例提供的一种数据处理方法的流程图;
[0038] 图7是本申请一实施例提供的一种数据处理装置的结构示意图;
[0039] 图8是本申请一实施例提供的一种数据处理装置的结构示意图;
[0040] 图9是本申请一实施例提供的一种电子设备的结构框图。

具体实施方式

[0041] 在下面的描述中阐述了很多具体细节以便于充分理解本申请。但是本申请能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本申请内涵的情况
下做类似推广,因此本申请不受下面公开的具体实施的限制。
[0042] 在本申请一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请一个或多个实施例。在本申请一个或多个实施例和所附权利要求书中所
使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其
他含义。还应当理解,本申请一个或多个实施例中使用的术语“和/或”是指并包含一个或多
个相关联的列出项目的任何或所有可能组合。
[0043] 应当理解,尽管在本申请一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。
例如,在不脱离本申请一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,
第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……
时”或“当……时”或“响应于确定”。
[0044] 首先,对本发明一个或多个实施涉及的名词术语进行解释。
[0045] 订阅器:用户订阅数据的关键字段和该字段的匹配规则等数据结构化后的整体描述。
[0046] 源数据:指获取信息的来源数据,可以是新闻,公告,通知等。
[0047] 关键字段:用户关心的信息的字段,如标题、发布时间、发布人、主题信息等。
[0048] 订阅服务器:订阅服务运行的服务器。
[0049] 在本申请中,提供了两种数据处理方法,本申请同时涉及两种数据处理装置,两种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
[0050] 图1是本申请一实施例提供的数据处理方法的架构图,其中服务器集群100中包括N个服务器,其中N为大于1的正整数。本申请提供的数据处理方法应用于服务器集群中的每
个服务器中。
[0051] 图2示出了根据本申请一实施例提供的数据处理方法的流程图,以图1所示的服务器101为例说明,所述数据处理方法包括步骤202至步骤210。
[0052] 步骤202:获取订阅器和所述订阅器的唯一标识。
[0053] 用户为了能准确获取发布到互联网上的信息,可以通过创建订阅器的方式在订阅器中定义自己关心内容,订阅器是用户订阅数据的关键字段和该字段的匹配规则等数据的
整体描述,只有信息同时满足订阅器中所有关键字段的匹配规则的时候,信息与该订阅器
匹配,订阅器可以通过订阅器的唯一标识确定。
[0054] 例如,获取一个订阅器,订阅器如下述表1所示,表示订阅器A有三个关键字段,并且关键字段1要与值为X的数据匹配,关键字段2要与值为Y的数据匹配,关键字段3要与值为
Y的数据匹配。
[0055] 表1
[0056]
[0057] 订阅器A可以被存储在一个订阅器数据库中,则在数据库中订阅器的ID可以作为订阅的唯一标识,例如订阅器A的唯一标识记做100。
[0058] 在本申请提供的一实施例中,用户订阅在北京当天发布的标题含有“专利”的文章,则可以创建一个订阅器如表2所示,同时获取订阅器的ID。
[0059] 表2
[0060]
[0061]
[0062] 步骤204:获取当前服务器的唯一标识。
[0063] 获取当前服务器的唯一标识,在本实施例中以服务器101为例,则服务器101为当前服务器,获取服务器101的IP地址192.168.0.1作为唯一标识。唯一标识还可以是服务器
的以太网地址或物理地址等。
[0064] 步骤206:确定所述订阅器的唯一标识对应的订阅器编码以及当前服务器的唯一标识对应的当前服务器编码。
[0065] 用预设的计算规则基于所述订阅器的唯一标识获取所述订阅器的订阅器编码,预设的计算规则可以是离散哈希算法、一致性哈希算法等;
[0066] 用相同的计算规则基于当前服务器的唯一标识获取当前服务器的服务器编码。
[0067] 在本申请提供的一实施例中,通过一致性哈希算法,基于订阅器的ID获取订阅器编码为4096,基于当前服务器的IP地址获取当前服务器的服务器编码32768。
[0068] 步骤208:判断所述订阅器编码与所述服务器编码是否匹配,若是,则执行步骤210,若否,则结束。
[0069] 判断所述订阅器编码与所述服务器编码是否匹配的方法有很多,例如当订阅器编码的尾号与服务器编码的尾号相同时则表示所述订阅器编码与所述服务器编码匹配,反之
则不匹配,判断所述订阅器编码与所述服务器编码是否匹配的方法在具体的应用过程中可
以根据实际情况确定,本申请不做限定。
[0070] 可选的,参见图3,步骤208可以通过下述步骤302至步骤310实现。
[0071] 步骤302:获取所述服务器集群中每一台服务器的服务器编码。
[0072] 获取图1所示服务器集群中每个服务器的服务器编码。
[0073] 在本申请提供的实施例中,服务器集群中有3台服务器,分别为服务器101、服务器102和服务器103,服务器101对应的服务器编码为32768,服务器102对应的服务器编码为
262144,服务器103对应的服务器编码为2097152。
[0074] 步骤304:将获取到的服务器编码按照预设的规则排序,组成服务器编码序列,将所述订阅器编码对应映射到所述服务器编码序列的相应位置上并按照预设的查找方向在
所述服务器编码序列中查找,将查找到距离所述订阅器编码映射位置最近的服务器编码记
做第一服务器编码。
[0075] 在本申请提供的实施例中,将服务器101的服务器编码32768、服务器102的服务器编码262144、服务器103的服务器编码2097152按照从小到大的顺序排列获取服务器编码序
列,获取服务器编码序列;
[0076] 订阅器编码4096按照同样的从小到大的顺序映射到所述服务器编码序列中,从订阅器编码4096映射的位置开始在所述服务器编码序列中按照从小到大的顺序查找服务器
编码,查找距离订阅器编码4096映射的位置最近的服务器编码,经过查找发现服务器编码
32768距离订阅器编码4096的映射位置最近,则将服务器编码32768记做第一服务器编码。
[0077] 实现服务器编码的排序与订阅器在服务器编码序列上的查找方式的方法有很多,在具体的应用过程中可以根据实际情况确定,本申请不做限定。
[0078] 可选的,参见图4a,步骤304可以通过下述步骤402至步骤406实现,图4b是本申请一实施例提供的查找订阅器归属服务器的方法的示意图。
[0079] 步骤402:将获取到的服务器编码对应映射到一个有0~232个节点的圆环的相应节点上。
[0080] 在本申请的实施例中,参见图4b,将获取到的服务器编码对应映射到一个有0~23232
个节点的圆环的相应节点上,其中0与2 在所述圆环的零点方向重合,将服务器101的服务
器编码32768映射到所述圆环的a位置、服务器102的服务器编码262144映射到所述圆环的b
位置、服务器103的服务器编码2097152映射到所述圆环的c位置。
[0081] 步骤404:将所述订阅器编码对应映射到所述圆环的相应节点上并按照顺时针的顺序在所述圆环上查找。
[0082] 在本申请的实施例中,将所述订阅器编码4096对应映射到所述圆环的d位置,从d位置开始以顺时针的方向在所述圆环中查找服务器编码。
[0083] 步骤406:将查找到距离所述订阅器编码映射节点最近的服务器编码记做第一服务器编码。
[0084] 在本申请的实施例中,距离订阅器编码映射位置d最近的服务器编码为服务器编码32786,则将服务器编码32786记做第一服务器编码。
[0085] 步骤306:判断所述第一服务器编码与所述当前服务器编码是否相同,若是,则执行步骤308,若否,则执行步骤310。
[0086] 在本申请的实施例中,当前服务器101的服务器编码为32786,第一服务器编码为32786,两者相同,因此进入步骤308。
[0087] 步骤308:所述订阅器编码与所述服务器编码匹配。
[0088] 步骤310:所述订阅器编码与所述服务器编码不匹配。
[0089] 步骤210:在所述订阅器编码与所述服务器编码匹配的情况下,将所述订阅器存储到当前服务器。
[0090] 在本申请实施例中,经过步骤308可以得知订阅器编码4096与所述服务器101的服务器编码32786匹配,表示订阅器属于当前服务器,可以将订阅器存储到当前服务器101中。
[0091] 可选的,参见图5,步骤210可以通过下述步骤502至步骤508实现。
[0092] 步骤502:获取所述订阅器的指定关键字段的值。
[0093] 为了便于订阅器存储,会指定订阅器中的某一个关键字段为指定关键字段,获取指定关键字段的值。
[0094] 在本申请实施例中,指定订阅器的指定关键字段为“标题信息”,获取指定关键字段的值为“专利”。
[0095] 步骤504:根据所述指定关键字段的值从预先存储的键值对数据集中查找是否有与所述指定关键字段的值相对应的第一订阅器集合,若是,则执行步骤506,若否,则执行步
骤508。
[0096] 预先存储的键值对数据集中,指定关键字段的值被作为主键,订阅器集合被作为键值,所述订阅器集合中订阅器的指定关键字段的值与对应的主键相同,根据订阅器指定
关键字段的值在键值对数据集查找,判断在当前服务器中是否存有第一订阅器集合,第一
订阅器集合是已经存储在键值对数据集中的订阅器集合。
[0097] 在本申请实施例中,订阅器指定关键字段的值为“专利”,在预先存储的键值对数据集中查找主键为“专利”的第一订阅器集合。
[0098] 步骤506:将所述订阅器添加到所述第一订阅器集合中。
[0099] 如果查找到第一订阅器集合,按照相同的指定关键字段的值将订阅器添加到第一订阅器集合中。
[0100] 在本申请实施例中,查找到当前服务器101中存有标题信息为“专利”的第一订阅器集合,将新建的订阅器添加到所述第一订阅器集合中。
[0101] 步骤508:新建第二订阅器集合,将所述订阅器添加到所述第二订阅器集合中,将所述指定关键字段的值与所述第二订阅器集合存储到所述键值对数据集中。
[0102] 如果没有查找到第一订阅器集合,则新建第二订阅器集合,将订阅器添加到新建的第二订阅器集合中,并将指定关键字段的值与第二订阅器集合对应存储到键值对数据集
中。
[0103] 本实施例提供的数据处理方法,通过服务器集群对订阅器进行分布式存储,可以将订阅器分散的存储在不同的服务器中,并且服务器集群有很好的可拓展性,在每台服务
器中根据订阅器的指定关键字段的值将订阅器分类,极大地节省了计算资源,减少冗余的
计算步骤,减轻每一台服务器的压力,提高服务器的处理速度。
[0104] 在本申请提供的另一实施例中,在图2所示的步骤202之前还可以包括步骤S1至S2。
[0105] S1:接收订阅器的更新通知。
[0106] 用户新建订阅器或更新订阅器时,可以通过一个应用程序协调服务发布更新通知,更新通知中携带订阅器的标识信息,服务器接收应用程序协调服务发布的更新通知。
[0107] S2:根据所述更新通知获取更新的订阅器。
[0108] 根据更新通知中携带的订阅器的标识信息,从订阅器服务器中获取更新的订阅器。
[0109] 本实施例提供的数据处理方法,通过引入应用程序协调服务,使服务器仅获取有更新的订阅器,减轻了服务器的工作压力,提高了服务器的工作效率,通过服务器集群对订
阅器进行分布式存储,可以将订阅器分散的存储在不同的服务器中,并且服务器集群有很
好的可拓展性,在每台服务器中根据订阅器的指定关键字段的值将订阅器分类,极大地节
省了计算资源,减少冗余的计算步骤,减轻每一台服务器的压力,提高服务器的存储订阅器
的处理速度。
[0110] 在本申请提供的另一实施例中,在图2所示的步骤210之后还可以包括以下步骤:
[0111] 获取源数据;
[0112] 对所述源数据进行语义分析,获取源数据的至少一个关键字段和至少一个指定关键字段;
[0113] 获取所述指定关键字段的值,根据预先存储的键值对数据集判断当前服务器中是否有与所述源数据的指定关键字段的值相对应的目标订阅器集合:
[0114] 若有,将所述源数据的关键字段的值与所述目标订阅器集合中每一个订阅器的关键字段的值比对,判断所述目标订阅器集合中是否有与所述源数据匹配的目标订阅器:
[0115] 若是,则将所述源数据推送给所述目标订阅器的归属人。
[0116] 本实施例提供的数据处理方法,通过服务器集群对订阅器进行分布式存储,可以将订阅器分散的存储在不同的服务器中,并且服务器集群有很好的可拓展性,在每台服务
器中根据订阅器的指定关键字段的值将订阅器分类,极大地节省了计算资源,减少冗余的
计算步骤,减轻每一台服务器的压力,提高服务器的存储订阅器的处理速度,在获取源数据
时,用源数据的关键字段的值与订阅器集合的指定关键字段的值匹配可以筛选大部分的订
阅器,极大地节省了资源,减轻服务器的工作压力,提高了源数据匹配订阅器的工作效率。
[0117] 图6示出了根据本申请一实施例的一种数据处理方法的流程图,以图1所示的服务器101为例说明,所述方法包括步骤602至步骤610。
[0118] 步骤602:获取源数据。
[0119] 当有新的信息或公告发布时,所述新的信息或公告就是源数据,源数据可以是新闻、咨询、公告信息等。
[0120] 在本申请实施例中,获取一篇发布于北京的文章,文章的标题含有“专利”,将这篇文章作为源数据。
[0121] 步骤604:对所述源数据进行语义分析,获取源数据的至少一个关键字段和至少一个指定关键字段。
[0122] 通过快速文本分类器对所述源数据进行文本语义分析,获取源数据的关键字段,并指定至少一个关键字段为指定关键字段。
[0123] 在本申请实施例中,对获取的文章进行文本语义分析,获取所述文章的关键字段如表3所示,指定文章中的标题信息为指定关键字段。
[0124] 表3
[0125]
[0126] 步骤606:获取所述指定关键字段的值,根据预先存储的键值对数据集判断当前服务器中是否有与所述源数据的指定关键字段的值相对应的目标订阅器集合,若是,则执行
步骤608,若否,则结束。
[0127] 预先存储的键值对数据集中,指定关键字段的值被作为主键,订阅器集合被作为键值,所述订阅器集合中订阅器的指定关键字段的值与对应的主键相同。
[0128] 在本申请实施例中,根据文章的指定关键字段的值“专利”,在预先存储的键值对数据集中查找指定关键字段为标题信息,并且标题信息为“专利”的订阅器集合,如果查找
指定关键字段为标题信息且标题信息包含“专利”的订阅器则执行步骤608,否则就结束。
[0129] 步骤608:将所述源数据的关键字段的值与所述目标订阅器集合中每一个订阅器的关键字段的值比对,判断所述目标订阅器集合中是否有与所述源数据匹配的目标订阅
器,若是,则执行步骤610,若否,则结束。
[0130] 根据源数据指定关键字段的值检索到与之对应的目标订阅器集合,目标订阅器集合中包含的订阅器的指定关键字段的值都与源数据的指定关键字段的值相同,将源数据与
目标订阅器中的订阅器依次比对,获取与源数据匹配的订阅器。
[0131] 在本申请实施例中,获取所述文章的标题信息的值检索到目标订阅器集合,目标订阅器集合中有2个订阅器,将所述文章与目标订阅器集合中的2个订阅器依次比对,在比
对第1个订阅器时,所述文章的关键字段和关键字段的值与订阅器的关键字段和关键字段
的值相同,则第1个订阅器为目标订阅器,在比对第2个订阅器时,第二个订阅器订阅的是发
布地区为“上海”的文章,与所述文章不符,所第2个订阅器不是目标订阅器。
[0132] 步骤610:将所述源数据推送给所述目标订阅器的归属人。
[0133] 目标订阅器的归属人是创建该订阅器的用户,归属人通过订阅器获取与订阅器内容相关的信息,将源数据推送给目标订阅器的归属人,完成用户的订阅行为。
[0134] 本实施例提供的数据处理方法,在获取源数据时,用源数据的关键字段的值与订阅器集合的指定关键字段的值匹配可以筛选大部分的订阅器,极大地节省了资源,减轻每
台服务器的工作压力,提高了工作效率。
[0135] 与上述方法实施例相对应,本申请还提供了一种数据处理装置实施例,图7示出了本申请一实施例的数据处理装置的结构示意图。用于服务器集群中的每一台服务器,如图7
所示,该装置包括:
[0136] 接收模块702,被配置为接收订阅器的更新通知。
[0137] 第四接收模块703,被配置为根据所述更新通知获取更新的订阅器。
[0138] 第一获取模块704,被配置为获取订阅器和所述订阅器的唯一标识。
[0139] 第二获取模块706,被配置为获取当前服务器的唯一标识。
[0140] 确定模块708,被配置为确定所述订阅器的唯一标识对应的订阅器编码以及当前服务器的唯一标识对应的当前服务器编码。
[0141] 第一判断模块710,被配置为判断所述订阅器编码与所述服务器编码是否匹配。
[0142] 所述第一判断模块710,进一步被配置为获取所述服务器集群中每一台服务器的服务器编码;将每一台服务器的服务器编码按照预设的规则排序,组成服务器编码序列,将
所述订阅器编码对应映射到所述服务器编码序列的相应位置上并按照预设的查找方向在
所述服务器编码序列中查找,将查找到距离所述订阅器编码映射位置最近的服务器编码记
做第一服务器编码;判断所述第一服务器编码与所述当前服务器编码是否相同:若是,则所
述订阅器编码与所述服务器编码匹配;若否,则所述订阅器编码与所述服务器编码不匹配。
[0143] 所述第一判断模块710,进一步被配置为将获取到的服务器编码对应映射到一个32
有0~2 个节点的圆环的相应节点上;将所述订阅器编码对应映射到所述圆环的相应节点
上并按照顺时针的顺序在所述圆环上查找;将查找到距离所述订阅器编码映射节点最近的
服务器编码记做第一服务器编码。
[0144] 存储模块712,被配置为在所述订阅器编码与所述服务器编码匹配的情况下,将所述订阅器存储到当前服务器。
[0145] 所述存储模块712,进一步被配置为获取所述订阅器的指定关键字段的值;根据所述指定关键字段的值从预先存储的键值对数据集中查找是否有与所述指定关键字段的值
相对应的第一订阅器集合,其中,在所述键值对数据集中,指定关键字段的值被作为主键,
订阅器集合被作为键值,所述订阅器集合中订阅器的指定关键字段的值与对应的主键相
同:若是,将所述订阅器添加到所述第一订阅器集合中;若否,新建第二订阅器集合,将所述
订阅器添加到所述第二订阅器集合中,将所述指定关键字段的值与所述第二订阅器集合存
储到所述键值对数据集中。
[0146] 第三获取模块714,被配置为获取源数据。
[0147] 语义分析模块716,被配置为对所述源数据进行语义分析,获取源数据的至少一个关键字段和至少一个指定关键字段。
[0148] 第二判断模块718,被配置为获取所述指定关键字段的值,根据预先存储的键值对数据集判断当前服务器中是否有与所述源数据的指定关键字段的值相对应的目标订阅器
集合:若有,将所述源数据的关键字段的值与所述目标订阅器集合中每一个订阅器的关键
字段的值比对,判断所述目标订阅器集合中是否有与所述源数据匹配的目标订阅器:若是,
则将所述源数据推送给所述目标订阅器的归属人。
[0149] 本实施例提供的数据处理装置,运行上述数据处理步骤,通过用服务器集群的方式对订阅器进行分布式存储,可以将订阅器分散的存储在不同的服务器中,可以支持存储
海量的订阅器,并有很好的可拓展性,在每台服务器中根据订阅器的指定关键字段的值将
订阅器分类,极大地节省了计算资源,减少冗余的计算步骤,减轻每一台服务器的压力,提
高服务器的处理速度。
[0150] 上述为本实施例的一种数据处理装置的示意性方案。需要说明的是,该数据处理装置的技术方案与上述的数据处理方法的技术方案属于同一构思,数据处理装置的技术方
案未详细描述的细节内容,均可以参见上述数据处理方法的技术方案的描述。
[0151] 与上述方法实施例相对应,本申请还提供了一种数据处理装置实施例,图8示出了本申请一实施例的一种数据处理装置的结构示意图。如图8所示,用于服务器集群中的每一
台服务器,该装置包括:
[0152] 第三获取模块802,被配置为获取源数据;
[0153] 语义分析模块804,被配置为对所述源数据进行语义分析,获取源数据的至少一个关键字段和至少一个指定关键字段;
[0154] 第二判断模块806,被配置为获取所述指定关键字段的值,根据预先存储的键值对数据集判断当前服务器中是否有与所述源数据的指定关键字段的值相对应的目标订阅器
集合:若有,将所述源数据的关键字段的值与所述目标订阅器集合中每一个订阅器的关键
字段的值比对,判断所述目标订阅器集合中是否有与所述源数据匹配的目标订阅器:若是,
将所述源数据推送给所述目标订阅器的归属人。
[0155] 本实施例提供的数据处理装置,运行上述数据处理步骤,在获取源数据时,用源数据的关键字段的值与订阅器集合的指定关键字段的值匹配可以筛选大部分的订阅器,极大
地节省了计算资源,减少冗余的计算步骤,减轻每一台服务器的压力,提高服务器的处理速
度。
[0156] 图9示出了根据本申请一实施例的电子设备900的结构框图。该电子设备900的部件包括但不限于存储器910和处理器920。处理器920与存储器910通过总线930相连接,数据
库950用于保存数据。
[0157] 电子设备900还包括接入设备940,接入设备940使得电子设备900能够经由一个或多个网络960通信。这些网络的示例包括公用交换电话网(PSTN)、局域网(LAN)、广域网
(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。接入设备840可以包括有线或无线的
任何类型的网络接口(例如,网络接口卡(NIC))中的一个或多个,诸如IEEE802.11无线局域
网(WLAN)无线接口、全球微波互联接入(Wi‑MAX)接口、以太网接口、通用串行总线(USB)接
口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。
[0158] 在本申请的一个实施例中,电子设备900的上述部件以及图9中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图9所示的电子设备结构框图仅仅是出于示
例的目的,而不是对本申请范围的限制。本领域技术人员可以根据需要,增添或替换其他部
件。
[0159] 电子设备900可以是任何类型的静止或移动电子设备,包括移动计算机或移动电子设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动
电话(例如,智能手机)、可佩戴的电子设备(例如,智能手表、智能眼镜等)或其他类型的移
动设备,或者诸如台式计算机或PC的静止电子设备。电子设备900还可以是移动式或静止式
的服务器。
[0160] 其中,处理器920用于执行上述任意一项所述数据处理方法的步骤。
[0161] 本说明书一实施例中还提供一种计算设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机指令,所述处理器执行所述指令时实现所述的数据处理方
法的步骤。
[0162] 本说明书一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现如前所述数据处理方法的步骤。
[0163] 上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的数据处理方法的技术方案属于同一构思,存储介质的技术方案
未详细描述的细节内容,均可以参见上述数据处理方法的技术方案的描述。
[0164] 上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来
执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺
序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可
以的或者可能是有利的。
[0165] 所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所
述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储
器、只读存储器(ROM,Read‑Only Memory)、随机存取存储器(RAM,Random Access Memory)、
电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内
容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖
区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
[0166] 需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本说明书并不受所描述的动作顺序的限制,因
为依据本说明书,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该
知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本
说明书所必须的。
[0167] 在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
[0168] 以上公开的本说明书优选实施例只是用于帮助阐述本说明书。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内
容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本说
明书的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本说明书。本
说明书仅受权利要求书及其全部范围和等效物的限制。