一种数据反馈方法、系统及存储介质与流程

文档序号:20617555发布日期:2020-05-06 20:21阅读:142来源:国知局
一种数据反馈方法、系统及存储介质与流程

本发明涉及数据处理技术领域,特别涉及一种数据反馈方法、系统及存储介质。



背景技术:

在大数据查询中,为了提高查询效率和减少数据存储容量,往往会对原始查询结果列表中的某些列进行压缩处理,例如,将长id(identification,身份标识)映射为短的id储存,或者只储存id不储存名称等等,而在用户查询成功之后,再在原始查询结果列表上新加列以补充必要的数据。上述在原始查询结果列表上新加列以补充数据的过程称为数据反馈,例如,对于原始查询结果为视频id的列,在该列之后新加一列为视频的名称,这个过程即为数据反馈。

相关技术中,针对不同列的反馈任务需要编写不同的反馈程序,且每个反馈程序需要独立提交运行,不仅开发成本高、灵活性差,而且反馈效率低。



技术实现要素:

为了解决现有技术的问题,本发明实施例提供了一种数据反馈方法、系统及存储介质。所述技术方案如下:

一方面,提供了一种数据反馈方法,应用于数据反馈系统,所述数据反馈系统包括分布式计算服务集群、分布式协调服务集群和分布式存储服务集群,所述方法包括:

所述分布式计算服务集群从分布式协调服务集群的元数据节点获取全量待反馈字段的元数据;

所述分布式计算服务集群根据所述全量待反馈字段的元数据,从所述分布式存储服务集群获取每个待反馈字段对应的反馈配置文件;

所述分布式计算服务集群监听所述分布式协调服务集群的任务节点,当监听到所述任务节点更新时,获取更新至所述任务节点的目标反馈任务;所述目标反馈任务包括目标待反馈字段的字段标识;

所述分布式计算服务集群根据所述目标待反馈字段的字段标识,确定与所述目标反馈任务对应的目标反馈配置文件;

所述分布式计算服务集群根据所述目标反馈配置文件执行所述目标反馈任务,得到反馈结果列表;所述反馈结果列表包括与所述目标待反馈字段对应的反馈字段。

另一方面,提供了一种数据反馈系统,包括分布式计算服务集群、分布式协调服务集群和分布式存储服务集群,所述分布式计算服务集群用于:

从分布式协调服务集群的元数据节点获取全量待反馈字段的元数据;

根据所述全量待反馈字段的元数据,从所述分布式存储服务集群获取每个待反馈字段对应的反馈配置文件;

监听所述分布式协调服务集群的任务节点,当监听到所述任务节点更新时,获取更新至所述任务节点的目标反馈任务;所述目标反馈任务包括目标待反馈字段的字段标识;

根据所述目标待反馈字段的字段标识,确定与所述目标反馈任务对应的目标反馈配置文件;

根据所述目标反馈配置文件执行所述目标反馈任务,得到反馈结果列表;所述反馈结果列表包括与所述目标待反馈字段对应的反馈字段。

作为一个可选的实施方式,所述数据反馈系统还包括监控服务器,所述监控服务器存储有全量待反馈字段的元数据和每个所述待反馈字段对应的反馈配置文件;所述监控服务器用于:

判断本地存储的待反馈字段的元数据是否更新;

当本地存储的待反馈字段的元数据更新时,确定所述更新对应的更新类型;

根据所述更新类型控制所述分布式协调服务集群对所述元数据节点进行更新;以及控制所述分布式存储服务集群对存储的反馈配置文件进行更新。

另一方面,提供了一种服务器,包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、至少一段程序、代码集或指令集由所述处理器加载并执行以实现如上述方法实施例所提供的数据反馈方法。

另一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由处理器加载并执行以实现如上述的数据反馈方法。

本发明实施例中分布式计算服务集群拥有全量待反馈字段的反馈配置文件,且分布式计算服务集群实时监听分布式协调服务集群的任务节点,由任务节点的更新触发分布式计算服务集群从全量待反馈字段的反馈配置文件中获取目标反馈配置文件,并基于该目标反馈配置文件执行数据反馈,从而针对不同字段的反馈任务,无需编写不同的反馈程序,降低了开发成本,大大提高了反馈的效率和灵活性,能够实现秒级数据反馈。同时该方法的扩展性好,只需要增加集群中机器的数量就能应对查询结果数据的不断增长,可以实现容量为pb级别的数据反馈。

附图说明

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1(a)是本发明实施例提供的数据反馈系统的一种可选架构示意图;

图1(b)是本发明实施例提供的数据反馈系统的另一种可选架构示意图;

图2是本发明实施例提供的一种数据反馈方法的流程示意图;

图3(a)所示为原始查询结果列表的一个示例的示意图;

图3(b)为采用本发明实施例的数据反馈方法对3(a)处理之后得到的反馈结果列表的一个示例的示意图;

图4是本发明实施例提供的另一种数据反馈方法的流程示意图;

图5(a)和图5(b)是本发明实施例提供的另一种数据反馈方法的示意图;

图6是本发明实施例提供的一种服务器的硬件结构框图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或服务器不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

请参阅图1(a),其所示为本发明实施例提供的数据反馈系统的一种可选架构示意图,如图1(a)所示,该数据反馈系统100可以包括分布式计算服务集群110、分布式协调服务集群120、分布式存储服务集群130和代理服务器140。

对于集群(110、120、130),从物理层面来说,可以包括多个服务器,从虚拟层面来说,可以包括多个节点。其中,节点指的是某个独立的server进程,可以用ip端口来区分,节点可以部署在一台或者多台服务器上,一般来说一台物理服务器独立部署一个节点,以实现高可用。图1(a)中的111、121、31可以是服务器,也可以是节点,本发明对此不作限制。

分布式计算服务集群110可以提供基于分布式计算的大数据分析引擎,本说明书实施例中,分布式计算服务集群110可以为基于内存的大数据分布式计算框架spark集群。spark是由加州大学伯克利分校“算法机器人类实验室(algorithmsmachinespeople,amplab)”开发的通用内存并行计算框架,用来构建大型的、低延迟的数据分析应用程序。它扩展了广泛使用的mapreduce计算模型,高效的支撑更多计算模式,包括交互式查询和流处理。spark的一个主要特点是能够在内存中进行计算,及时依赖磁盘进行复杂的运算。

分布式协调服务集群120可以为分布式计算服务集群110提供一致性服务,该一致性服务可以但不限于包括配置管理、集群管理等。本说明书实施例中,分布式协调服务集群120可以但不限于为zookeeper集群,zookeeper是google的chubby一个开源的实现。

分布式协调服务集群120可以包括元数据节点122和任务节点123。其中,元数据节点122用来记录相关文件内容的元数据,该元数据为相关文件内容的索引信息,具有占用存储空间少、数据众多、可靠性和可用性要求高等特点。任务节点123用来记录每一个任务的执行信息,任务节点123与元数据节点122之间一般不进行通信。

本说明书实施例中,分布式协调服务集群120允许分布式计算服务集群120对元数据节点122和任务节点123进行实时监听,当元数据节点122和任务节点123上有变化时,会触发将相应的事件通知给分布式计算服务集群120。

分布式存储服务集群130可以为数据反馈系统100提供分布式存储,本说明书实施例中,分布式存储服务集群130可以但不限于为hadoop分布式文件系统hdfs,hdfs是一个高度容错性的系统,适合部署在廉价的机器上,hdfs能提供高吞吐量的数据访问,非常适合大规模数据集上的应用。

代理服务器140可以是一个独立运行的服务器,也可以是由多个服务器组成的服务器集群。其中,代理服务器140可以用于与用户进行交互,负责接收用户的任务请求,并将该任务请求发送给分布式协调服务集群120,以及从分布式协调服务集群120获取任务的执行结果,并向用户返回该执行结果。本说明书实施例中,上述任务请求可以是数据反馈任务请求。

在一个可选的实施方式中,数据反馈系统100还可以包括监控服务器150,如图1(b)所示,该监控服务器150本地存储有全量待反馈字段的元数据和每个所述待反馈字段对应的反馈配置文件,监控服务器150可以通过网络分别与分布式协调服务集群120和分布式存储服务集群130连接通信,该网络可以为有线网络,也可以为无线网络。其中,关于字段、待反馈字段以及反馈配置文件将在本说明书实施例的后续内容中进行详细介绍。

请参阅图2,其所示为本发明实施例提供的一种数据反馈方法的流程示意图,该方法可以应用于数据反馈系统100。需要说明的是,本说明书提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的系统或产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。具体的如图2所示,所述方法可以包括:

s201,分布式计算服务集群从分布式协调服务集群的元数据节点获取全量待反馈字段的元数据。

本说明书实施例中,可以将表的“行”和“列”称为字段,每个字段包含同一属性信息,例如“名称”字段,“id”字段等等。以在查询结果为视频id的列后面新加一列为视频名称的列为例,视频id的列为一个字段,该字段的属性信息为视频id,视频名称的列为一个字段,该字段的属性信息为视频名称。

待反馈字段为原始查询结果列表中需要进行数据反馈的字段,反馈字段为与待反馈字段对应的数据反馈的结果,仍以在查询结果为视频id的列后面新加一列为视频名称的列为例,其中,视频id的列即为待反馈字段,视频名称的列即为与视频id对应的反馈字段。

本说明书实施例中,待反馈字段的元数据可以包括待反馈字段对应的反馈配置文件的索引信息,该索引信息可以但不限于包括待反馈字段的字段标识(如字段属性信息,可以包括名称、id等)、相应反馈配置文件的存储路径、反馈配置文件的文件标识(如文件名称等)以及反馈配置文件最近一次更新的时间戳等等。全量待反馈字段的元数据是指所有待反馈字段的元数据。待反馈字段的字段标识用于系统唯一确定一个待反馈字段,反馈配置文件的文件标识用于系统唯一确定一个反馈配置文件。

本说明书实施例中,可以预先将全量待反馈字段的元数据存储到分布式协调服务集群的元数据节点上,具体的实施中,分布式协调服务集群可以为每个待反馈字段创建一个与其对应的元数据节点,该元数据节点用于记录相应待反馈字段的元数据。可以理解的,分布式协调服务集群也可以将多个待反馈字段的元数据存储在同一元数据节点上。以下为本说明书实施例提供的一种元数据节点存储的元数据的具体结构示例:

其中,“confkey:配置文件中指定的主键”即为待反馈字段的字段标识的一种体现。

实际应用中,分布式计算服务集群可以包括master主节点和worker从节点,master主节点控制整个分布式计算服务集群,并监控worker从节点;worker从节点负责计算,启动反馈执行器executor,该反馈执行器executor为运行在worker从节点上的一个进程,该进程负责执行反馈任务,每个反馈执行器executor中可以有多个task线程。其中,master主节点可以与分布式协调服务集群的元数据节点连接,从元数据节点获取全量待反馈字段的元数据。

s203,分布式计算服务集群根据所述全量待反馈字段的元数据,从所述分布式存储服务集群获取每个待反馈字段对应的反馈配置文件。

本说明书实施例中,反馈配置文件中定义了相应待反馈字段的具体反馈规则,可以将反馈配置文件理解为字典,在该字典中可以查找到相应待反馈字段中每个数据项对应的反馈项,例如将数据项“qqlive”的反馈项定义为“腾讯视频”,所有反馈项即构成了反馈字段。可以理解的,反馈规则不限于上述简单的定义方式,实际应用中还可以根据需要设置各种复杂的映射函数以得到需要的反馈项。

本说明书实施例中,可以预先将所有待反馈字段的反馈配置文件存储到分布式存储服务集群中,分布式计算服务集群可以根据每个待反馈字段的元数据从分布式存储服务集群中获取每个待反馈字段对应的反馈配置文件。具体的实施中,可以由分布式计算服务集群的master主节点根据全量待反馈字段的元数据从分布式存储服务集群加载所有待反馈字段的反馈配置文件,然后由master主节点将该全量待反馈字段的反馈配置文件广播给分布式计算服务集群中的所有worker从节点。

s205,分布式计算服务集群监听所述分布式协调服务集群的任务节点,当监听到所述任务节点更新时,获取更新至所述任务节点的目标反馈任务。

其中,所述目标反馈任务包括目标待反馈字段的字段标识,目标反馈任务为尚未执行的需要进行数据反馈的新任务。

本说明书实施例中,分布式计算服务集群加载完全量待反馈字段的反馈配置文件后即可对分布式协调服务集群的任务节点进行监听,当监听到任务节点更新时,获取更新至任务节点的目标反馈任务。

在图1(a)和图1(b)的数据系统100中,代理服务器140可以接收用户(如提供查询服务的服务器)的反馈任务请求,该反馈任务请求中即携带有目标待反馈字段的字段标识,当然还可以携带有原始查询结果列表的相关信息,例如,原始查询结果列表的存储路径等。代理服务器140将该反馈任务请求发送给分布式协调服务集群120,分布式协调服务集群120根据该反馈任务请求创建新的目标反馈任务,并基于该新的目标反馈任务对任务节点进行更新。其中,目标反馈任务中可以包括任务id、任务的执行状态、目标待反馈字段的字段标识以及原始查询结果列表的存储路径等信息。可以理解的,目标待反馈字段为原始查询结果列表中的字段。

当任务节点更新完成之后,分布式协调服务集群可以将更新事件消息发送给分布式计算服务集群,该更新事件消息可以携带新的目标反馈任务的任务id,相应的,分布式计算服务集群根据该任务id从任务节点获取目标反馈任务。

s207,分布式计算服务集群根据所述目标待反馈字段的字段标识,确定与所述目标反馈任务对应的目标反馈配置文件。

本说明书实施例中,分布式计算服务集群在获得目标反馈任务后,可以通过反馈解析层对该目标反馈任务进行解析,解析过程中,首先查找包含目标待反馈字段的字段标识的目标元数据,从该目标元数据中获取目标待反馈字段的字段标识对应的目标反馈配置文件的文件标识,进一步根据目标反馈配置文件的文件标识获取目标反馈配置文件,从而确定目标反馈任务对应的目标反馈配置文件。

s209,分布式计算服务集群根据所述目标反馈配置文件执行所述目标反馈任务,得到反馈结果列表。

其中,所述反馈结果列表包括与所述目标待反馈字段对应的反馈字段。

本说明书实施例中,分布式计算服务集群在解析完目标反馈任务后,可以将该目标反馈任务放入待执行任务队列,然后由反馈执行器executor中的task线程从待执行队列中拉取目标反馈任务,根据该目标反馈任务对应的目标反馈配置文件执行该目标反馈任务,得到包括与所述目标待反馈字段对应的反馈字段的反馈结果列表。

本说明书实施例中,目标反馈任务中还包括原始查询结果列表的存储路径,例如,原始查询结果列表在hdfs中的存储路径,分布式计算服务集群在执行目标反馈任务时,可以先根据原始查询结果列表的存储路径获取该原始查询结果列表,然后根据目标反馈配置文件和原始查询结果列表执行目标反馈任务,得到反馈结果列表,该反馈结果列表中可以包括原始查询结果列表中的原有字段,以及与目标待反馈字段对应的反馈字段。如图3(a)所示为原始查询结果列表,图3(b)为采用本发明实施例的数据反馈方法对3(a)处理之后得到的反馈结果列表,该反馈结果列表与原始查询结果列表相比补充了多列信息。

实际应用中,分布式计算服务集群在目标反馈任务执行完成得到反馈结果列表之后,可以将该反馈结果列表存储至分布式存储服务集群,并从分布式存储服务集群获取该反馈结果列表的存储路径,得到反馈结果路径,然后将该反馈结果路径发送给分布式协调服务集群的任务节点,由该任务节点根据反馈结果路径更新目标反馈任务的任务状态。具体的,任务节点可以将目标反馈任务的任务状态由尚未执行更新为执行成功,同时记录反馈结果路径。以下为本说明书实施例提供的一种任务节点中目标反馈任务的具体结构示例:

在图1(a)和图1(b)的数据系统100中,代理服务器140可以对任务节点123中的目标反馈任务进行监听,当监听到目标反馈任务的任务状态更新后,获取目标反馈任务的任务状态,在任务状态为执行成功时,可以获取目标反馈任务中记录的反馈结果路径,并根据该反馈结果路径获取相应的反馈结果列表,将该反馈结果列表返回给用户(如提供查询服务的服务器)。

可以理解的,实际应用中,分布式计算服务集群中可能没有目标反馈配置文件,也即根据目标待反馈字段的字段标识查找不到相匹配的目标反馈配置文件,此时,分布式计算服务集群可以向分布式计算服务集群的任务节点返回任务执行失败的消息,任务节点根据该任务执行失败的消息将目标反馈任务的任务状态更新为执行失败,代理服务器140根据该任务状态向用户返回数据反馈失败的消息。

由本发明实施例的上述技术方案可见,本发明实施例中分布式计算服务集群拥有全量待反馈字段的反馈配置文件,且分布式计算服务集群实时监听分布式协调服务集群的任务节点,由任务节点的更新触发分布式计算服务集群从全量待反馈字段的反馈配置文件中获取目标反馈配置文件,并基于该目标反馈配置文件执行数据反馈,从而针对不同字段的反馈任务,无需编写不同的反馈程序,降低了开发成本,大大提高了反馈的效率,能够实现秒级数据反馈。对于spark集群,由于spark集群实时监听zookeeper集群中任务节点的变化,也即spark程序在内存中一直处于运行状态,可以省去spark分配资源的过程,这也有利于提高数据反馈的反馈效率。

同时,本发明实施例的扩展性好,只需要增加集群中机器的数量就能应对查询结果数据的不断增长,可以实现容量为pb级别的数据反馈。

为了实现对分布式计算服务集群中的反馈配置文件进行实时更新,本发明实施例还提供了另一种数据反馈方法,如图4所示,该方法还可以包括:

s211,分布式计算服务集群监听所述分布式协调服务集群的元数据节点。

本说明书实施例中,分布式计算服务集群可以对分布式协调服务集群的元数据节点进行实时监听。

s213,当监听到所述元数据节点更新时,所述分布式计算服务集群获取更新至所述元数据节点的更新元数据。

本说明书实施例中,元数据节点的更新可以包括新增元数据节点、删除元数据节点、已有元数据节点中元数据内容的修改(例如新增元数据内容、更改元数据内容、删除元数据内容)。

其中,更新至元数据节点的更新元数据可以包括新增元数据节点中的元数据,也可以包括已有元数据节点中修改后的元数据。

s215,分布式计算服务集群从分布式存储服务集群获取所述更新元数据对应的更新反馈配置文件。

其中,更新反馈配置文件为与更新元数据相对应的反馈配置文件。分布式计算服务集群可以根据更新元数据从分布式存储服务集群加载该更新元数据对应的更新反馈配置文件,从而可以实现对分布式计算集群中的反馈配置文件进行实时更新。

图5(a)为本发明实施例提供的另一种数据反馈方法的流程示意图,图5(b)为与图5(a)对应的交互示意图,如图所示,在步骤s213之前,所述方法还可以包括:

s501,监控服务器判断本地存储的待反馈字段的元数据是否更新。

本说明书实施例中,监控服务器本地存储有全量待反馈字段的元数据和每个所述待反馈字段对应的反馈配置文件。

具体的实施中,监控服务器可以通过一个本地常驻监听进程每隔预设时间间隔对本地存储的待反馈字段的元数据进行监听,判断本地存储的待反馈字段的元数据是否有更新,当本地存储的待反馈字段的元数据更新时,执行步骤s503至s505。

其中,预设时间间隔可以根据实际需要进行设定,预设时间间隔设置的越小,分布式计算服务集群中的反馈配置文件更新的越及时,越有利于提高反馈任务的执行成功率;反之,预设时间间隔设置的越大,分布式计算服务集群中的反馈配置文件更新的越慢,不利于提高反馈任务的执行成功率。

s503,当本地存储的待反馈字段的元数据更新时,所述监控服务器确定所述更新对应的更新类型。

本说明书实施例中,更新类型可以包括新增待反馈字段、修改待反馈字段和删除待反馈字段。其中,新增待反馈字段是指在监控服务器本地增加新的待反馈字段的元数据;修改待反馈字段是指对本地已有待反馈字段的元数据中的具体内容进行修改;删除待反馈字段是指对本地已有待反馈字段的元数据进行删除。

s505,监控服务器根据所述更新类型控制所述分布式协调服务集群对所述元数据节点进行更新;以及控制所述分布式存储服务集群对存储的反馈配置文件进行更新。

在步骤s505的具体实施中,当更新类型为新增待反馈字段时,监控服务器可以获取新的待反馈字段的反馈配置文件,将该新的待反馈字段的反馈配置文件存储至分布式存储服务集群中;之后,监控服务器可以控制分布式协调服务集群新增与新的待反馈字段对应的元数据节点,具体的,监控服务器可以将新的待反馈字段的元数据发送给分布式协调服务集群,相应的,分布式协调服务集群基于该新的待反馈字段的元数据创建相应的元数据节点。

当更新类型为修改待反馈字段时,监控服务器可以获取被修改的待反馈字段对应的反馈配置文件,可以理解的,被修改的待反馈字段对应的反馈配置文件可能与修改前一致,也可能与修改前不一致,本说明书实施例中,为了提高更新效率,在更新类型为修改反馈字段时,将被修改的待反馈字段对应的反馈配置文件重新发送给分布式存储服务集群,以覆盖相应的原反馈配置文件;之后,监控服务器可以控制分布式协调服务集群修改与被修改的待反馈字段对应的元数据,具体的,监控服务器可以将修改后的元数据发送给分布式协调服务集群,相应的,分布式协调服务集群基于该修改后的元数据对相应元数据节点上的元数据进行更新。

当更新类型为删除待反馈字段时,监控服务器可以控制分布式协调服务集群删除元数据节点中与被删除的待反馈字段对应的元数据。可以理解,当某个元数据节点中只对应被删除的待反馈字段时,可以直接将该元数据节点进行删除。

实际应用中,也可能会出现元数据未更新,但是反馈配置文件更新的情况,为了提高数据反馈的正确率,所述方法还可以包括:

s507,当本地存储的待反馈字段的元数据未更新时,监控服务器判断所述待反馈字段对应的反馈配置文件是否更新。

当本地存储的待反馈字段对应的反馈配置文件存在更新时,执行步骤s509;当本地存储的待反馈字段对应的反馈配置文件没有更新时,结束本次的监听,间隔预设时间间隔后可以重复执行步骤s501。

s509,监控服务器控制所述分布式存储服务集群对所述反馈配置文件进行更新;以及控制所述分布式协调服务集群根据所述反馈配置文件的更新时间,对所述元数据节点中所述反馈配置文件对应的元数据进行更新。

具体的,监控服务器可以获取更新的反馈配置文件,将该更新的反馈配置文件发送给分布式存储服务集群,以覆盖相应的原反馈配置文件。由于分布式计算服务集群中的反馈配置文件更新是由元数据节点的更新触发的,为了使得分布式计算服务集群中的反馈配置文件能够及时更新,步骤s509中,监控服务器需要控制分布式协调服务集群根据反馈配置文件的更新时间对元数据节点中与上述更新的反馈配置文件对应的元数据进行更新,即将该元数据中最近一次更新时间戳更新为上述更新的反馈配置文件的更新时间,以使得元数据节点发生更新事件。

由本发明实施例的上述技术方案可见,本发明实施例在新增、修改或者删除待反馈字段时,只需要在监控服务器本地进行相应数据文件(json文件)的配置即可,系统能实时自动更新集群中的反馈配置文件,操作简单,减少了二次开发的成本,可扩展性好,有利于提高数据反馈的成功率、正确率以及反馈效率。

与上述几种实施例提供的数据反馈方法相对应,本发明实施例还提供一种数据反馈系统,该数据反馈系统可以包括分布式计算服务集群、分布式协调服务集群和分布式存储服务集群。

其中,所述分布式计算服务集群用于:从分布式协调服务集群的元数据节点获取全量待反馈字段的元数据;根据所述全量待反馈字段的元数据,从所述分布式存储服务集群获取每个待反馈字段对应的反馈配置文件;监听所述分布式协调服务集群的任务节点,当监听到所述任务节点更新时,获取更新至所述任务节点的目标反馈任务;所述目标反馈任务包括目标待反馈字段的字段标识;根据所述目标待反馈字段的字段标识,确定与所述目标反馈任务对应的目标反馈配置文件;根据所述目标反馈配置文件执行所述目标反馈任务,得到反馈结果列表;所述反馈结果列表包括与所述目标待反馈字段对应的反馈字段。

作为一个可选的实施方式中,所述数据反馈系统还可以包括监控服务器,所述监控服务器存储有全量待反馈字段的元数据和每个所述待反馈字段对应的反馈配置文件;所述监控服务器用于:判断本地存储的待反馈字段的元数据是否更新;当本地存储的待反馈字段的元数据更新时,确定所述更新对应的更新类型;根据所述更新类型控制所述分布式协调服务集群对所述元数据节点进行更新;以及控制所述分布式存储服务集群对存储的反馈配置文件进行更新。

上述实施例提供的系统与方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。

本发明实施例的数据反馈系统中分布式计算服务集群拥有全量待反馈字段的反馈配置文件,且分布式计算服务集群实时监听分布式协调服务集群的任务节点,由任务节点的更新触发分布式计算服务集群从全量待反馈字段的反馈配置文件中获取目标反馈配置文件,并基于该目标反馈配置文件执行数据反馈,从而针对不同字段的反馈任务,无需编写不同的反馈程序,降低了开发成本,大大提高了反馈的效率,能够实现秒级数据反馈。对于spark集群,由于spark集群实时监听zookeeper集群中任务节点的变化,也即spark程序在内存中一直处于运行状态,可以省去spark分配资源的过程,这也有利于提高数据反馈的反馈效率。

同时,系统扩展性好,只需要增加集群中机器的数量就能应对查询结果数据的不断增长,可以实现容量为pb级别的数据反馈。

此外,本发明实施例的数据反馈系统在新增、修改或者删除待反馈字段时,只需要在监控服务器本地进行相应数据文件的操作即可,系统能实时自动更新集群中的反馈配置文件,操作简单,有利于提高数据反馈的成功率、正确率以及反馈效率。

本发明实施例提供了一种服务器,该服务器包括处理器和存储器,该存储器中存储有至少一条指令、至少一段程序、代码集或指令集,该至少一条指令、该至少一段程序、该代码集或指令集由该处理器加载并执行以实现如上述方法实施例所提供的数据反馈方法。

存储器可用于存储软件程序以及模块,处理器通过运行存储在存储器的软件程序以及模块,从而执行各种功能应用以及数据反馈。存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、功能所需的应用程序等;存储数据区可存储根据所述设备的使用所创建的数据等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器还可以包括存储器控制器,以提供处理器对存储器的访问。

图6是本发明实施例提供的运行一种数据反馈方法的服务器的硬件结构框图,如图6所示,该服务器600可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(centralprocessingunits,cpu)610(处理器610可以包括但不限于微处理器mcu或可编程逻辑器件fpga等的处理装置)、用于存储数据的存储器630,一个或一个以上存储应用程序623或数据622的存储介质620(例如一个或一个以上海量存储设备)。其中,存储器630和存储介质620可以是短暂存储或持久存储。存储在存储介质620的程序可以包括一个或一个以上模块,每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器610可以设置为与存储介质620通信,在服务器600上执行存储介质620中的一系列指令操作。服务器600还可以包括一个或一个以上电源660,一个或一个以上有线或无线网络接口650,一个或一个以上输入输出接口640,和/或,一个或一个以上操作系统621,例如windowsservertm,macosxtm,unixtm,linuxtm,freebsdtm等等。

输入输出接口640可以用于经由一个网络接收或者发送数据。上述的网络具体实例可包括服务器600的通信供应商提供的无线网络。在一个实例中,输入输出接口640包括一个网络适配器(networkinterfacecontroller,nic),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,输入输出接口640可以为射频(radiofrequency,rf)模块,其用于通过无线方式与互联网进行通讯。

本领域普通技术人员可以理解,图6所示的结构仅为示意,其并不对上述电子装置的结构造成限定。例如,服务器600还可包括比图6中所示更多或者更少的组件,或者具有与图6所示不同的配置。

本发明的实施例还提供了一种计算机可读存储介质,所述存储介质可设置于服务器之中以保存用于实现一种数据反馈方法相关的至少一条指令、至少一段程序、代码集或指令集,该至少一条指令、该至少一段程序、该代码集或指令集由该处理器加载并执行以实现上述方法实施例提供的数据反馈方法。

可选地,在本实施例中,上述存储介质可以包括但不限于:u盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

需要说明的是:上述本发明实施例先后顺序仅仅为了描述,不代表实施例的优劣。且上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。

本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。

以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1