Spark 从零到开发(一)初识

Apache Spark](https://spark.apache.org/)是一个围绕速度、易用性和复杂分析构建的大数据处理框架。最初在2009年由加州大学伯克利分校的AMPLab开发,并于2010年成为Apache的开源项目之一。

Spark是MapReduce的替代方案,而且兼容HDFS、Hive,可融入Hadoop的生态系统,以弥补MapReduce的不足。

1. 特性

参考:http://spark.apache.org/

  1. Spark可以将Hadoop集群中的应用在内存中的运行速度提升100倍,甚至能够将应用在磁盘上的运行速度提升10倍。
  1. Spark让开发者可以快速的用Java、Scala或Python编写程序。它本身自带了一个超过80个高阶操作符集合。而且还可以用它在shell中以交互式地查询数据。
  1. 除了Map和Reduce操作之外,它还支持SQL查询,流数据,机器学习和图表数据处理。开发者可以在一个数据管道用例中单独使用某一能力或者将这些能力结合在一起使用。
  1. 到处运行,可以跑在Hadoop、k8s或者单机、云服务,可以接受各种不同的数据。

2. 内置库

2.1 Spark SQL

Spark SQL是Apache Spark用于处理结构化数据的模块。

特性
  1. 将SQL查询与Spark程序无缝混合。
results = spark.sql(
  "SELECT * FROM people")
names = results.map(lambda p: p.name)
  1. 以相同方式连接到任何数据源。
spark.read.json("s3n://...")
  .registerTempTable("json")
results = spark.sql(
  """SELECT * 
     FROM people
     JOIN json ...""")
  1. 在现有仓库上运行SQL或HiveQL查询。
  2. 通过JDBC或ODBC连接。
  3. Spark SQL包括基于成本的优化器,列式存储和代码生成,以快速进行查询。同时,它使用Spark引擎扩展到数千个节点和多小时查询,该引擎提供完整的中间查询容错。不要担心使用不同的引擎来获取历史数据。

2.2 Spark Streaming

Spark Streaming可以轻松构建可扩展的容错流应用程序。

特性
  1. 使用方便。通过API构建应用程序。
  2. 容错(开箱即用)。可以恢复之前的工作和操作状态。
  3. 将流式传输与批量和交互式查询相结合。

Spark Streaming可以从HDFSFlumeKafkaTwitterZeroMQ读取数据 。在生产中,Spark Streaming使用ZooKeeperHDFS实现高可用性。

2.3 Spark MLlib

MLlib是Apache Spark的可扩展机器学习库。

特性
  1. 使用方便。可用于Java,Scala,Python和R.
  2. 高质量算法,比MapReduce快100倍。
  3. 随处运行,在Hadoop,Apache Mesos,Kubernetes,独立或云端,可以针对不同的数据源。

MLlib包含许多算法和实用程序。

ML算法包括:

分类:逻辑回归,朴素贝叶斯,......

回归:广义线性回归,生存回归,......

决策树,随机森林和梯度提升树

建议:交替最小二乘法(ALS)

聚类:K均值,高斯混合(GMM),......

主题建模:潜在Dirichlet分配(LDA)

频繁项目集,关联规则和顺序模式挖掘

ML工作流程工具包括:

特征转换:标准化,规范化,散列,......

ML管道施工

模型评估和超参数调整

ML持久性:保存和加载模型和管道

其他工具包括

分布式线性代数:SVD,PCA,......

统计:汇总统计,假设检验,......

2.4 Spark GraphX

GraphX是Apache Spark用于图形和图形并行计算的API。

特性
  1. 灵活性:无缝地使用图形和集合。有效地使用RDD 转换连接图形,以及使用Pregel API编写自定义迭代图算法。

  2. 速度:与最快的专业图形处理系统相比具有可比性。

  3. 图形算法。
    除了高度灵活的API之外,GraphX还提供了各种图形算法,其中许多都是用户提供。知名的算法有:
    网页排名
    连接组件
    标签传播
    SVD ++
    强大的连接组件
    三角计数

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 218,284评论 6 506
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 93,115评论 3 395
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 164,614评论 0 354
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,671评论 1 293
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,699评论 6 392
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,562评论 1 305
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,309评论 3 418
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 39,223评论 0 276
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,668评论 1 314
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,859评论 3 336
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,981评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,705评论 5 347
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,310评论 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,904评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 33,023评论 1 270
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 48,146评论 3 370
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,933评论 2 355

推荐阅读更多精彩内容