本申请涉及数据处理领域,尤其涉及一种数据分析方法和数据分析平台以及服务器。
背景技术:
在海量数据处理中,数据的实时处理一直是业界聚焦的重点。数据的处理不仅仅在于数据的计算,更要考虑诸如数据存储能力、数据计算能力、水平扩展能力等多个方面。
在大数据存储方面,如何存储海量数据是目前较为前言的一个问题。HDFS等分布式文件系统以及HBase分布式数据库等技术的发展,在一定程度上很好地解决了这个问题,但基于Hadoop生态环境的分布式存储在部署、管理上较为复杂,在数据计算方面,Hadoop生态环境提出了MapReduce等分布式计算框架,但其编程较为复杂,因此,可以看出,现有的数据分析平台在进行数据分析时,实现较为复杂。
技术实现要素:
有鉴于此,本申请提供一种数据分析方法和数据分析平台以及服务器,能够解决现有数据分析平台在进行数据分析时实现较为复杂的问题。
具体地,本申请是通过如下技术方案实现的:
一方面,提供一种数据分析平台,包括:数据源,与所述数据源连接的Elasticsearch索引模块以及与所述Elasticsearch索引模块连接的Spark SQL处理模块和与所述Spark SQL处理模块连接的数据呈现模块,其中,所述数据源,用于提供数据;所述Elasticsearch索引模块,用于通过数据搜索接口从所述数据源获取搜索的数据,并对所述数据进行预处理,并将预处理后的数据发送至所述Spark SQL处理模块;所述Spark SQL处理模块,用于对所述预处理后的数据进行数据分析,并将数据分析后的数据发送至所述数据呈现模块;所述数据呈现模块,用于呈现所述数据分析后的数据。
另一方面,提供一种数据分析方法,应用于数据分析平台,所述数据分析平台包括数据源,与所述数据源连接的Elasticsearch索引模块以及与所述Elasticsearch索引模块连接的Spark SQL处理模块和与所述Spark SQL处理模块连接的数据呈现模块,所述方法包括:所述数据分析平台中的所述Elasticsearch索引模块通过数据搜索接口从所述数据源获取搜索的数据,并对所述数据进行预处理,并将预处理后的数据发送至所述数据分析平台中的Spark SQL处理模块;所述数据分析平台中的Spark SQL处理模块对所述预处理后的数据进行数据分析,并将数据分析后的数据发送至所述数据分析平台中的数据呈现模块;所述数据分析平台中的数据呈现模块,用于呈现所述数据分析后的数据。
又一方面,提供一种服务器,包括上述数据分析平台。
采用本申请提供的数据分析方法和数据分析平台以及服务器,该数据分析平台包括数据源,与该数据源连接的Elasticsearch索引模块以及与该Elasticsearch索引模块连接的Spark SQL处理模块和与该Spark SQL处理模块连接的数据呈现模块,其中,该数据源,用于提供数据;该Elasticsearch索引模块,用于通过数据搜索接口从该数据源获取搜索的数据,并对该数据进行预处理,并将预处理后的数据发送至该Spark SQL处理模块;该Spark SQL处理模块,用于对该预处理后的数据进行数据分析,并将数据分析后的数据发送至该数据呈现模块;该数据呈现模块,用于呈现该数据分析后的数据。这样,本申请通过Elasticsearch作为数据的存储媒介,提供了丰富的访问和搜索数据的接口,并利用Spark SQL强大的内存计算能力可以完成复杂的数据计算。两者相互配合完成数据的预处理、存储、容错、计算等一系列数据分析过程,实现简单,从而解决了现有数据分析平台在进行数据分析时实现较为复杂的问题。
附图说明
图1是本申请一示例性实施例示出的一种数据分析平台的结构示意图;
图2是本申请一示例性实施例示出的一种数据分析框架的结构示意图;
图3是本申请一示例性实施例示出的一种数据分析方法的流程示意图;
图4是本申请一示例性实施例示出的一种服务器的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
本申请提供的数据分析平台通过Spark SQL计算模块的高计算性能和Elasticsearch搜索模块的实时搜索功能,进行准确实时的数据分析,Elasticsearch作为数据的存储媒介,提供了丰富的访问和搜索数据的接口;Spark SQL强大的内存计算能力可以完成复杂的数据计算。两者相互配合完成数据的预处理、存储、容错、计算等一系列数据分析过程。
下面通过以下实施例对本申请进行详细说明。
图1为本申请实施例提供的一种数据分析平台,如图1所示,该数据分析平台包括数据源101,与该数据源101连接的Elasticsearch索引模块102以及与该Elasticsearch索引模块102连接的Spark SQL处理模块103和与该Spark SQL处理模块103连接的数据呈现模块104,其中,
该数据源101,用于提供数据;
该Elasticsearch索引模块102,用于通过数据搜索接口从该数据源获取搜索的数据,并对该数据进行预处理,并将预处理后的数据发送至该Spark SQL处理模块103;
该Spark SQL处理模块103,用于对该预处理后的数据进行数据分析,并将数据分析后的数据发送至该数据呈现模块104;
该数据呈现模块104,用于呈现该数据分析后的数据。
在本申请一种可能的实现方式中,该Elasticsearch索引模块与该Spark SQL处理模块通过JSON结构进行数据交互。
其中,该Elasticsearch索引模块对数据的预处理可以是对数据进行生成倒排索引、进行中文分词、完成自动分布式存储和备份等处理,这样,不但保证了数据的安全性和可访问性,更加快了数据的方位速度、丰富了数据方位接口。另外,通过使用Spark SQL的计算能力,Spark SQL不仅支持结构化数据的操作,还支持从RDD、parquet文件、JSON文件中获取数据,并通过Web页面的方式或者使用移动终端的方式进行数据的展现。
在本申请实施例中,该数据分析平台的数据分析框架可以是如图2所示的数据分析框架,如图2所示,该数据分析框架包括位于框架最低层的数据源,该数据源支持HBASE、HIVE、HDFS以及MYSOL等构架,在数据源上一层为搜索框架,该搜索框架由Elasticsearch搜索模块完成数据搜索,该Elasticsearch搜索模块提供数据搜索接口,用于搜索数据并从数据源获取数据,在搜索框架上一层为计算框架,该计算框架由Spark SQL计算模块以及APACHE SPARK、MLlib、GRAPHX完成对从Elasticsearch搜索模块传输的数据的计算处理,该计算框架的上一层,也即该数据分析框架的最上层为数据呈现框架,该数据呈现框架通过WEB APP和MOBLIE APP对计算框架传输的数据进行呈现。
采用上述数据分析平台,通过Elasticsearch作为数据的存储媒介,提供了丰富的访问和搜索数据的接口,并利用Spark SQL强大的内存计算能力可以完成复杂的数据计算。两者相互配合完成数据的预处理、存储、容错、计算等一系列数据分析过程,实现简单,从而解决了现有数据分析平台在进行数据分析时实现较为复杂的问题。
图3为本申请实施例提供的一种数据分析方法,如图3所示,该方法应用于上述数据分析平台,所述数据分析平台包括数据源,与所述数据源连接的Elasticsearch索引模块以及与所述Elasticsearch索引模块连接的Spark SQL处理模块和与所述Spark SQL处理模块连接的数据呈现模块,所述方法包括:
S301、该数据分析平台中的该Elasticsearch索引模块通过数据搜索接口从该数据源获取搜索的数据,并对该数据进行预处理,并将预处理后的数据发送至该数据分析平台中的Spark SQL处理模块。
可选地,该数据分析平台中的该Elasticsearch索引模块对该数据进行生成倒排索引、进行中文分词、完成自动分布式存储和备份。
S302、该数据分析平台中的Spark SQL处理模块对该预处理后的数据进行数据分析,并将数据分析后的数据发送至该数据分析平台中的数据呈现模块。
可选地,该数据分析平台中的该Elasticsearch索引模块将预处理后的数据通过JSON结构发送至该数据分析平台中的Spark SQL处理模块。
S303、该数据分析平台中的数据呈现模块,用于呈现该数据分析后的数据。
上述方法中各步骤的实现过程具体详见上述数据分析平台中各模块的实现过程,在此不再赘述。
采用上述数据分析方法,通过Elasticsearch作为数据的存储媒介,提供了丰富的访问和搜索数据的接口,并利用Spark SQL强大的内存计算能力可以完成复杂的数据计算。两者相互配合完成数据的预处理、存储、容错、计算等一系列数据分析过程,实现简单,从而解决了现有数据分析平台在进行数据分析时实现较为复杂的问题。
图4为本申请实施例提供的一种服务器,如图4所示,该服务器包括上述图1所示的数据分析平台。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。