spark学习路线
文章平均质量分 77
从预览篇、生态篇、开发篇、运维篇、源码篇五个不同的角度来介绍spark的各个方面,从1.0.0开始编写,争取在1.2.0完成所有篇幅并制成PDF文档,作为spark爱好者的参考资料。
mmicky20110730
好几年没写博客了,准备重新开博,将这几年的一些经验和想法沉淀一下。
展开
-
spark1.1.0学习路线
经过一段时间授课,积累下不少的spark知识,想逐步汇总成资料,分享给小伙伴们。对于想视频学习的小伙伴,可以访问炼数成金网站的《spark大数据平台》课程,每周的课程是原理加实际操作。最新的课程是第3期,至于费用,越认真学习,学习成本越低。 从Spark1.1.0开始,重新规划了一下学习路线,由于涉及的内容比较多,会不断的完善其中的内容,争取在Spark1.2.0形成一个完整的体原创 2014-10-24 12:12:38 · 6246 阅读 · 3 评论 -
sparkSQL1.1入门之十:总结
回顾一下,在前面几章中,就sparkSQL1.1.0基本概念、运行架构、基本操作和实用工具做了基本介绍。基本概念:SchemaRDDRuleTreeLogicPlanParserAnalyzerOptimizerSparkPlan运行架构:sqlContext运行架构hiveContext运行架构基本操作原生RDD的操作parquet文件的操作j原创 2014-10-23 11:19:47 · 3257 阅读 · 1 评论 -
sparkSQL1.1入门之九:sparkSQL之调优
spark是一个快速的内存计算框架;同时是一个并行运算的框架。在计算性能调优的时候,除了要考虑广为人知的木桶原理外,还要考虑平行运算的Amdahl定理。 木桶原理又称短板理论,其核心思想是:一只木桶盛水的多少,并不取决于桶壁上最高的那块木块,而是取决于桶壁上最短的那块。将这个理论应用到系统性能优化上,系统的最终性能取决于系统中性能表现最差的组件。例如,即使系统拥有充足的内存资源和原创 2014-10-23 11:28:21 · 10222 阅读 · 2 评论 -
sparkSQL1.1入门之八:sparkSQL之综合应用
Spark之所以万人瞩目,除了内存计算,还有其ALL-IN-ONE的特性,实现了One stack rule them all。下面简单模拟了几个综合应用场景,不仅使用了sparkSQL,还使用了其他Spark组件:店铺分类,根据销售额对店铺分类货品调拨,根据货品的销售数量和店铺之间的距离进行货品调拨 前者将使用sparkSQL+MLlib的聚类算法,后者将使用s原创 2014-09-11 09:18:28 · 6884 阅读 · 1 评论 -
sparkSQL1.1入门之七:ThriftServer和CLI
spark1.1相较于spark1.0,最大的差别就在于spark1.1增加了万人期待的CLI和ThriftServer。使得hive用户还有用惯了命令行的RDBMS数据库管理员很容易地上手sparkSQL,在真正意义上进入了SQL时代。下面先简单介绍其使用,限于时间关系,以后再附上源码分析。1:ThriftServer和CLI的命令参数A:令人惊讶的CLI原创 2014-09-09 10:41:31 · 16535 阅读 · 3 评论 -
sparkSQL1.1入门之六:sparkSQL之基础应用
sparkSQL1.1对数据的查询分成了2个分支:sqlContext 和 hiveContext。 在sqlContext中,sparkSQL可以使用SQL-92语法对定义的表进行查询,表的源数据可以来自:RDDparquet文件json文件 在hiveContext中,sparkSQL可以使用HQL语法,对hive数据进行查询,sparkSQ原创 2014-09-10 09:16:16 · 20356 阅读 · 1 评论 -
sparkSQL1.1入门之五:测试环境之搭建
前面介绍了sparkSQL的运行架构,后面将介绍sparkSQL的使用。在介绍sparkSQL的使用之前,我们需要搭建一个sparkSQL的测试环境。本次测试环境涉及到hadoop之HDFS、hive、spark以及相关的数据文件,相关的信息如下:hadoop版本为2.2.0hive版本为0.13spark版本为1.1.0-rc3MySQL版本为5.6.12测试数据下载地点:http:原创 2014-09-10 08:47:39 · 6892 阅读 · 3 评论 -
sparkSQL1.1入门之四:深入了解sparkSQL运行计划
前面两章花了不少篇幅介绍了SparkSQL的运行过程,很多读者还是觉得其中的概念很抽象,比如Unresolved LogicPlan、LogicPlan、PhysicalPlan是长得什么样子,没点印象,只知道名词,感觉很缥缈。本章就着重介绍一个工具hive/console,来加深读者对sparkSQL的运行计划的理解。1:hive/console安装 spa原创 2014-10-22 08:59:39 · 5780 阅读 · 0 评论 -
sparkSQL1.1入门之三:sparkSQL组件之解析
上篇在总体上介绍了sparkSQL的运行架构及其基本实现方法(Tree和Rule的配合),也大致介绍了sparkSQL中涉及到的各个概念和组件。本篇将详细地介绍一下关键的一些概念和组件,由于hiveContext继承自sqlContext,关键的概念和组件类似,只不过后者针对hive的特性做了一些修正和重写,所以本篇就只介绍sqlContext的关键的概念和组件。概念:Logi原创 2014-10-27 10:58:09 · 6974 阅读 · 3 评论 -
sparkSQL1.1入门之二:sparkSQL运行架构
在介绍sparkSQL之前,我们首先来看看,传统的关系型数据库是怎么运行的。当我们提交了一个很简单的查询:SELECT a1,a2,a3 FROM tableA Where condition 可以看得出来,该语句是由Projection(a1,a2,a3)、Data Source(tableA)、Filter(condition)组成,分别对应sql查询过程中的Result原创 2014-10-10 09:15:04 · 9420 阅读 · 3 评论 -
sparkSQL1.1入门之一:为什么sparkSQL
2014年9月11日,Spark1.1.0忽然之间发布。笔者立即下载、编译、部署了Spark1.1.0。关于Spark1.1的编译和部署,请参看笔者博客Spark1.1.0 源码编译和部署包生成 。 Spark1.1.0中变化较大是sparkSQL和MLlib,sparkSQL1.1.0主要的变动有:增加了JDBC/ODBC Server(ThriftServer),原创 2014-09-15 09:46:59 · 16554 阅读 · 1 评论 -
Spark1.1.0 源码编译和部署包生成
Spark1.1.0的编译对几种编译方法(Maven、SBT、make-distribution.sh)进行了配置项的统一,都可以使用Maven的profile配置项;另外,对于需要额外版权的集成组件也提供了Maven配置项,如spark-ganglia-lgpl、kinesis-asl,方便了用户的编译。在本例中,笔者使用的环境是hadoop2.2.0,支持hive,并和ganglia、kinesis-asl集成。原创 2014-05-13 15:23:45 · 11706 阅读 · 3 评论