CN106777278B - 一种基于Spark的数据处理方法及装置 - Google Patents

一种基于Spark的数据处理方法及装置 Download PDF

Info

Publication number
CN106777278B
CN106777278B CN201611242993.9A CN201611242993A CN106777278B CN 106777278 B CN106777278 B CN 106777278B CN 201611242993 A CN201611242993 A CN 201611242993A CN 106777278 B CN106777278 B CN 106777278B
Authority
CN
China
Prior art keywords
query
data
sql statement
query information
file system
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.)
Active
Application number
CN201611242993.9A
Other languages
English (en)
Other versions
CN106777278A (zh
Inventor
戚永峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Haier Uplus Intelligent Technology Beijing Co Ltd
Original Assignee
Haier Uplus Intelligent Technology Beijing Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Haier Uplus Intelligent Technology Beijing Co Ltd filed Critical Haier Uplus Intelligent Technology Beijing Co Ltd
Priority to CN201611242993.9A priority Critical patent/CN106777278B/zh
Publication of CN106777278A publication Critical patent/CN106777278A/zh
Application granted granted Critical
Publication of CN106777278B publication Critical patent/CN106777278B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2433Query languages
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/18File system types
    • G06F16/182Distributed file systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种基于Spark的数据处理方法及装置,本发明是根据接收到的查询信息映射该查询信息在分布式文件系统HDFS上对应的数据源,再根据所述数据源及查询条件重新生成预设的SQL语句,并根据该SQL语句在分布式文件系统HDFS上进行数据查询得到查询结果,最后将所述查询结果输出。也就是说,本发明的方法简单易用,普通查询者即可以方便地进行大数据平台上的数据查询、格式转换,不要求查询数据者有较高的技术知识,也不必编写代码开发程序。

Description

一种基于Spark的数据处理方法及装置
技术领域
本发明涉及计算机技术领域,特别是涉及一种基于Spark的数据处理方法及装置。
背景技术
在基于分布式系统基础框架Hadoop的分布式文件系统HDFS上存在着海量的数据,这些数据以压缩文件格式存放,对这些数据进行查询时需要基于不同的维度,比如时间范围、设备类型、数据类型等。而现有的方法是每次查询数据都需要开发查询程序,或者对数据进行一些映射等,这对查询者技术要求比较高,并且用起来不方便。
发明内容
本发明提供了一种基于Spark的数据处理方法及装置,以解决现有技术中在分布式文件系统HDFS上查询数据需要开发查询程序,对查询者技术要求比较高的问题。
一方面,本发明提供了一种基于Spark的数据处理方法,该方法包括:接收用户输入的SQL语句;获取所述用户输入的SQL语句中的查询信息;根据查询信息生成预先设置的SQL语句,并根据该SQL语句基于开源簇运算框架Spark在分布式文件系统HDFS上进行数据查询得到查询结果;将所述查询结果输出。
其中,所述根据查询信息生成预先设置的SQL语句,具体包括:
将用户输入的SQL语句中的from后的内容识别为数据类型,“-t”字段后的内容识别为时间,“-p”字段后的内容识别为设备类型;
根据数据类型、时间和设备类型,生成预先设置的SQL语句。
进一步地,所述获取所述用户输入的SQL语句中的查询信息之后,还包括:对所述查询信息进行分析验证,并在验证通过后,根据所述查询信息生成预先设置的SQL语句;其中,所述查询信息包括数据类型、时间和设备类型中的一种或多种。
进一步地,所述根据该SQL语句基于开源簇运算框架Spark在分布式文件系统HDFS上进行数据查询得到查询结果,具体包括:根据所述查询信息映射该查询信息在分布式文件系统HDFS上对应的数据源,将所述数据源与预设的临时表名进行关联,根据关联后的临时表名基于开源簇运算框架Spark在分布式文件系统HDFS上进行数据查询得到查询结果。
进一步地,该方法还包括:判断根据查询信息生成的预先设置的SQL语句是否有效,如果是,则根据所述SQL语句基于开源簇运算框架Spark在分布式文件系统HDFS上进行数据查询得到查询结果。
进一步地,所述将所述查询结果输出,具体包括:将所述查询结果以指定格式进行输出。
另一方面,本发明提供了一种基于Spark的数据处理装置,该装置包括:
接收单元,用于接收用户输入的SQL语句;
获取单元,用于获取所述用户输入的SQL语句中的查询信息;
处理单元,用于根据查询信息生成预先设置的SQL语句,并根据该SQL语句基于开源簇运算框架Spark在分布式文件系统HDFS上进行数据查询得到查询结果;
输出单元,用于将所述查询结果输出。
其中,所述处理单元还用于,将用户输入的SQL语句中的from后的内容识别为数据类型,“-t”字段后的内容识别为时间,“-p”字段后的内容识别为设备类型,并根据数据类型、时间和设备类型,生成预先设置的SQL语句。
进一步地,该装置还包括:分析验证单元,用于对获取的用户输入的SQL语句中的查询信息进行分析验证,并在验证通过后,根据所述查询信息生成预先设置的SQL语句;其中,所述查询信息包括数据类型、时间和设备类型中的一种或多种。
进一步地,所述处理单元还用于,根据所述查询信息映射该查询信息在分布式文件系统HDFS上对应的数据源,将所述数据源与预设的临时表名进行关联,根据关联后的临时表名基于开源簇运算框架Spark在分布式文件系统HDFS上进行数据查询得到查询结果。
进一步地,所述处理单元还用于,判断根据查询信息生成的预先设置的SQL语句是否有效,如果是,则根据所述SQL语句基于开源簇运算框架Spark在分布式文件系统HDFS上进行数据查询得到查询结果。
进一步地,所述输出单元还用于,将所述查询结果以指定格式进行输出。
本发明有益效果如下:
本发明通过根据用户输入的SQL语句得到查询信息,并根据查询信息生成本发明预先设置的SQL语句,最后根据该SQL语句基于开源簇运算框架Spark在分布式文件系统HDFS上进行数据查询得到查询结果,并将所述查询结果输出。也就是说,本发明的方法简单易用,普通查询者即可以方便地进行大数据平台上的数据查询、格式转换,不要求查询数据者有较高的技术知识,也不必编写代码开发程序,从而有效解决了现有技术中在分布式文件系统HDFS上查询数据需要开发查询程序,对查询者技术要求比较高的问题。
附图说明
图1是本发明实施例的一种基于Spark的数据处理方法的流程示意图;
图2是本发明实施例的一种基于Spark的数据处理方法结构示意图;
图3是本发明实施例的一种基于Spark的数据处理方法的数据流示意图;
图4是本发明实施例的一种基于Spark的数据处理的结构示意图。
具体实施方式
为了解决现有技术中在分布式文件系统HDFS上查询数据需要开发查询程序,对查询者技术要求比较高的问题,本发明提供了一种基于Spark的数据处理方法及装置,本发明通过根据用户输入的SQL语句得到查询信息,并根据查询信息生成本发明预先设置的SQL语句,最后根据该SQL语句基于开源簇运算框架Spark在分布式文件系统HDFS上进行数据查询得到查询结果,并将所述查询结果输出。也就是说,本发明的方法简单易用,普通查询者即可以方便地进行大数据平台上的数据查询、格式转换,不要求查询数据者有较高的技术知识,也不必编写代码开发程序,从而有效解决了现有技术中在分布式文件系统HDFS上查询数据需要开发查询程序,对查询者技术要求比较高的问题。以下结合附图以及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不限定本发明。
方法实施例
本发明实施例提供了一种基于Spark的数据处理方法,参见图1,该方法包括:
S101、接收用户输入的SQL语句;
S102、获取所述用户输入的SQL语句中的查询信息;
S103、将用户输入的SQL语句中的from后的内容识别为数据类型,“-t”字段后的内容识别为时间,“-p”字段后的内容识别为设备类型,并根据数据类型、时间和设备类型,生成预先设置的SQL语句,并根据该SQL语句基于开源簇运算框架Spark在分布式文件系统HDFS上进行数据查询得到查询结果;
S104、将所述查询结果输出。
即,本发明通过根据用户输入的SQL语句得到查询信息,并根据查询信息生成本发明预先设置的SQL语句,最后根据该SQL语句基于开源簇运算框架Spark在分布式文件系统HDFS上进行数据查询得到查询结果,并将所述查询结果输出。也就是说,本发明的方法简单易用,普通查询者即可以方便地进行大数据平台上的数据查询、格式转换,不要求查询者有较高的技术知识,也不必编写代码开发程序,从而有效解决了现有技术中在分布式文件系统HDFS上查询数据需要开发查询程序,对查询者技术要求比较高的问题。
并且,相比现有编写MapReduce程序或者Hive程序来进行数据查询而言,本发明由于是基于更高效的开源簇运算框架Spark来实现查询,所以查询效率有大幅提高。
具体实施时,本发明实施例需根据所述查询信息映射该查询信息在分布式文件系统HDFS上对应的数据源,并判断所述数据源是否真实,如果是,则根据所述数据源重新生成预设的SQL语句。
具体来说,本发明实施例在根据接收到的查询信息映射该查询信息在分布式文件系统HDFS上对应的数据源之后,需要进一步对该数据源进行核实,以确定是否存在该数据源,并在确定是真实的数据源时,再进行后续的处理,从而最大程度的节约系统的资源,并提高了查询效率。
需要说明的是,本发明实施例所述的查询信息包括数据类型、时间和设备类型中的一种或多种。当然本领域的技术人员也可以根据实际情况设置其他的查询信息。
具体实施时,本发明实施例所述根据查询信息生成预先设置的SQL语句,具体包括:将用户输入的SQL语句中的from后的内容识别为数据类型,“-t”字段后的内容识别为时间,“-p”字段后的内容识别为设备类型;并根据数据类型、时间和设备类型,生成预先设置的SQL语句。
具体来说,本发明实施例重新生成的SQL语句中,SQL语句的from字段后为数据类型,“-t”字段后为时间,“-p”字段后为设备类型。
当然本领域的技术人员也可以根据实际情况设置其他的查询信息的SQL语句。
解析时,本发明根据所述重新生成预设的SQL语句中的from字段得到所述数据源的数据类型,“-t”字段得到设置时间,“-p”字段得到设备类型。
当然,具体实施时,本领域的技术人员也可以通过命令选项及参数获取,对所述预设的SQL语句进行解析,得到所述数据源、所述数据类型、所述时间和所述设备类型;或者,根据所述预设的SQL语句中的数据源及查询信息写成配置文件,并根据该配置文件对所述预设的SQL语句进行解析,得到所述数据源、所述数据类型、所述时间和所述设备类型。
进一步地,本发明实施例所述获取所述用户输入的SQL语句中的查询信息之后,还包括:对所述查询信息进行分析验证,并在验证通过后,根据所述查询信息生成预先设置的SQL语句;
其中,所述查询信息包括数据类型、时间和设备类型中的一种或多种。
即,本发明实施例首先需要对该查询信息进行分析验证,以确定该查询信息是否符合要求,如,预设查询信息包括数据类型、时间和设备类型时,而当接收到的查询信息仅包括时间和设备类型,则通过系统给查询者发送提示消息,以提示查询者该查询信息存在错误。
具体实施时,本发明实施例所述查询信息包括数据类型、时间和设备类型中的一种或多种,当然本领域的技术人员也可以根据实际需要在查询信息中设置其他的信息,如,在查询信息设置查询者,并在系统中设置查询者的查询权限等等。
进一步地,本发明实施例所述根据该SQL语句基于开源簇运算框架Spark在分布式文件系统HDFS上进行数据查询得到查询结果,具体包括:
根据所述查询信息映射该查询信息在分布式文件系统HDFS上对应的数据源,将所述数据源与预设的临时表名进行关联,根据关联后的临时表名基于开源簇运算框架Spark在分布式文件系统HDFS上进行数据查询得到查询结果。
具体来说,本发明是将数据源与SQL语句中的临时表名进行关联,根据关联后的临时表名在分布式文件系统HDFS上进行数据查询,并得到查询结果。
进一步地,本发明实施例所述的方法还包括:判断根据查询信息生成的预先设置的SQL语句是否有效,如果是,则根据所述SQL语句基于开源簇运算框架Spark在分布式文件系统HDFS上进行数据查询得到查询结果。
具体来说,本发明实施例在重新生成预设的SQL语句后,进一步判断重新生成预设的SQL语句是否有效,并在确定重新生成预设的SQL语句有效后,才根据所述SQL语句在分布式文件系统HDFS上进行数据查询得到查询结果,从而最大程度的节约系统的资源,并提高了查询效率。
进一步地,本发明实施例所述将所述查询结果输出,具体包括:将所述查询结果以指定格式进行输出。
即,本发明实施例可支持多种输出格式,方便将结果数据提供给多种不同查询者使用,比如前端用户使用数据库的输出,分析人员使用csv格式的输出,数据清洗用户使用Parquet格式的输出,等等;
图2是本发明实施例的一种基于Spark的数据处理方法结构示意图,如图2所示,本发明实施步骤如下:
S201、初始化运行环境,分析验证用户输入的sql语句和参数,自动将数据源映射到保存在HDFS上的一个或多个数据文件,并重新生成统一的优化了的SQL语句;本步骤中,如果用户要求合并文件,则SQL语句中select部分为“select*”。伪代码如下:
Figure BDA0001196539000000071
Figure BDA0001196539000000081
检查数据源文件是否真实存在,不存在则退出,若存在则继续;
sqlContext.read().parquet(数据源).registerTempTable(临时表名);//调用spark api注册临时表;
规整后的Sql语句=使用“临时表名”替换用户输入sql中from部分;
检查“规整后的Sql语句”是否有效;//至此步骤1完成。
S202、执行数据查询:调用Spark的api:sqlContext.sql(“规整后的SQL语句”)。
S203、结果输出,伪代码如下:
Figure BDA0001196539000000082
图3是本发明实施例的一种基于Spark的数据处理方法的数据流示意图,如图3所示,该方法包括:从HDFS分布式系统获取数据源,对该数据源进行一系列处理,最后以用户需要的格式对查询结果进行输出,例如以csv文件、json文件、parquet文件、mysql数据库或者GP数据仓库,等等。
总体来说,本发明提供一种进行大数据查询并将结果输出到多种格式文件或者数据库的系统。并具备文件格式转换和文件合并的功能。让用户不必具有太多的专业知识,直接在命令行指定sql语句和不同的参数执行程序,实现大数据查询,并自动根据用户指定输出文件的扩展名输出相应格式的数据文件或者将结果保存到相应的数据库中。
下面将通过两个具体的例子对本发明所述的方法进行详细的解释和说明:
实例1、查询海尔的滚筒洗衣机在2016年10月14日的告警数据,并保存到csv文件中:本发明实施例的程序-q"select*from告警数据"–t20161014-p‘滚筒洗衣机编号’-o/data/查询结果.csv;
即,数据类型为告警数据,时间为20161014,设备类型为滚筒洗衣机编号。
实例2、将HDFS上/sample/目录下的的大量Parquet格式的小文件合并成7个大文件:本发明实施例的程序-q"select*from/sample/*.parquet"-o/data/合并文件.Parquet7。
装置实施例
本发明实施例提供了一种基于Spark的数据处理装置,参见图4,该装置包括:接收单元,用于接收用户输入的SQL语句;获取单元,用于获取所述户输入的SQL语句中的查询信息;处理单元,用于将用户输入的SQL语句中的from后的内容识别为数据类型,“-t”字段后的内容识别为时间,“-p”字段后的内容识别为设备类型,并根据数据类型、时间和设备类型,生成预先设置的SQL语句,并根据该SQL语句基于开源簇运算框架Spark在分布式文件系统HDFS上进行数据查询得到查询结果;输出单元,用于将所述查询结果输出。
即,本发明在接收到用户输入的SQL语句后,通过获取单元获取户输入的SQL语句中的查询信息,再通过处理单元根据查询信息生成预先设置的SQL语句,并根据该SQL语句基于开源簇运算框架Spark在分布式文件系统HDFS上进行数据查询得到查询结果,最后通过输出单元将所述查询结果输出。也就是说,本发明的装置简单易用,普通查询者即可以方便地进行大数据平台上的数据查询、格式转换,不要求查询者有较高的技术知识,也不必编写代码开发程序,从而有效解决了现有技术中在分布式文件系统HDFS上查询数据需要开发查询程序,对查询者技术要求比较高的问题。
并且,相比现有编写MapReduce程序或者Hive程序来进行数据查询而言,本发明由于是基于更高效的开源簇运算框架Spark来实现查询,所以查询效率有大幅提高。
具体实施时,所述处理单元还用于,将用户输入的SQL语句中的from后的内容识别为数据类型,“-t”字段后的内容识别为时间,“-p”字段后的内容识别为设备类型,并根据数据类型、时间和设备类型,生成预先设置的SQL语句。
具体来说,本发明实施例重新生成的SQL语句中,SQL语句的from字段后为数据类型,“-t”字段后为时间,“-p”字段后为设备类型。当然本领域的技术人员也可以根据实际情况设置其他的查询信息的SQL语句。
解析时,本发明根据所述重新生成预设的SQL语句中的from字段得到所述数据源的数据类型,“-t”字段得到设置时间,“-p”字段得到设备类型。
当然,具体实施时,本领域的技术人员也可以通过命令选项及参数获取,对所述预设的SQL语句进行解析,得到所述数据源、所述数据类型、所述时间和所述设备类型;或者,根据所述预设的SQL语句中的数据源及查询信息写成配置文件,并根据该配置文件对所述预设的SQL语句进行解析,得到所述数据源、所述数据类型、所述时间和所述设备类型。
进一步地,本发明实施例所述装置还设有分析验证单元,通过分析验证单元对获取的用户输入的SQL语句中的查询信息进行分析验证,并在验证通过后,根据所述查询信息生成预先设置的SQL语句;其中,所述查询信息包括数据类型、时间和设备类型中的一种或多种。
即,本发明实施例首先需要对该查询信息进行分析验证,以确定该查询信息是否符合要求,如,预设查询信息包括数据类型、时间和设备类型时,而当接收到的查询信息仅包括时间和设备类型,则通过系统给查询者发送提示消息,以提示查询者该查询信息存在错误。
具体实施时,本发明实施例所述查询信息包括数据类型、时间和设备类型中的一种或多种,当然本领域的技术人员也可以根据实际需要在查询信息中设置其他的信息,如,在查询信息设置查询者,并在系统中设置查询者的查询权限等等。
进一步地,本发明实施例所述处理单元是根据所述查询信息映射该查询信息在分布式文件系统HDFS上对应的数据源,将所述数据源与预设的临时表名进行关联,根据关联后的临时表名基于开源簇运算框架Spark在分布式文件系统HDFS上进行数据查询得到查询结果。
具体来说,本发明是将数据源与SQL语句中的临时表名进行关联,根据关联后的临时表名在分布式文件系统HDFS上进行数据查询,并得到查询结果。
进一步地,所述处理单元还用于,判断根据查询信息生成的预先设置的SQL语句是否有效,如果是,则根据所述SQL语句基于开源簇运算框架Spark在分布式文件系统HDFS上进行数据查询得到查询结果。
具体来说,本发明实施例在重新生成预设的SQL语句后,进一步判断重新生成预设的SQL语句是否有效,并在确定重新生成预设的SQL语句有效后,才根据所述SQL语句在分布式文件系统HDFS上进行数据查询得到查询结果,从而最大程度的节约系统的资源,并提高了查询效率。
具体实施时,本发明实施例所述输出单元还用于,将所述查询结果以指定格式进行输出。
即,本发明实施例可支持多种输出格式,方便将结果数据提供给多种不同查询者使用,比如前端用户使用数据库的输出,分析人员使用csv格式的输出,数据清洗用户使用Parquet格式的输出,等等;
本发明可以至少可以达到以下的有益效果:
本发明通过根据用户输入的SQL语句得到查询信息,并根据查询信息生成本发明预先设置的SQL语句,最后根据该SQL语句基于开源簇运算框架Spark在分布式文件系统HDFS上进行数据查询得到查询结果,并将所述查询结果输出。也就是说,本发明的方法简单易用,普通使用者查询者即可以方便地进行大数据平台上的数据查询、格式转换,不要求查询数据者有较高的技术知识,也不必编写代码开发程序,从而有效解决了现有技术中在分布式文件系统HDFS上查询数据需要开发查询程序,对查询者技术要求比较高的问题。
尽管为示例目的,已经公开了本发明的优选实施例,本领域的技术人员将意识到各种改进、增加和取代也是可能的,因此,本发明的范围应当不限于上述实施例。

Claims (10)

1.一种基于Spark的数据处理方法,其特征在于,包括:
接收用户输入的SQL语句;
获取所述用户输入的SQL语句中的查询信息;
将用户输入的SQL语句中的from后的内容识别为数据类型,“-t”字段后的内容识别为时间,“-p”字段后的内容识别为设备类型;
根据数据类型、时间和设备类型,生成预先设置的SQL语句,并根据该SQL语句基于开源簇运算框架Spark在分布式文件系统HDFS上进行数据查询得到查询结果;
将所述查询结果输出;
根据数据类型、时间和设备类型,生成预先设置的SQL语句后还包括:根据所述查询信息映射该查询信息在分布式文件系统HDFS上对应的数据源,并判断所述数据源是否真实,如果是,则根据所述数据源重新生成预设的SQL语句;
获取所述用户输入的查询信息之后,还包括:对所述查询信息进行分析验证,并在验证通过后,根据所述查询信息生成预先设置的SQL语句。
2.根据权利要求1所述的方法,其特征在于,所述获取所述用户输入的SQL语句中的查询信息之后,还包括:
对所述查询信息进行分析验证,并在验证通过后,根据所述查询信息生成预先设置的SQL语句;
其中,所述查询信息包括数据类型、时间和设备类型中的一种或多种。
3.根据权利要求1所述的方法,其特征在于,所述根据该SQL语句基于开源簇运算框架Spark在分布式文件系统HDFS上进行数据查询得到查询结果,具体包括:
根据所述查询信息映射该查询信息在分布式文件系统HDFS上对应的数据源,将所述数据源与预设的临时表名进行关联,根据关联后的临时表名基于开源簇运算框架Spark在分布式文件系统HDFS上进行数据查询得到查询结果。
4.根据权利要求1-3中任意一项所述的方法,其特征在于,还包括:
判断根据查询信息生成的预先设置的SQL语句是否有效,如果是,则根据所述SQL语句基于开源簇运算框架Spark在分布式文件系统HDFS上进行数据查询得到查询结果。
5.根据权利要求1-3中任意一项所述的方法,其特征在于,所述将所述查询结果输出,具体包括:
将所述查询结果以指定格式进行输出。
6.一种基于Spark的数据处理装置,其特征在于,包括:
接收单元,用于接收用户输入的SQL语句;
获取单元,用于获取所述用户输入的SQL语句中的查询信息;
处理单元,用于将用户输入的SQL语句中的from后的内容识别为数据类型,“-t”字段后的内容识别为时间,“-p”字段后的内容识别为设备类型,并根据数据类型、时间和设备类型,生成预先设置的SQL语句,并根据该SQL语句基于开源簇运算框架Spark在分布式文件系统HDFS上进行数据查询得到查询结果;
输出单元,用于将所述查询结果输出;
所述处理单元在根据数据类型、时间和设备类型,生成预先设置的SQL语句后还用于:根据所述查询信息映射该查询信息在分布式文件系统HDFS上对应的数据源,并判断所述数据源是否真实,如果是,则根据所述数据源重新生成预设的SQL语句;
所述处理单元在获取所述用户输入的查询信息之后,还包括:对所述查询信息进行分析验证,并在验证通过后,根据所述查询信息生成预先设置的SQL语句。
7.根据权利要求6所述的装置,其特征在于,还包括:
分析验证单元,用于对获取的用户输入的SQL语句中的查询信息进行分析验证,并在验证通过后,根据所述查询信息生成预先设置的SQL语句;其中,所述查询信息包括数据类型、时间和设备类型中的一种或多种。
8.根据权利要求6所述的装置,其特征在于,
所述处理单元还用于,根据所述查询信息映射该查询信息在分布式文件系统HDFS上对应的数据源,将所述数据源与预设的临时表名进行关联,根据关联后的临时表名基于开源簇运算框架Spark在分布式文件系统HDFS上进行数据查询得到查询结果。
9.根据权利要求6-8中任意一项所述的装置,其特征在于,
所述处理单元还用于,判断根据查询信息生成的预先设置的SQL语句是否有效,如果是,则根据所述SQL语句基于开源簇运算框架Spark在分布式文件系统HDFS上进行数据查询得到查询结果。
10.根据权利要求6-8中任意一项所述的装置,其特征在于,
所述输出单元还用于,将所述查询结果以指定格式进行输出。
CN201611242993.9A 2016-12-29 2016-12-29 一种基于Spark的数据处理方法及装置 Active CN106777278B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201611242993.9A CN106777278B (zh) 2016-12-29 2016-12-29 一种基于Spark的数据处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611242993.9A CN106777278B (zh) 2016-12-29 2016-12-29 一种基于Spark的数据处理方法及装置

Publications (2)

Publication Number Publication Date
CN106777278A CN106777278A (zh) 2017-05-31
CN106777278B true CN106777278B (zh) 2021-02-23

Family

ID=58923805

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611242993.9A Active CN106777278B (zh) 2016-12-29 2016-12-29 一种基于Spark的数据处理方法及装置

Country Status (1)

Country Link
CN (1) CN106777278B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107944004B (zh) * 2017-12-07 2020-09-29 深圳乐信软件技术有限公司 Spark-SQL调度的方法、系统、设备及存储介质
CN110309214B (zh) * 2018-04-10 2023-06-23 腾讯科技(深圳)有限公司 一种指令执行方法及其设备、存储介质、服务器
CN108874897B (zh) * 2018-05-23 2019-09-13 新华三大数据技术有限公司 数据查询方法及装置
CN113535843B (zh) * 2021-09-15 2022-07-29 北京交研智慧科技有限公司 数据查询方法、装置、电子设备及可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101788992A (zh) * 2009-05-06 2010-07-28 厦门东南融通系统工程有限公司 一种数据库查询语句的转换方法和转换系统
CN105550293A (zh) * 2015-12-11 2016-05-04 深圳市华讯方舟软件技术有限公司 一种基于Spark-SQL大数据处理平台的后台刷新方法
CN105550296A (zh) * 2015-12-10 2016-05-04 深圳市华讯方舟软件技术有限公司 一种基于spark-SQL大数据处理平台的数据导入方法

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105045607B (zh) * 2015-09-02 2019-03-29 广东创我科技发展有限公司 一种实现多种大数据计算框架统一接口的方法
CN105574643A (zh) * 2015-11-23 2016-05-11 江苏瑞中数据股份有限公司 一种电网实时数据中心与大数据平台融合方法
CN105574093B (zh) * 2015-12-10 2019-09-10 深圳市华讯方舟软件技术有限公司 一种在基于HDFS的spark-sql大数据处理系统上建立索引的方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101788992A (zh) * 2009-05-06 2010-07-28 厦门东南融通系统工程有限公司 一种数据库查询语句的转换方法和转换系统
CN105550296A (zh) * 2015-12-10 2016-05-04 深圳市华讯方舟软件技术有限公司 一种基于spark-SQL大数据处理平台的数据导入方法
CN105550293A (zh) * 2015-12-11 2016-05-04 深圳市华讯方舟软件技术有限公司 一种基于Spark-SQL大数据处理平台的后台刷新方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Xiaopeng Li 等."Performance Comparison of Hive, Impala and Spark SQL".《2015 7th International Conference on Intelligent Human-Machine Systems and Cybernetics》.2015, *
李爽."基于Spark的数据处理分析系统的设计与实现".《中国优秀硕士学位论文全文数据库-信息科技辑》.2015,第2015年卷(第9期),I138-547. *

Also Published As

Publication number Publication date
CN106777278A (zh) 2017-05-31

Similar Documents

Publication Publication Date Title
CN106777278B (zh) 一种基于Spark的数据处理方法及装置
US20130179863A1 (en) Bug variant detection using program analysis and pattern identification
WO2016082468A1 (zh) 数据图形化方法、装置及数据库服务器
JP2018532171A (ja) Sql審査方法、サーバ及び記憶デバイス
US20140344817A1 (en) Converting a hybrid flow
CN110688544A (zh) 一种查询数据库的方法、设备及存储介质
CN103744651A (zh) 一种面向业务需求的业务处理模型自动生成方法
WO2022027943A1 (zh) 一种基于污染要素源解析的水污染溯源系统及方法
CN110737689A (zh) 数据标准符合性检测方法、装置、系统及存储介质
CN112579578A (zh) 基于元数据的数据质量管理方法、装置、系统及服务器
CN113468204A (zh) 一种数据查询方法、装置、设备、介质
CN116702181A (zh) 基于Apache Calcite的数据脱敏方法、系统、设备及介质
CN112286958A (zh) 数据库查询表达式的处理方法和系统
WO2015196885A1 (zh) 云计算系统的性能数据的采集与存储方法及装置
CN108255852B (zh) Sql执行方法及装置
CN111427784A (zh) 一种数据获取方法、装置、设备及存储介质
CN104298671B (zh) 数据统计分析方法及装置
EP4174680A1 (en) Sql unification method, system, and device, and medium
WO2021259290A1 (zh) 存储过程转换方法、装置、设备和存储介质
CN111221888A (zh) 大数据分析系统及方法
CN110580170B (zh) 软件性能风险的识别方法及装置
CN107341105A (zh) 信息处理方法、终端及服务器
CN109146096B (zh) 报修事件的处理方法、装置、存储介质及电子设备
CN108388589B (zh) 一种数据库sql查询语句自动生成的装置
CN116204550A (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