真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

Spark系列(一)——Spark簡介

一、簡介

Spark 于 2009 年誕生于加州大學(xué)伯克利分校 AMPLab,2013 年被捐贈給 Apache 軟件基金會,2014 年 2 月成為 Apache 的頂級項(xiàng)目。相對于 MapReduce 的批處理計(jì)算,Spark 可以帶來上百倍的性能提升,因此它成為繼 MapReduce 之后,最為廣泛使用的分布式計(jì)算框架。

創(chuàng)新互聯(lián)建站-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比永城網(wǎng)站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式永城網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋永城地區(qū)。費(fèi)用合理售后完善,十余年實(shí)體公司更值得信賴。

二、特點(diǎn)

Apache Spark 具有以下特點(diǎn):

  • 使用先進(jìn)的 DAG 調(diào)度程序,查詢優(yōu)化器和物理執(zhí)行引擎,以實(shí)現(xiàn)性能上的保證;
  • 多語言支持,目前支持的有 Java,Scala,Python 和 R;
  • 提供了 80 多個(gè)高級 API,可以輕松地構(gòu)建應(yīng)用程序;
  • 支持批處理,流處理和復(fù)雜的業(yè)務(wù)分析;
  • 豐富的類庫支持:包括 SQL,MLlib,GraphX 和 Spark Streaming 等庫,并且可以將它們無縫地進(jìn)行組合;
  • 豐富的部署模式:支持本地模式和自帶的集群模式,也支持在 Hadoop,Mesos,Kubernetes 上運(yùn)行;
  • 多數(shù)據(jù)源支持:支持訪問 HDFS,Alluxio,Cassandra,HBase,Hive 以及數(shù)百個(gè)其他數(shù)據(jù)源中的數(shù)據(jù)。

Spark 系列(一)—— Spark 簡介

三、集群架構(gòu)

Term(術(shù)語)Meaning(含義)
Application Spark 應(yīng)用程序,由集群上的一個(gè) Driver 節(jié)點(diǎn)和多個(gè) Executor 節(jié)點(diǎn)組成。
Driver program 主運(yùn)用程序,該進(jìn)程運(yùn)行應(yīng)用的 main() 方法并且創(chuàng)建 SparkContext
Cluster manager 集群資源管理器(例如,Standlone Manager,Mesos,YARN)
Worker node 執(zhí)行計(jì)算任務(wù)的工作節(jié)點(diǎn)
Executor 位于工作節(jié)點(diǎn)上的應(yīng)用進(jìn)程,負(fù)責(zé)執(zhí)行計(jì)算任務(wù)并且將輸出數(shù)據(jù)保存到內(nèi)存或者磁盤中
Task 被發(fā)送到 Executor 中的工作單元

Spark 系列(一)—— Spark 簡介
執(zhí)行過程

  1. 用戶程序創(chuàng)建 SparkContext 后,它會連接到集群資源管理器,集群資源管理器會為用戶程序分配計(jì)算資源,并啟動 Executor;
  2. Dirver 將計(jì)算程序劃分為不同的執(zhí)行階段和多個(gè) Task,之后將 Task 發(fā)送給 Executor;
  3. Executor 負(fù)責(zé)執(zhí)行 Task,并將執(zhí)行狀態(tài)匯報(bào)給 Driver,同時(shí)也會將當(dāng)前節(jié)點(diǎn)資源的使用情況匯報(bào)給集群資源管理器。

四、核心組件

Spark 基于 Spark Core 擴(kuò)展了四個(gè)核心組件,分別用于滿足不同領(lǐng)域的計(jì)算需求。

Spark 系列(一)—— Spark 簡介

3.1 Spark SQL

Spark SQL 主要用于結(jié)構(gòu)化數(shù)據(jù)的處理。其具有以下特點(diǎn):

  • 能夠?qū)?SQL 查詢與 Spark 程序無縫混合,允許您使用 SQL 或 DataFrame API 對結(jié)構(gòu)化數(shù)據(jù)進(jìn)行查詢;
  • 支持多種數(shù)據(jù)源,包括 Hive,Avro,Parquet,ORC,JSON 和 JDBC;
  • 支持 HiveQL 語法以及用戶自定義函數(shù) (UDF),允許你訪問現(xiàn)有的 Hive 倉庫;
  • 支持標(biāo)準(zhǔn)的 JDBC 和 ODBC 連接;
  • 支持優(yōu)化器,列式存儲和代碼生成等特性,以提高查詢效率。

3.2 Spark Streaming

Spark Streaming 主要用于快速構(gòu)建可擴(kuò)展,高吞吐量,高容錯(cuò)的流處理程序。支持從 HDFS,F(xiàn)lume,Kafka,Twitter 和 ZeroMQ 讀取數(shù)據(jù),并進(jìn)行處理。

Spark 系列(一)—— Spark 簡介

Spark Streaming 的本質(zhì)是微批處理,它將數(shù)據(jù)流進(jìn)行極小粒度的拆分,拆分為多個(gè)批處理,從而達(dá)到接近于流處理的效果。

Spark 系列(一)—— Spark 簡介

3.3 MLlib

MLlib 是 Spark 的機(jī)器學(xué)習(xí)庫。其設(shè)計(jì)目標(biāo)是使得機(jī)器學(xué)習(xí)變得簡單且可擴(kuò)展。它提供了以下工具:

  • 常見的機(jī)器學(xué)習(xí)算法:如分類,回歸,聚類和協(xié)同過濾;
  • 特征化:特征提取,轉(zhuǎn)換,降維和選擇;
  • 管道:用于構(gòu)建,評估和調(diào)整 ML 管道的工具;
  • 持久性:保存和加載算法,模型,管道數(shù)據(jù);
  • 實(shí)用工具:線性代數(shù),統(tǒng)計(jì),數(shù)據(jù)處理等。

3.4 Graphx

GraphX 是 Spark 中用于圖形計(jì)算和圖形并行計(jì)算的新組件。在高層次上,GraphX 通過引入一個(gè)新的圖形抽象來擴(kuò)展 RDD(一種具有附加到每個(gè)頂點(diǎn)和邊緣的屬性的定向多重圖形)。為了支持圖計(jì)算,GraphX 提供了一組基本運(yùn)算符(如: subgraph,joinVertices 和 aggregateMessages)以及優(yōu)化后的 Pregel API。此外,GraphX 還包括越來越多的圖形算法和構(gòu)建器,以簡化圖形分析任務(wù)。

更多大數(shù)據(jù)系列文章可以參見 GitHub 開源項(xiàng)目大數(shù)據(jù)入門指南


分享文章:Spark系列(一)——Spark簡介
文章鏈接:http://weahome.cn/article/jsdphh.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部