spark
码农Academy
码农Academy,专注分享Java技术干货,包括Java基础、Spring Boot、Spring Cloud、Mysql、Redis、Elasticsearch、中间件、架构设计、面试题、程序员攻略等。
展开
-
Spark——键值对操作
一、动机 Spark为包含键值对类型的RDD提供了一些专有的操作。这些RDD被称为pairRDD。提供并行操作各个节点或跨界点重新进行数据分组的操作接口。 二、创建Pair RDD 1、在sprk中,很多存储键值对的数据在读取时直接返回由其键值对数据组成的pair RDD。 2、可以调用map()函数,将一个普通的RDD转换为pair RDD。 在Scala中,为了提原创 2016-11-28 17:41:51 · 7407 阅读 · 2 评论 -
Spark——RDD操作详解
一、基本RDD 1、针对各个元素的转化操作 最常用的转化操作是map()和filter()。转化操作map()J接收一个函数,把这个函数用于RDD中的每一个元素,将函数的返回结果作为结果RDD中对应元素。而转化操作filter()则接收一个函数,将RDD满足该函数的元素放入新的RDD中返回。map()的返回值类型不需要和输入类型一样。 从一个RDD变成另外一个RDD。lazy,懒执行 。比如根原创 2016-11-22 11:02:30 · 9351 阅读 · 0 评论 -
Spark——RDD创建详解
一、RDD创建的两种方式 1、外部数据源 Scala:val file = sc.textFile("hdfs://hadoop:8020/words.txt",partitions )//partitions分区参数,不写,是默认的分区个数,可手动指定Java:JavaRDD<String> lines = sc.textFile("hdfs://hadoop:8020/words.txt")原创 2016-11-21 17:49:33 · 749 阅读 · 0 评论 -
spark自带demo的详解
import scala.Tuple2;import org.apache.spark.SparkConf;import org.apache.spark.api.java.JavaPairRDD;import org.apache.spark.api.java.JavaRDD;import org.apache.spark.api.java.JavaSparkContext;import原创 2016-11-21 17:46:31 · 7018 阅读 · 1 评论 -
Spark的5大优势
一、Apache Spark 的5大优势: 1、 更高的性能。因为数据被加载到集群主机的分布式内存中。数据可以被快速的转换迭代,并缓存用以后续的频繁访问需求。在数据全部加载到内存的情况下,Spark可以比Hadoop快100倍,在内存不够存放所有数据的情况下快hadoop10倍。 2、通过建立在Java,Scala,Python,SQL(应对交互式查询)的标准API以方便各行各业使用,同时还含有原创 2016-11-21 17:44:51 · 12616 阅读 · 1 评论 -
Centos下环境搭建spark环境
前提:已安装Hadoop(至少安装了HDFS) 一、安装scala 下载scala-2.10.4.tgz 地址:http://www.scala-lang.org/download/2.10.4.html#Software_Requirements 下载好后,使用rz命令上传到/home/tools下后解压 tar -zxf scala-2.10.4.tgz -C ../softwares原创 2016-11-15 12:01:09 · 4741 阅读 · 0 评论 -
Hadoop分布式文件系统——HDFS数据流
一、剖析文件读取 客户端及与之交互的HDFS、namenode和datanode之间的数据流。如图显示读取文件时事件的发生顺序。 1、客户端通过调用FileSyste对象的open方法来打开希望读取的文件,对于HDFS来说,这个对象是分布式文件系统的一个实例。DistributedFileSystem通过使用RPC来调用namenode,以确定文件块的起始位置,对于每一个块,namenode原创 2016-11-30 16:54:20 · 715 阅读 · 0 评论 -
Spark——数据分区(进阶)
对数据集在节点间的分区进行控制是Spark的一个特性之一。在分布式程序中通信的开销很大,和单节点的程序需要为记录集合选择合适的数据结构一样,Spark程序可以通过控制RDD分区方式来减少通信开销。只有当数据集多次在诸如连接这种基于键的操作中使用时,分区才会有帮助。若RDD只需要扫描一次,就没有必要进行分区处理。 一、获取RDD的分区方式 在Scala和java中,可以使用RDD的par原创 2016-11-30 16:31:41 · 6270 阅读 · 3 评论 -
Spark基础——RDD特性及操作
一、基石RDD( resilient distributed dataset) spark的核心就是RDD(弹性分布式数据集),一种通用的数据抽象。封装了基础的数据操作,如map,filter,reduce等。RDD提供数据共享的抽象,相对比其他大数据处理框架,如MapReduce,Pege1,DryadLINQ和HIVE等均缺乏此特性,所以RDD更为通用。 简单的来概括RD原创 2016-11-16 13:39:23 · 1604 阅读 · 0 评论 -
Spark Cluster与Application中的重要概念以及如何提交应用spark-submit
一、Spark的运行机制: 一个Spark应用包含两个部分: (1) Driver Program(一个):里面包含最重要的SparkContext。 (2)Executor(多个):一个里面包含多个Task(任务)和Cache(缓存)。1、构建Spark Application运行环境 在Driver Program中新建SparkContext(包含spar原创 2016-11-23 09:08:00 · 1101 阅读 · 0 评论