数据搜索方法和装置与流程

文档序号:17926998发布日期:2019-06-15 00:29阅读:235来源:国知局
数据搜索方法和装置与流程

本发明涉及计算机技术领域,特别涉及数据搜索方法和装置。



背景技术:

随着大量结构化及非结构化数据在教育云平台中的应用以及海量数据的计算分析需求,急需一种在线教育云平台实时数据搜索系统。

现有技术中,数据搜索系统无法提供对海量数据进行实时和并发的搜索查询服务。



技术实现要素:

本发明实施例提供了一种数据搜索方法和装置。旨在解决现有技术无法提供对海量数据进行实时和并发的搜索查询服务的问题。为了对披露的实施例的一些方面有一个基本的理解,下面给出了简单的概括。该概括部分不是泛泛评述,也不是要确定关键/重要组成元素或描绘这些实施例的保护范围。其唯一目的是用简单的形式呈现一些概念,以此作为后面的详细说明的序言。

根据本发明实施例的第一方面,提供了一种数据搜索方法,包括:

获取数据;

将存储数据存储至数据存储搜索库;

通过存储数据存储搜索库对存储数据进行分析,获取数据分析结果;

对存储数据分析结果进行搜索查询,获取搜索查询结果。

可选的,将存储数据存储至存储数据存储搜索库,包括:

通过logstash和kafka将存储数据存储至存储数据存储搜索库。

可选的,通过logstash和kafka将存储数据存储至存储数据存储搜索库,包括:

通过logstash抽取存储数据,并对存储数据进行数据格式转换及数据清洗;

通过kafka将存储数据进行中继交换;

通过logstash将存储数据存储至存储数据存储搜索库。

可选的,存储数据存储搜索库包括elasticsearch,通过存储数据存储搜索库对存储数据进行分析,获取存储数据分析结果,包括:

通过elasticsearch对存储数据进行分析,获取存储数据分析结果。

可选的,存储数据分析结果包括联合查询结果、数据排序结果、数据过滤结果、数据分组结果和数据聚合结果中的一项或多项的组合。

根据本发明实施例的第二方面,提供了一种数据搜索装置,包括:

接收器,用于获取数据;

处理器,用于将存储数据存储至数据存储搜索库;

通过存储数据存储搜索库对存储数据进行分析,获取数据分析结果;

对存储数据分析结果进行搜索查询,获取搜索查询结果。

可选的,存储处理器还用于:

通过logstash和kafka将存储数据存储至存储数据存储搜索库。

可选的,存储处理器还用于:

通过logstash抽取存储数据,并对存储数据进行数据格式转换及数据清洗;

通过kafka将存储数据进行中继交换;

通过logstash将存储数据存储至存储数据存储搜索库。

可选的,存储数据存储搜索库包括elasticsearch,存储处理器还用于:

通过elasticsearch对存储数据进行分析,获取存储数据分析结果。

可选的,存储数据分析结果包括联合查询结果、数据排序结果、数据过滤结果、数据分组结果和数据聚合结果中的一项或多项的组合。

本发明实施例公开的技术方案,能够对大量结构化或非结构化数据进行分析处理,并进行实时的数据搜索,具有高可伸缩性、高可用性、高容错性、高实时性、高性能的特点,用于满足各种复杂的数据分析、数据搜索的需求。

应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。

附图说明

此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。

图1是本发明实施例公开的一种数据搜索方法的流程图;

图2是本发明实施例公开的一种数据搜索装置的示意图。

具体实施方式

以下描述和附图充分地示出本发明的具体实施方案,以使本领域的技术人员能够实践它们。实施例仅代表可能的变化。除非明确要求,否则单独的部件和功能是可选的,并且操作的顺序可以变化。一些实施方案的部分和特征可以被包括在或替换其他实施方案的部分和特征。本发明的实施方案的范围包括权利要求书的整个范围,以及权利要求书的所有可获得的等同物。在本文中,各实施方案可以被单独地或总地用术语“发明”来表示,这仅仅是为了方便,并且如果事实上公开了超过一个的发明,不是要自动地限制该应用的范围为任何单个发明或发明构思。本文中,诸如第一和第二等之类的关系术语仅仅用于将一个实体或者操作与另一个实体或操作区分开来,而不要求或者暗示这些实体或操作之间存在任何实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素。本文中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的结构、产品等而言,由于其与实施例公开的部分相对应,所以描述的比较简单,相关之处参见方法部分说明即可。

本发明实施例公开了一种数据搜索方法,如图1所示,包括:

s101、获取数据;

s102、将存储数据存储至数据存储搜索库;

s103、通过存储数据存储搜索库对存储数据进行分析,获取数据分析结果;

s104、对存储数据分析结果进行搜索查询,获取搜索查询结果。

在s101中,获取的数据可以包括从业务服务等中产生的数据,示例性的,业务服务产生的数据可以包括学生基本数据、课程选择数据等。

在s102中,将数据存储至数据存储搜索库,可以包括实时的数据存储和非实时的数据存储。示例性的,当s102中包括将数据实时存储至数据存储搜索库时,数据存储可以与数据产生同步进行,以便进一步实现对数据的实时分析和搜索。

在s103中,数据存储搜索库可以用于对存储接入的数据进行分析处理,获取数据分析结果。特别的,数据存储搜索库还可以将获取的数据分析结果保存至分析结果数据库中。

在s104中,通过对数据分析结果进行搜索查询,可以获取搜索查询结果,进一步的,可以通过外部接口对外提供搜索查询结果。

本发明实施例公开的技术方案,能够对大量结构化或非结构化数据进行分析处理,并进行实时的数据搜索,具有高可伸缩性、高可用性、高容错性、高实时性、高性能的特点,用于满足各种复杂的数据分析、数据搜索的需求。

可选的,s102可以包括:

s1021、通过logstash和kafka将数据存储至数据存储搜索库。

logstash是一个开源的数据收集引擎,并且具有实时数据传输能力,可以统一过滤来自不同数据源的数据,并按照开发者制定的规范将数据输出到目的地。

一般的,logstash收集的数据对象包括日志文件,通常日志文件来源多,且内容杂乱,不便于进行观察。因此,可以使用logstash对日志文件进行收集和统一过滤,形成可读性高的内容,方便开发者或运维人员观察。

kafka是一个分布式、支持分区的、多副本的分布式消息系统,可以实时处理大量数据以满足各种场景的需求,处理动作流数据。

在s1021中,可以通过logstash和kafka将数据存储至数据存储搜索库。

进一步的,s1021可以包括:

s1022、通过logstash抽取存储数据,并对存储数据进行数据格式转换及数据清洗;

s1023、通过kafka将存储数据进行中继交换;

s1024、通过logstash将存储数据存储至存储数据存储搜索库。

示例性的,可以首先通过logstash将业务层产生的数据抽取出来,并对数据进行数据格式转换及数据清洗等处理,然后将数据发送到kafka中,由kafka作为统一的数据交换中继,将数据存储至数据存储搜索库。

可选的,数据存储搜索库可以包括elasticsearch,s103可以包括:

s1031、通过spark对数据进行分析,获取数据分析结果。

elasticsearch是一个基于lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于restfulweb接口。elasticsearch是企业级搜索引擎,设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。

示例性的,可以利用elasticsearch的能力栈,以最低成本快速将数据存储至数据存储搜索库中。

进一步的,数据分析结果可以包括联合查询结果、数据排序结果、数据过滤结果、数据分组结果和数据聚合结果中的一项或多项的组合,从而满足各种不同特性的数据搜索业务需求。

本发明实施例公开的技术方案,能够用于解决海量数据搜索查询时的实时性和并发性问题。根据elasticsearch集群的部署和实际运行情况,可以随时调整elasticsearch运行节点及各节点的资源配置,达到高伸缩性;根据elasticsearch集群的容错和恢复机制,达到高可用性;根据elasticsearch集群中各节点的综合计算处理能力,来达成更高的数据分理处理性能;根据可伸缩的数据搜索服务提升并发度。

本发明实施例还公开了一种数据搜索装置20,包括:

接收器201,用于获取数据;

处理器202,用于将存储数据存储至数据存储搜索库;

通过存储数据存储搜索库对存储数据进行分析,获取数据分析结果;

对存储数据分析结果进行搜索查询,获取搜索查询结果。

数据搜索装置20,可以用于执行如图1所示的方法,能够对大量结构化或非结构化数据进行分析处理,并进行实时的数据搜索,具有高可伸缩性、高可用性、高容错性、高实时性、高性能的特点,用于满足各种复杂的数据分析、数据搜索的需求。

可选的,处理器202还可以用于:

通过logstash和kafka将存储数据存储至存储数据存储搜索库。

可选的,处理器202还可以用于:

通过logstash抽取存储数据,并对存储数据进行数据格式转换及数据清洗;

通过kafka将存储数据进行中继交换;

通过logstash将存储数据存储至存储数据存储搜索库。

可选的,数据存储搜索库包括elasticsearch,处理器202还可以用于:

通过elasticsearch对存储数据进行分析,获取数据分析结果。

可选的,数据分析结果包括联合查询结果、数据排序结果、数据过滤结果、数据分组结果和数据聚合结果中的一项或多项的组合。

应当理解的是,本发明并不局限于上面已经描述并在附图中示出的流程及结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。

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