Spark核心编程---创建RDD

创建RDD:

1:使用程序中的集合创建RDD,主要用于进行测试,可以在实际部署到集群运行之前,自己使用集合构造测试数据,来测试后面的spark应用流程。

2:使用本地文件创建RDD,主要用于临时性地处理一些储存了大量数据的文件

3:使用HDFS文件创建RDD,应该是最常用的生产环境处理方式,主要可以针对HDFS上储存的大数据,进行离线处理操作。

//创建SparkConf
 SparkConf conf = new SparkConf()
                    .setAppName=("//跟类名一样")
                    .setMaster("local");

//创建JavaSparkContext
JavaSparkContext sc = new JavaSparkContext(conf);

//要通过并行化集合的方式创建RDD,那么就调用Parallelize()方法
List<Integer> numbers = Array.asList(1,2,3,4,5,6,7,8,9,10);

JavaRDD<Integer> numberRDD =  sc .parallelize(numbers)  ;
//也可以在这个方法参数位置在添加一个参数,表明创建多少个Partition
sc.parallelize(numbers,5);

//执行reduce算子操作
int sum = numberRDD.reduce(new function2<Integer,Integer,Integer>(){
           private static final long serialVersionUID =1L;

            @override
        public Integer call(Integer num1, Integer num2) throw Exception{
                return num1+num2
    }
});
            //输出累加的和
          System.out.println("和:"+sum)

        //关闭JavaSparkContext
        sc.close();        

额。。。至于其他的2种创建RDD 博打算以后再更

时间: 2024-11-02 00:46:13

Spark核心编程---创建RDD的相关文章

spark浅谈(2):SPARK核心编程

一.SPARK-CORE 1.spark核心模块是整个项目的基础.提供了分布式的任务分发,调度以及基本的IO功能,Spark使用基础的数据结构,叫做RDD(弹性分布式数据集),是一个逻辑的数据分区的集合,可以跨机器.RDD可以通过两种方式进行创建,一种是从外部的数据集引用数据,第二种方式是通过在现有的RDD上做数据转换.RDD抽象是通过语言集成的API来进行暴露,它简化了编程的复杂度,因为这种操纵RDD的方式类似于操纵本地数据集合 二.RDD变换(API阅读) ** * A Resilient

Spark运行原理和RDD解析(DT大数据梦工厂)

Spark一般基于内存,一些情况下也会基于磁盘 Spark优先会把数据放到内存中,如果内存实在放不下,也会放到磁盘里面的 不单能计算内存放的下的数据,也能计算内存放不下的数据 实际如果数据大于内存,则要考虑数据放置策略和优化算法,因为Spark初衷是一寨式处理 小到5~10台的分布式大到8000台的规模,Spark都能运行 大数据计算问题:交互式查询(基于shell.sparkSQL).批处理.机器学习和计算等等 底层基于RDD,分布式弹性数据级,支持各种各样的比如流处理.SQL.SparkR等

(1)spark核心RDD的概念解析、创建、以及相关操作

spark核心之RDD 什么是RDD RDD指的是弹性分布式数据集(Resilient Distributed Dataset),它是spark计算的核心.尽管后面我们会使用DataFrame.Dataset进行编程,但是它们的底层依旧是依赖于RDD的.我们来解释一下RDD(Resilient Distributed Dataset)的这几个单词含义. 弹性:在计算上具有容错性,spark是一个计算框架,如果某一个节点挂了,可以自动进行计算之间血缘关系的跟踪 分布式:很好理解,hdfs上数据是跨

Java接入Spark之创建RDD的两种方式和操作RDD

首先看看思维导图,我的spark是1.6.1版本,jdk是1.7版本 spark是什么? Spark是基于内存计算的大数据并行计算框架.Spark基于内存计算,提高了在大数据环境下数据处理的实时性,同时保证了高容错性和高可伸缩性,允许用户将Spark 部署在大量廉价硬件之上,形成集群. 下载和安装 可以看我之前发表的博客 Spark安装 安装成功后运行示例程序 在spark安装目录下examples/src/main目录中. 运行的一个Java或Scala示例程序,使用bin/run-examp

Spark核心—RDD初探

本文目的 ? 最近在使用Spark进行数据清理的相关工作,初次使用Spark时,遇到了一些挑(da)战(ken).感觉需要记录点什么,才对得起自己.下面的内容主要是关于Spark核心-RDD的相关的使用经验和原理介绍,作为个人备忘,也希望对读者有用. ? 为什么选择Spark ? 原因如下 代码复用:使用Scala高级语言操作Spark,灵活方便,面向对象,函数编程的语言特性可以全部拿来.Scala基本上可以无缝集成java及其相关库.最重要的是,可以封装组件,沉淀工作,提高工作效率.之前用hi

Spark Graphx编程指南

问题导读 1.GraphX提供了几种方式从RDD或者磁盘上的顶点和边集合构造图?2.PageRank算法在图中发挥什么作用?3.三角形计数算法的作用是什么? Spark中文手册-编程指南Spark之一个快速的例子Spark之基本概念Spark之基本概念Spark之基本概念(2)Spark之基本概念(3)Spark-sql由入门到精通Spark-sql由入门到精通续spark GraphX编程指南(1) Pregel API 图本身是递归数据结构,顶点的属性依赖于它们邻居的属性,这些邻居的属性又依

Apache Spark 2.2.0 中文文档 - Spark Streaming 编程指南 | ApacheCN

Spark Streaming 编程指南 概述 一个入门示例 基础概念 依赖 初始化 StreamingContext Discretized Streams (DStreams)(离散化流) Input DStreams 和 Receivers(接收器) DStreams 上的 Transformations(转换) DStreams 上的输出操作 DataFrame 和 SQL 操作 MLlib 操作 缓存 / 持久性 Checkpointing Accumulators, Broadcas

Spark核心概念介绍(翻译自Learning.Spark.Lightning-Fast.Big.Data.Analysis)

既然你已经在shell里运行了你的第一个Spark代码片段,是时候来学习在shell里面编程的更多细节了. 从上层看,每一个Spark程序都是由一个驱动程序组成,这个驱动程序在集群上发布各种各样的平行操作.驱动程序包含你的应用程序的main函数,定义在集群上的分布式数据集,并且将一些操作作用在这些数据集上.在之前的例子中,驱动程序是Spark shell本身,你只需要在里面输入你想要运行的操作就行了. 驱动程序通过一个SparkContext 对象访问Spark,一个SparkContext 对

Spark核心概念理解

本文主要内容来自于<Hadoop权威指南>英文版中的Spark章节,能够说是个人的翻译版本号,涵盖了基本的Spark概念.假设想获得更好地阅读体验,能够訪问这里. 安装Spark 首先从spark官网下载稳定的二进制分发版本号,注意与你安装的Hadoop版本号相匹配: wget http://archive.apache.org/dist/spark/spark-1.6.0/spark-1.6.0-bin-hadoop2.6.tgz 解压: tar xzf spark-x.y.z-bin-di