Spark小课堂Week1 Hello Spark

看到Spark这个词,你的第一印象是什么?

  • 这是一朵"火花",官方的定义是Spark是一个高速的、通用的、分布式计算系统!!!

  • 用途:进行大数据计算,这里要注意,大数据是一个相对概念,并没有绝对的量化指标,一般我们认为在业务特定场景要求下,一台机器处理不了的数据都能称为大数据。

  • 前身:大数据计算的开山鼻祖Hadoop,Spark和Hadoop的主要区别就是更快,更通用。

  • 功能:Spark内核设计的非常通用,具有很高的扩展性,目前已经发展出了sql、streaming、机器学习、图计算等组件。

  • 架构:核心架构还是mapreduce,这个模型更加考虑计算的可靠性,对于极端追求性能的场景并不适合。

我们为什么要学Spark

  • 从整个技术发展来看,分布式技术是趋势,逆水行舟,不进则退,学习分布式技术可以让我们不落后于时代。

  • Spark定位非常通用,而且其设计思路比较前沿,是一个学习分布式系统的捷径。

  • Spark代码本身非常简洁高效,其核心代码只有3W多行,是一个非常好的代码学习教材。

从哪里入手去学Spark

  • 传统方法:看教程、文档,尤其想要说明的是Spark而代码本身质量很高,所以代码和注释也是非常好的教材。

  • 实战:搭个小环境跑一跑,尤其结合日志和监控信息等进行分析。

  • 切入:推荐从SparkStreaming切入,因为我们平时开始一般都是应用程序,而Streaming是Spark官方开发的一个应用程序,通过学习,我们可以了解到开发一个Spark应用程序的方方面面。

问题

  1. 我想知道SPARK与HADOOP之间的比较,在不同应用场景中如何选择
    目前来看两者定位不太相同,HADOOP包含了HDFS、MapReduce、YARN三个组件,覆盖了分布式文件存储、计算、资源调度三个领域,SPARK定位仅是计算,所以是对其中MapReduce组件的替代。

  2. spark的起步价和应用场景以及怎么解决这些难题的
    由于分布式计算的特性,涉及到不同机器间的通讯问题,所以会有一定的初始成本,比如序列化、Shuffle等,Spark由于大量采用了内存处理,相比于Hadoop,起步价问题已经有了很大的缓存。但对于容量和时效不需要分布式计算的场景,肯定仍然是Oracle等传统技术更快。

关于

小课堂是在公司进行内部交流的一系列主题,偏基础,但是比较零散,持续更新中。

Spark小课堂Week1 Hello Spark的更多相关文章

  1. Spark小课堂Week7 从Spark中一个例子看面向对象设计

    Spark小课堂Week7 从Spark中一个例子看面向对象设计 今天我们讨论了个问题,来设计一个Spark中的常用功能. 功能描述:数据源是一切处理的源头,这次要实现下加载数据源的方法load() ...

  2. Spark小课堂Week6 启动日志详解

    Spark小课堂Week6 启动日志详解 作为分布式系统,Spark程序是非常难以使用传统方法来进行调试的,所以我们主要的武器是日志,今天会对启动日志进行一下详解. 日志详解 今天主要遍历下Strea ...

  3. Spark小课堂Week5 Scala初探

    Spark小课堂Week5 Scala初探 Scala是java威力加强版. 对Java的改进 这里会结合StreamingContext.scala这个代码说明下对Java的改进方面. 方便测试方式 ...

  4. Spark小课堂Week4 从控制台看Spark逻辑结构

    Spark小课堂Week4 从控制台看Spark逻辑结构 层级关系: 从监控控制台,我们可以看到如下关系: 一个 Job 包含 n Stage 一个 Stage 包含 n Task Job0解决什么问 ...

  5. Spark小课堂Week3 FirstSparkApp(Dataframe开发)

    Spark小课堂Week3 FirstSparkApp(代码优化) RDD代码简化 对于昨天练习的代码,我们可以从几个方面来简化: 使用fluent风格写法,可以减少对于中间变量的定义. 使用lamb ...

  6. Spark小课堂Week3 FirstSparkApp(RDD开发)

    Spark小课堂Week3 FirstSparkApp 问题:Java有哪些数据结构 大致有如下几种,其中List与Map是最重要的: List Map Set Array Heap Stack Qu ...

  7. Spark小课堂Week2 Hello Streaming

    Spark小课堂Week2 Hello Streaming 我们是怎么进行数据处理的? 批量方式处理 目前最常采用的是批量方式处理,指非工作时间运行,定时或者事件触发.这种方式的好处是逻辑简单,不影响 ...

  8. spark集群配置以及java操作spark小demo

    spark 安装 配置 使用java来操作spark spark 安装 tar -zxvf spark-2.4.0-bin-hadoop2.7.tgz rm spark-2.4.0-bin-hadoo ...

  9. 个人写spark小测试

    写脚本生成类似文件 java 代码 封装类 package day0327; import java.util.UUID; public class data { private String ip; ...

随机推荐

  1. c盘太小

    C:\Users\Administrator\AppData\Roaming\Apple Computer

  2. signed char、unsigned char

    什么是无符号char类型?与常见的char类型有何不同? 在c++中有三种不同的字符类型:char,signed char,unsigned char.如果要应用与文本字符,就使用不加限制的char类 ...

  3. MongoDB,HDFS, Spark to 电影推荐

    http://www.infoq.com/cn/news/2014/12/mongdb-spark-movie-recommend MovieWeb是一个电影相关的网站,它提供的功能包括搜索电影信息. ...

  4. Redis' High Availability

    Redis Sentinel is a system designed to help managing Redis instances. It performs the following thre ...

  5. mongoDB 插入数据 用java实现

    import java.net.UnknownHostException; import com.mongodb.BasicDBObject; import com.mongodb.DB; impor ...

  6. MSP430常见问题之AD转换类

    Q1:MSP430F149 AD 的输入阻抗有多大?A1:RC<2000欧*30PF Q2:MSP430 ADC12 模块的速度?A2: ADC12 的转换速率是转换所需的ADC12CLK 以及 ...

  7. UML——综合实例

  8. JDBC之数据库操作

    JDBC重要界面有: java.sgl.DriverManager:完成驱动程序的装载和建立新的数据库连接. java.sgl.Connection:表示对某一指定数据库的连接. java.sgl.S ...

  9. MDAC 在WINDOWS XP SP3 不能安装 的解决方法

    MDAC 在WINDOWS XP SP3 不能安装 的解决方法 解决步骤如下: c:/windows/inf 下找出mdac.inf 然后点右键->安装.在弹出提示路径选取c:/windows/ ...

  10. 将svn添加到系统服务

    C:\Users\Administrator>sc create svnServer binPath= "D:\Program Files\Subversion\bin\svnserv ...