[发明专利]一种基于Spark大数据处理平台的查询方法有效

专利信息
申请号: 201510930909.1 申请日: 2015-12-15
公开(公告)号: CN105550318A 公开(公告)日: 2016-05-04
发明(设计)人: 万修远 申请(专利权)人: 深圳市华讯方舟软件技术有限公司;深圳市华讯方舟科技有限公司
主分类号: G06F17/30 分类号: G06F17/30
代理公司: 北京律和信知识产权代理事务所(普通合伙) 11446 代理人: 武玉琴;刘国伟
地址: 518102 广东省深圳市宝*** 国省代码: 广东;44
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 spark 数据处理 平台 查询 方法
【说明书】:

技术领域

发明涉及一种数据处理的查询方法,尤其涉及一种基于Spark大数据处理平台 的查询方法。

背景技术

随着互联网的发展,数以万计的网页不断涌现,而要搜索这些网页首先要抓取存 储,然后进行分析计算,google就是这么做的,但是日益庞大的数据使得存储面临着单台机 器容量不够的问题,查询面临着耗时太多的问题;针对这两个问题,google提出了分布式存 储和分布式并行计算的解决方案,而后来的hadoop产品是这种解决方案的源码实现; hadoop提供了分布式文件系统HDFS和分布式并行计算框架MapReduce,随着hadoop的发展, 其生态系统又不断涌现新的项目产品,如Hbase、hive、pig等,但它们都是基于HDFS存储层 和MapReduce计算框架,MapReduce通过在集群的多个节点上并行执行计算,因此大大加快 了查询的速度,但随着数据量的日益增大,MapReduce渐渐显得力不从心,于是基于内存计 算的Spark计算框架应运而生,Spark的查询速度相比hadoop提升了100倍,因此是目前最先 进的分布式并行计算框架;随着Spark生态系统的发展,在其上又涌现出SparkSQL、Spark Streaming、MLlib、GraphX等,其中SparkSQL是针对SQL用户开发的可以用SQL语言对结构 化数据进行分析查询的工具。

如图1所示,现有技术中,以使用SparkSQL应用程序为例,基于Spark大数据处理 平台的查询方法可以分为五个步骤:

步骤1、SparkSQL应用程序接收用户的SQL语句后,进行语法解析、执行策略优化、 job(查询作业)生成,最后通过调用Spark平台中的SparkContext接口进行job的提交;

步骤2、SparkContext收到job后,定义Task(计算任务)执行成功后如何存储计算 结果,然后提交job给eventProcessActor,接着等待eventProcessActor告知job执行结束, 结束后将计算结果返回给SparkSQL;

步骤3、eventProcessActor收到提交job的事件后,在各个节点分配多个Task开始 并行计算;

步骤4、每个Task执行完毕后向eventProcessActor报告状态和结果, eventProcessActor统计job的所有Task是否全部完成,若完成,则通知SparkContext提交 的job已结束,SparkContext返回计算结果给SparkSQL;

步骤5、SparkSQL得到计算结果后,先进行格式转化,然后拷贝一份给输出模块, 最后由输出模块输出结果。

如图2所示,步骤1主要是解析SQL语句的语法并生成一组代表一个Job的RDD,RDD 是一种分布式数据结构,它描述了要处理的分布式存储的数据以及怎样处理的算法,因此 一个RDD就代表对数据的一个操作,一组RDD就是一个操作序列,按序完成了这一系列操作 后即代表完成了一次查询计算;Spark采用了延迟执行策略,即每个操作不先执行,而是先 生成操作的序列,然后把这个序列发送给执行器执行;这一组RDD所代表的操作因为有序且 不循环,因此其组成的逻辑依赖图又称有向无环图(DAG);在DAG中,下游的RDD是上游的RDD 执行某个操作后生成的。

如图3所示,步骤2主要是将DAG提交给处于另一个线程环境的 eventProcessActor,提交前,分配一块内存,并告知eventProcessActor当Task执行成功后 往这块内存中存储结果,提交后,当前线程挂起,等待eventProcessActor在job完成后唤醒 它,被唤醒后,此时所有Task已经执行结束,并且计算结果全部已经存储到事先分配的内存 中;因此直接将这块存储了结果的内存地址返回给SparkSQL模块。由于要等到所有Task执 行结束才能返回结果,因此客户响应时间过长,事实上,每个Task的结果都是最终结果的一 个子集,没有必要一起输出所有的结果子集;另外,由于输出前要存储整个查询结果,结果 的大小将直接受限于程序的堆栈大小。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳市华讯方舟软件技术有限公司;深圳市华讯方舟科技有限公司,未经深圳市华讯方舟软件技术有限公司;深圳市华讯方舟科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201510930909.1/2.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top