欧美一区2区三区4区公司二百,国产精品婷婷午夜在线观看,自拍偷拍亚洲精品,国产美女诱惑一区二区

歡迎來(lái)到云服務(wù)器

大數(shù)據(jù)應(yīng)用

一篇文章看懂 Spark RDD

Apache Spark 是專為大規(guī)模數(shù)據(jù)處理而設(shè)計(jì)的快速通用的計(jì)算引擎。它產(chǎn)生于 UC Berkeley AMP Lab,繼承了 MapReduce 的優(yōu)點(diǎn),但是不同于 MapReduce 的是,Spark 可以將結(jié)果保存在內(nèi)存中,一直迭代計(jì)算下去,除非遇到 shuffle 。因此 Spark 能更好的適用于數(shù)據(jù)挖掘與機(jī)器學(xué)習(xí)等要迭代的算法。值得注意的是,官網(wǎng)說(shuō)的 Spark 是 MR 計(jì)算速度的 100 倍。僅僅適用于邏輯回歸等這樣的迭代計(jì)算。

2 Spark 的運(yùn)行模式

Local 模式:多用于本機(jī)編寫、測(cè)試代碼。 Standalone 模式:這是 Spark 自帶的資源調(diào)度框架,它支持完全分布式。 Yarn 模式:這是 hadoop 里面的一個(gè)資源調(diào)度框架,Spark 同樣也可以使用。 Mesos 模式:為應(yīng)用程序(如Hadoop、Spark、Kafka、ElasticSearch)提供API的整個(gè)數(shù)據(jù)中心和云環(huán)境中的資源管理和調(diào)度。

下面分別介紹一下 Standalone 和 Yarn 模式下任務(wù)流程。

Standalone-client 提交方式

提交命令如下:以官方給的計(jì)算 PI 的代碼為例。

./spark-submit  --master spark://node1:7077  --class org.apache.spark.example.SaprkPi  ../lib/spark-examples-1.6.0-hadoop2.6.0.jar  1000 

執(zhí)行流程圖以及原理:

Standalone-cluster 提交方式

提交命令如下:以官方給的計(jì)算 PI 的代碼為例。

./spark-submit  --master spark://node1:7077  --deploy-mode cluster  --class org.apache.spark.example.SaprkPi  ../lib/spark-examples-1.6.0-hadoop2.6.0.jar  1000 

執(zhí)行流程圖以及原理:

Yarn-cluster 提交方式

提交命令如下:以官方給的計(jì)算 PI 的代碼為例。

./spark-submit  --master yarn  --deploy-mode client  --class org.apache.spark.example.SaprkPi  ../lib/spark-examples-1.6.0-hadoop2.6.0.jar  1000 

執(zhí)行流程圖以及原理:

Yarn-cluster 提交方式

提交命令如下:以官方給的計(jì)算 PI 的代碼為例。

./spark-submit  --master yarn  --deploy-mode cluster  --class org.apache.spark.example.SaprkPi  ../lib/spark-examples-1.6.0-hadoop2.6.0.jar  1000 

執(zhí)行流程圖以及原理:

3 RDD

Spark core 最核心的就是 Resilient Distributed Dataset (RDD) 了,RDD 比較抽象了。源碼中 RDD.scala 中對(duì) RDD 進(jìn)行了一段描述。最主要的是下面的五個(gè)方面;

/**  * Internally, each RDD is characterized by five main properties:  *  * - A list of partitions  * - A function for computing each split  * - A list of dependencies on other RDDs  * - Optionally, a Partitioner for key-value RDDs (e.g. to say that the RDD is hash-partitioned)  * - Optionally, a list of preferred locations to compute each split on (e.g. block locations for  * an HDFS file)  *  * All of the scheduling and execution in Spark is done based on these methods, allowing each RDD  * to implement its own way of computing itself. Indeed, users can implement custom RDDs (e.g. for  * reading data from a new storage system) by overriding these functions.   */ 

RDD 的五大特性:

RDD 是由一系列的 Partition 組成的。 函數(shù)作用在每一個(gè) split 上。 RDD 之間有一系列依賴關(guān)系。 分區(qū)器是作用在 K,V 格式的 RDD 上。 RDD 提供一系列最佳的位置

先記住這五個(gè)特性,之后的學(xué)習(xí)會(huì)慢慢體會(huì)到這樣設(shè)計(jì)的好處。下面是理解 RDD 的邏輯圖;

看這個(gè)圖再回頭理解一下上面的五個(gè) RDD 的特性。

騰訊云代理

Copyright © 2003-2021 MFISP.COM. 國(guó)外vps服務(wù)器租用 夢(mèng)飛云服務(wù)器租用 版權(quán)所有 ? 粵ICP備11019662號(hào)

主站蜘蛛池模板: 黄浦区| 武乡县| 濮阳县| 建宁县| 邛崃市| 华坪县| 马尔康县| 涪陵区| 宣汉县| 古田县| 承德县| 丹巴县| 竹山县| 平湖市| 肇东市| 仁怀市| 佛山市| 新乐市| 鄄城县| 博客| 龙口市| 拉孜县| 孟州市| 荆门市| 甘洛县| 昭觉县| 石阡县| 离岛区| 五大连池市| 栖霞市| 博湖县| 清河县| 区。| 勐海县| 新安县| 资溪县| 伊宁县| 黄平县| 青浦区| 泸定县| 阜平县|