Spark引入

简介: Spark引入

本来一开始就是准备给徒儿写spark的文章来着,掐掐肉肉的手指,算到前面前面已经铺垫了许久。前几日大雨刷洗了整个广州,谁知周一上班又回到了万里晴空,大家的话题瞬间由谈论各种积水转到了天气很热之类话题,然后会扯到吃个冰西瓜特爽,见到老板卖得好,就会怼上一句老板以前肯定是程序员,以至于都忘了一开始是本来聊得啥。但是不管什么故事总归会有个开场,正如spark进入我们项目世界那样。

在我们真正使用spark程序去做开发是我们在大量使用hive之后的很长一段时间。作为一名程序员,都是按捺不住那颗对新技术追求的心,尤其是spark一开始就号称比mapreduce快100倍。但是并不是所有的岗位都让你去做模型训练,也不是所有的etl都需要spark,实际情况到目前为止,hive依然是公司大量使用的etl和数据分析工具。新技术方案的引入往往是由于传统的手段不大适合的时候会引入,当我们的项目在看到了spark中可以程序化组合sql去执行作业运算的时候,spark在这个时候才真正引入我们的视野。浩浩荡荡的踩坑之路才由这里开始。

要进入spark世界,首先肯定去官网转转,虽然是在公众号里面读文章,但是我们学习是从正规的官网上面获得,所以对知识的可靠底气很足。

 

 

 

图一:spark的官网首页

我们可以发现官网还是比较会打广告的,首先100x faster,这还能说什么呢,对于程序员,一个程序快100倍的速度肯定高兴得睡不着觉了,我就这样被吸引过来的,哼哼!下面呢,告诉你写应用呢用Java,这个没问题;后面scala的话,大部分小伙伴肯定眉头紧锁,或者直接摇摇头;Python,大部分C++或者会用脚本的同学都会这个,而且一般Python上手比较简单,还行;R语言,这个就一般统计专业的同学是笑着的,程序员就沉默的;SQL,哈哈大部分人都会眼前一亮,程序员分析师sql这个都会,看到这里基本可以稳住80%以上技术人员的心了。后面那个,整合了SQL,streaming,后面来个复杂分析,高大上,逼格满满上去了,再加上后面的小格子图,尤其是MLib小括号(machine learning),GraphX(graph),虽然大部分小伙伴只是用sql那部分,但是,一说出搞spark,稍微外行点的人都会来句,厉害了,额滴哥~! 还没完,后面还有一部分:

 

图二:各个地方都是可以运行的

这部分呢,才是我们的开始,Spark说明了可以运行在任何地方,尤其是可以运行在Yarn上面。实际的情况是这样子,一般公司里面会已经有了Hadoop集群,已经用着了hive去处理很多问题,但是一开始不想大规模上线spark的内容,这种时候spark的运行的灵活性,可以让公司花比较少的代价,就可以上线spark的应用。还一点就是上面说到的获取数据的灵活,可以从hdfs,cassandra,hbase,hive中获取,这样使得spark的适应性变得很强。spark都做到了这种程度了,应该很多小伙伴都是迫不及待来用spark了吧。

接下来,我们来体验我们的spark程序~待续

目录
相关文章
|
7月前
|
分布式计算 资源调度 监控
【Spark】 Spark的基础环境 Day03
【Spark】 Spark的基础环境 Day03
52 0
【Spark】 Spark的基础环境 Day03
|
4月前
|
分布式计算 资源调度 Shell
如何开始使用Spark框架?
【8月更文挑战第31天】如何开始使用Spark框架?
74 2
|
4月前
|
SQL 机器学习/深度学习 分布式计算
Spark框架
【8月更文挑战第31天】Spark框架
42 2
|
7月前
|
Java 程序员 调度
park与unpark基本使用与原理分析
park与unpark基本使用与原理分析
134 0
|
SQL 存储 分布式计算
什么是 Spark?Spark 的核心模块、Spark 的核心组件
什么是 Spark?Spark 的核心模块、Spark 的核心组件
692 0
|
安全 Java 程序员
如何理解并使用 park 与 unpark
park和unpark是Java中的两个线程同步工具,用于线程的阻塞和唤醒操作。
399 0
如何理解并使用 park 与 unpark
|
存储 分布式计算 大数据
Spark中几种ShuffleWriter的区别你都知道吗?
一.前言 在Spark中有三种shuffle写,分别是BypassMergeSortShuffleWriter、UnsafeShuffleWriter、SortShuffleWriter。分别对应三种不同的shuffleHandle。
1347 0
|
分布式计算 Spark 机器学习/深度学习
Spark2.4.0源码分析之WorldCount FinalRDD构建(一)
- Spark dataSet执行计算转成FinalRDD - FinalRdd从第一个RDD到最到一个RDD的转化过程 - RDD之间的依赖引用关系 - ShuffleRowRDD默认分区器为HashPartitioning,实际new Partitioner,分区个数为200
1113 0
|
SQL 存储 分布式计算
Spark2.1.0之模块设计
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/beliefer/article/details/80386736 在阅读本文之前,读者最好已经阅读了《Spark2.1.0之初识Spark》和《Spark2.1.0之基础知识》两篇文章。
2044 0