spark
文章平均质量分 71
82年的哇哈哈
这个作者很懒,什么都没留下…
展开
-
Spark实现WordCount
首先,编写第一个Spark应用程序 ,我们是如何建立起来的,其入口在哪里呢,需要创建两个对象。 一:val conf = new SparkConf() .setAppName("WordCount") .setMaster("local") 创建SparkConf对象...原创 2018-11-08 16:08:31 · 9751 阅读 · 2 评论 -
创建KeyValues对RDDS
map()函数 返回key/value 例如,包含数行数据的RDD,把每行数据的第一个单词作为keys sc.textFile("/user/tast.txt").map(line=>(line.split(" ")(0),line)) KeyValues对的RDDS的transformationsexample:{(1,2),(3,4),(3,6)}reduceByKey : 作用:把相...原创 2019-01-09 10:19:12 · 209 阅读 · 0 评论 -
RDD介绍
transformation 转换: map: lines.map(word => (word,1)) filter: lines.filter(word => word.cotains("hello")) flatmap 压扁: 一个输入对应多个输出 例如读取一个文本文件产生的结果 会全部在一层或者是一行 就是被压扁了 val inputs=sc.textFile("/user...原创 2019-01-08 17:15:41 · 494 阅读 · 0 评论 -
spark架构及生态
通常当需要处理的数据量超过了单机尺度(比如我们的计算机有4GB的内存,而我们需要处理100GB以上的数据)这时我们可以选择spark集群进行计算,有时我们可能需要处理的数据量并不大,但是计算很复杂,需要大量的时间,这时我们也可以选择利用spark集群强大的计算资源,并行化地计算,其架构示意图如下 Spark Core:包含Spark的基本功能;尤其是定义RDD的API、操作以及这两者上的动作...原创 2019-01-08 10:39:18 · 392 阅读 · 0 评论 -
Spark Streaming介绍以及案例
概观 Spark Streaming是核心Spark API的扩展,可实现实时数据流的可扩展,高吞吐量,容错流处理。 数据来源:Kafka,Flume,Kinesis或TCP套接字等, 可以使用高级函数进行复杂算法进行处理map,例如reduce,join和window。 处理后的数据可以推送到文件系统,数据库等 它的工作原理: Spark Streaming接收实时输入数据...原创 2019-01-07 17:03:17 · 613 阅读 · 0 评论 -
Scala创建一个非常简单的Spark程序
请注意,应用程序应定义main()方法。 该程序只计算包含'a'的行数和Spark README中包含'b'的数字。请注意,您需要将YOUR_SPARK_HOME替换为安装Spark的位置。与之前使用Spark shell(初始化自己的SparkSession)的示例不同,我们将SparkSession初始化为程序的一部分。 我们调用SparkSession.builder构造[[SparkS...原创 2019-01-03 15:49:52 · 487 阅读 · 0 评论 -
spark缓存
Spark还支持将数据集提取到群集范围的内存缓存中。这在重复访问数据时非常有用,例如查询小的“热”数据集或运行像PageRank这样的迭代算法时。举个简单的例子,让我们标记linesWithSpark要缓存的数据集: scala> val textFile = spark.read.textFile("README.md") val linesWithSpark = textFile.f...原创 2019-01-03 15:45:08 · 251 阅读 · 0 评论 -
spark数据集操作
首先将一行映射为整数值,从而创建一个新的数据集。reduce在该数据集上调用以查找最大字数。 scala> textFile.map(line => line.split(" ").size).reduce((a, b) => if (a > b) a else b) res4: Long = 15 我们可以轻松调用其他地方声明的函数。我们将使用Math.max...原创 2019-01-03 15:42:34 · 495 阅读 · 0 评论 -
spark简单API入门
在Spark 2.0之前,Spark的主要编程接口是弹性分布式数据集(RDD)。在Spark 2.0之后,RDD被数据集取代,数据集类似于RDD一样强类型,但在底层有更丰富的优化。 Spark的shell用来学习API 启动命令: ./bin/spark-shell Spark的主要抽象是一个名为Dataset的分布式项目集合。可以从HDFS或通过转换其他数据集来创建数据集。 例如:让...原创 2019-01-03 15:33:11 · 169 阅读 · 0 评论 -
RDD相关概念
RDD概念: RDD 定义为弹性分布式数据集,包含了只读的、分区的、分布式计算的概念;RDD是个类 1、一个数据分区的列表(hdfs的所有数据块的位置信息,保存在RDD类成员变量Array中) 2、保存了数据块上面的计算方法,这个计算方法会应用到每一个数据块 3、一个对其他RDD的依赖,是一个集合,spark就是通过这种依赖关系,像流水一样处理我们的数据 当分区的数据计算失败,只需要根据流...原创 2019-01-09 20:03:54 · 612 阅读 · 0 评论