为了账号安全,请及时绑定邮箱和手机立即绑定

Spark从零开始

Terby JAVA开发工程师
难度初级
时长 2小时18分
学习人数
综合评分9.80
56人评价 查看评价
9.8 内容实用
9.7 简洁易懂
9.9 逻辑清晰
  • Spark快速且通用的集群计算平台
    ➢ spark是快速的
    ○ Spark扩充了流行的Mapreduce计算模型
    ○ Spark是基于内存的计算
    ➢ spark是通用的
    ○ 容纳了其他分布式系统拥有的功能:批处理、迭代式计算、交互查询和流处理等,方便维护
    ○ 优点:降低了维护成本
    ➢ spark是高度开放的
    ○ Spark提供了Python,Java,Scala,SQL的API和丰富的内置库。
    ○ Spark和其他的大数据工具整合的很好,包括hadoop,kafka等。

    查看全部
    0 采集 收起 来源:Spark简介

    2022-11-06

    • RDDs血统关系图

    Spark维护着RDDs之间的依赖关系和创建关系,叫做 血统关系图

    Spark使用血统关系图计算每个RDD的需求和恢复丢失的数据


    • 延迟计算( Lazy Evaluation)

    在第一次使用Action操作时才进行计算, 减少数据传输

    Spark内部记录metadat表明 transformation操作已经相应

    • RDD.persist() 持久操作

    默认每次RDD进行action操作,会重新计算

    persist()后可以重复利用一个RDD (缓存)



    查看全部
    0 采集 收起 来源:RDDS的特性

    2022-03-25

  • //scala
    //RDD逐元素transformation
    lines.map(word=>(word,1))
    lines.filter(word=>word.contains("hello"))
    lines.flatMap(line=>line.split(" "))      //压扁
    
    //集合运算
    rdd1.distinct()    //去重
    rdd1.union(rdd2)    //并集
    rdd1.intersection(rdd2)    //交集
    rdd1.subtract(rdd2)
    查看全部
  • RDDs创建

    #scala
    val rdd= sc.parallelize(Array(1,2,3,4),4)
    #参数1:待并行化处理的集合
    #参数2:分区个数
    rdd.count()
    rdd.foreach(println)
    
    #加载外部数据
    val rddText = sc.textFile("hello.txt")

    Scala基础

    #变量
    val 变量值不可修改
    var 可指向类型相同的值
    #匿名函数和类型推断  自动推断line是string类型,可调用contain方法
    lines.filter(line => line.contains("world"))
    查看全部
    0 采集 收起 来源:Rdds介绍

    2022-03-23

  • Drive Programs通过 SparkContext 对象访问Spark


    SparkContext 对象(即sc) 代表和一个集群的连接 

    scala> val lines= sc.textFile("/home/soft/hello.txt")
    lines即为RDDs

    RDDs弹性分布式数据集:  并行分布在整个集群中

    RDDs是Spark分发数据和计算的基础抽象类

    一个RDD是不可改变的分布式集合对象

    Spark中所有计算都是RDD操作完成


    分片:

    一个RDD内部有许多partitions分片组成, 

    每个partition包含一部分数据, 可在集群不同节点计算

    分片是Spark并行处理的单元

    查看全部
    0 采集 收起 来源:Rdds介绍

    2022-03-23

  • Wordcount

    //Scala
    
    Object WordCount{
        def main(args: Array[String]){
            val conf= new SparkConf().setAppName("wordcount")
            val sc = new SparkContext(conf)
            
            val input= sc.textFile("/home/soft/hello.txt")
            //RDD操作:压扁
            val lines = input.flatMap(line=> line.split(" "))
            //转换成kv对
            val count= lines.map(word=>(word,1)).reduceByKey{case (x,y)=>x+y}
            val output= count.saveAsTextFile("/home/result")
        }
    }

    Project Structure -> Artifacts ->+然后 BuildArtifacts  打包Jar


    启动集群:

            启动master  start-master.sh

            启动worker  spark-class

            提交作业 spark-submit

    #启动worker
    spark-class org.apache.spark.deploy.worker.Worker spark://localhost.localdomain:4040
    #提交
    spark-submit --master spark://localhost.localdomain:4040 --class WordCount /home/soft/hello.jar
    #上传jar包
    rz -be
    查看全部
  • RDDS的特性

    查看全部
    0 采集 收起 来源:RDDS的特性

    2021-09-28

  • RDD基本操作之action




    查看全部
  • rdd缓存级别

    查看全部
    0 采集 收起 来源:RDDS的特性

    2021-08-28

  • 小结

    查看全部
  • distinct:驱虫

    union:合并

    intersection:交集

    subtract:差集

    查看全部
  • spark与hadoop

    spark计算时效:几秒钟、几分钟

    存储:基于内存计算,需要借助hdfs持久化数据

    查看全部
  • spark core

    查看全部
    0 采集 收起 来源:Spark生态介绍

    2021-08-28

  • spark的生态

    查看全部
    0 采集 收起 来源:Spark生态介绍

    2021-08-28

  • 思路,PPT
    查看全部
    0 采集 收起 来源:Spark生态介绍

    2021-04-06

举报

0/150
提交
取消
课程须知
1、 简单Linux的操作
老师告诉你能学到什么?
1、了解Spark到底是什么 2、了解Spark和Hadoop的区别 3、了解Spark的基础知识和概念 4、掌握Spark RDD的基本操作和特性 5、掌握Spark程序的开发和部署流程

微信扫码,参与3人拼团

意见反馈 帮助中心 APP下载
官方微信
友情提示:

您好,此课程属于迁移课程,您已购买该课程,无需重复购买,感谢您对慕课网的支持!