衡阳派盒市场营销有限公司

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

一文詳細了解APACHE SPARK開源框架

NVIDIA英偉達 ? 來源:NVIDIA英偉達 ? 作者:NVIDIA英偉達 ? 2022-04-19 14:22 ? 次閱讀

Apache Spark 是一個開源框架,適用于跨集群計算機并行處理大數據任務。它是在全球廣泛應用的分布式處理框架之一。

什么是 APACHE SPARK?

伴隨數據的巨量增長,Apache Spark 已成為分布式橫向擴展數據處理的熱門框架之一,可以在本地和云端數以百萬計的服務器上運行。

Apache Spark 是應用于大型數據處理的快速通用分析引擎,可在 YARN、Apache Mesos、Kubernetes 上運行,也可獨立或在云端運行。借助用于 SQL、流處理、機器學習和圖形處理的高級運算符及庫,Spark 使開發(fā)者能夠通過交互式 shell、筆記本或應用程序包來使用 Scala、Python、R 或 SQL 輕松構建并行應用程序。通過功能編程模型和相關查詢引擎 Catalyst,Spark 支持批量和交互式分析,可將作業(yè)轉換為查詢方案,并跨集群節(jié)點調度查詢方案中的操作。

Spark 核心數據處理引擎之上存在多個用于 SQL 和 DataFrame、機器學習、GraphX、圖形計算和流處理的庫。用戶可在來自各種數據源(例如 HDFS、Alluxio、Apache Cassandra、Apache HBase 或 Apache Hive)的海量數據集上結合使用這些庫。

f0803436-bf94-11ec-9e50-dac502259ad0.png

Apache Spark 組件

為何選擇 APACHE SPARK?

Apache Spark 繼續(xù)了 Apache Hadoop 在 15 年前開始的大數據分析工作,并已成為大規(guī)模分布式數據處理的先進框架。

2010 年代初,大數據分析的流行促使 Hadoop 的使用量增長,而 Hadoop MapReduce 的性能限制成為了阻礙。MapReduce 的性能因其磁盤檢查點結果模型而遭遇瓶頸。同時,MapReduce 的低級別編程模型也限制了 Hadoop 的采用。

Apache Spark 最初是加利福尼亞大學伯克利分校 AMPLab 的一個研究項目,其目標是維持 MapReduce 可擴展、分布式、容錯處理框架的優(yōu)勢,同時促使該框架變得更高效、更易于使用。Spark 能夠重復利用多線程輕量級任務(并非啟動和終止進程),還能跨迭代將數據緩存于內存中,無需在各階段間寫入磁盤,因此 Spark 在數據流程和迭代算法方面比 MapReduce 更高效。Spark 使用容錯分布式 DataFrame 來增強并行性能,并可實現 SQL 的易用性。

f08ab406-bf94-11ec-9e50-dac502259ad0.png

Spark 于 2014 年成為 Apache 軟件基金會的高級項目,如今,遍及 16000 多家企業(yè)和組織的成千上萬名數據工程師和科學家都在使用 Spark。Spark 在 Hadoop 的基礎上繼往開來的原因之一是,與 MapReduce 相比,其內存數據處理性能能夠以快達 100 倍的速度完成某些任務。這些功能由 250 多家公司的 1000 多位貢獻者在一個開放社區(qū)中創(chuàng)建。Databricks 的創(chuàng)始人率先進行了這項工作,僅僅是其平臺每天就運行著 100 多萬個虛擬機來分析數據。

為何 SPARK 在應用 GPU 后表現更出色

Spark 的各個版本均有所改進,有助于更輕松地編程和執(zhí)行。Apache Spark 3.0 通過創(chuàng)新來維持此趨勢,改善 Spark SQL 性能和 NVIDIA GPU 加速。

f096b256-bf94-11ec-9e50-dac502259ad0.png

圖形處理器 (GPU) 因其超低浮點運算(性能)單價深受歡迎,其還可通過加快多核服務器的并行處理速度,解決當前的計算性能瓶頸問題。CPU 由專為按序串行處理優(yōu)化的幾個核心組成。而 GPU 則擁有一個大規(guī)模并行架構,當中包含數千個更小、更高效的核心,專為同時處理多重任務而設計。與僅包含 CPU 的配置相比,GPU 的數據處理速度快得多。過去數年中,GPU 一直推動 DL 和機器學習 (ML) 模型訓練的發(fā)展。然而,數據科學家 80% 的時間都花費在了數據預處理上。

雖然 Spark 是以分割數據形式在節(jié)點分區(qū)中分發(fā)計算,但其向來是在 CPU 核心上執(zhí)行計算操作。Spark 雖然通過添加內存數據處理緩解了 Hadoop 中存在的 I/O 問題,但現在瓶頸問題已從 I/O 轉變?yōu)槿找嬖龆嗟膽贸绦虻挠嬎銌栴}。隨著 GPU 加速計算的出現,此性能瓶頸問題迎刃而解。

為滿足并超越數據處理的現代需求,NVIDIA 一直與 Apache Spark 社區(qū)進行合作,通過推出 Spark 3.0 版本和用于 Spark 的開源 RAPIDS 加速器,將 GPU 應用于 Spark 的本機處理。在 Spark 中引入 GPU 加速具有諸多優(yōu)勢:

數據處理、查詢和模型訓練能夠更快完成,縮短結果獲取時間。

同一個 GPU 加速的基礎設施可用于 Spark 和 ML/DL(深度學習)框架,因而無需使用單獨的集群,并讓整個流程都能獲得 GPU 加速。

減少所需的服務器數量,降低基礎設施成本。

用于 APACHE SPARK 的 RAPIDS 加速器

RAPIDS 是一套開源軟件庫和 API,可完全在 GPU 上執(zhí)行端到端數據科學和分析流程,能夠實現大幅的速度提升,在大型數據集上尤是如此。用于 Apache Spark 的 RAPIDS 加速器基于 NVIDIA CUDA 和 UCX 構建,支持 GPU 加速的 SQL/DataFrame 操作和 Spark shuffle,且無需更改代碼。

f0ae9876-bf94-11ec-9e50-dac502259ad0.png

Apache Spark 加速的端到端 AI 平臺堆棧

加速 SQL/DataFrame

Spark 3.0 支持 SQL 優(yōu)化器插件,使用列式批量(而非行式)處理數據。列式數據非常適合 GPU,并且 RAPIDS 加速器可插入此功能以加速 SQL 和 DataFrame 運算符。針對 RAPIDS 加速器,Catalyst 查詢優(yōu)化器進行了修改,可識別通過 RAPIDS API 加速的查詢方案(主要是一對一映射)中的運算符,并可在執(zhí)行查詢方案時在 Spark 集群中的 GPU 上調度這些運算符。

加速 Shuffle

在階段之間從現有 DataFrame 創(chuàng)建新 DataFrame 時,按值對數據進行排序、分組或合并的 Spark 操作必須移動分區(qū)之間的數據,此過程稱為 shuffle,其中涉及磁盤 I/O、數據序列化和網絡 I/O。新的 RAPIDS 加速器 shuffle 實施利用 UCX 優(yōu)化 GPU 數據傳輸,盡可能在 GPU 上保留更多的數據,通過使用優(yōu)質的可用硬件資源,找到在節(jié)點間移動數據的快速路徑(包括繞過 CPU 執(zhí)行 GPU 到 GPU 顯存的節(jié)點內和節(jié)點間傳輸)。

加速器感知型調度

為推動旨在更好地統(tǒng)一深度學習和數據處理的重要 Spark 計劃,GPU 在 Apache Spark 3.0 中現已成為可調度資源。這使得 Spark 能夠使用特定數量的 GPU 來調度執(zhí)行程序,并且用戶可以指定每個任務所需的 GPU 數量。Spark 將這些資源請求傳送至底層集群管理器、Kubernetes、YARN 或 Standalone。用戶還可以配置發(fā)現腳本,檢測集群管理器分配的 GPU。這大大簡化了需要 GPU 的 ML 應用程序的運行,因為之前用戶需要處理 Spark 應用程序中缺少 GPU 調度的問題。

加速 XGBoost

XGBoost 是一種可擴展的分布式梯度提升決策樹 (GBDT) ML 庫。

XGBoost 提供并行樹提升功能,是應用于回歸、分類和排序問題的出色 ML 庫。RAPIDS 團隊與 Distributed Machine Learning Common (DMLC) XGBoost 組織密切合作,而且 XGBoost 現已包含無縫嵌入式 GPU 加速。另外,Spark 3.0 XGBoost 現已與 Rapids 加速器集成,借助 Spark SQL/DataFrame 操作的 GPU 加速、XGBoost 訓練時間的 GPU 加速,以及內存優(yōu)化存儲功能的高效 GPU 顯存利用率,可改善性能、準確性和成本。

f0d40534-bf94-11ec-9e50-dac502259ad0.png

在 Spark 3.0 中,您現在可以有單個流程,從數據提取到數據準備,再到在 GPU 驅動的集群上訓練模型,皆包含在內

SPARK 用例示例

欺詐檢測

對于需要快速決策并涉及多個數據源的情況而言,運行快速的 Spark 是不二之選。例如,金融機構檢測信用卡欺詐的方法之一是,分析單一帳戶上的交易量和交易地點。如果交易次數超出個人能力范圍,或者多個交易發(fā)生在不同地點,而交易地點相距不合情理,則表明一個帳戶已被泄露。

銀行可以使用 Apache Spark 來根據使用模式創(chuàng)建帳戶持有者的統(tǒng)一視圖。機器學習可用于根據先前觀察到的模式,檢測超出規(guī)范的模式。這還可以使機構更好地根據客戶個人需求來定制優(yōu)惠。

醫(yī)療健康

在美國,藥物的不良相互作用是第四大致死原因,排在肺癌、糖尿病和肺炎之前。確定多種藥物如何相互作用以對患者造成不良后果,這一問題的復雜程度呈指數級增加,隨著新藥不斷推出,這一問題在每一年都更加復雜。

借助 Spark,數據科學家可以創(chuàng)建算法,掃描數百萬份病例記錄并查找提及的藥物類型。某些藥物的組合可以與治療結果相關聯,并按原先存在的狀況和病史等因素加權。然后可以將結果應用于個別患者的健康記錄,在開具處方或填寫處方之前提醒醫(yī)生和藥師注意出現不良反應的可能性。

為何 APACHE SPARK 如此重要

Spark 3.0 是數據科學家和數據工程師在分析和 AI 領域協(xié)作的一個重要里程碑,其使 ETL 操作得到加速,同時 ML 和 DL 應用程序也能夠利用相同的 GPU 基礎設施。

數據科學團隊

將數據轉化為可用形式需要完成眾多普通任務,數據科學的“魔力”對此也無計可施。該過程涉及對數百萬或數十億條記錄中的非結構化數據(例如郵政編碼、日期和 SKU 編號)進行分類和排序。數據集越大,處理時間越長。據估計,數據準備會占用數據科學家 80% 的時間。

Hadoop 是一項大規(guī)模執(zhí)行數據分析的突破性技術,使數據科學家能夠針對超大型數據存儲執(zhí)行查詢。但是,處理時間通常很長,尤其是在需要對現有數據集執(zhí)行重復掃描時,這在進行分類和數據發(fā)現時經常發(fā)生。

Spark 專為跨大型數據集的迭代查詢而構建。與 Hadoop/MapReduce 相比,其速度快達 100 倍,迅速獲得了數據科學家的青睞。Spark 還可輕松適應 Python、R 和 Scala 等面向數據科學的開發(fā)語言。由于大多數數據科學家都習慣于使用單個編程工具,因此 Spark 能夠輕松適應個人需求。

Spark SQL 還引入了名為 DataFrame 的數據抽象概念,該概念支持結構化和半結構化數據,并且支持多語言操作。通過這種概念,熟悉的 SQL 語言能夠以新方式應用于非結構化數據。Spark ML 提供了一套統(tǒng)一的高級別 API,這些 API 基于 DataFrame 構建,用于搭建 ML 流程或 ML 工作流程。基于 DataFrame 構建 ML 流程可實現分區(qū)數據處理的可擴展性,且便于通過 SQL 進行數據操作。

數據工程團隊

數據工程師彌補了數據科學家與開發(fā)者之間的差距。數據科學家選擇合適的數據類型和算法來解決問題,而數據工程師則與數據科學家和開發(fā)者開展合作,處理與數據流程創(chuàng)建相關的所有工作,用于數據提取轉換、存儲和分析,以構建大數據分析應用程序。

Spark 將復雜性從存儲方程中抽象出來。該框架可以處理幾乎任何底層存儲(包括 Hadoop 分布式文件系統(tǒng)),因此比 Hadoop 更靈活,更適用于云和本地基礎設施的組合。Spark 還可以輕松整合流數據源,使其成為適用于新一代物聯網應用程序的引擎。

原文標題:NVIDIA大講堂 | 什么是 APACHE SPARK?

文章出處:【微信公眾號:NVIDIA英偉達】歡迎添加關注!文章轉載請注明出處。

審核編輯:湯梓紅

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯系本站處理。 舉報投訴
  • NVIDIA
    +關注

    關注

    14

    文章

    5076

    瀏覽量

    103734
  • 開源框架
    +關注

    關注

    0

    文章

    32

    瀏覽量

    9429
  • apache spark
    +關注

    關注

    0

    文章

    4

    瀏覽量

    1808

原文標題:NVIDIA大講堂 | 什么是 APACHE SPARK?

文章出處:【微信號:NVIDIA_China,微信公眾號:NVIDIA英偉達】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    大數據分析中Spark,Hadoop,Hive框架該用哪種開源分布式系統(tǒng)

    眾所周知,大數據開發(fā)和分析、機器學習、數據挖掘中,都離不開各種開源分布式系統(tǒng)。最常見的就是 Hadoop、Hive、Spark這三個框架了。最近不少朋友有問到關于這些的問題: 大廠里還有在用
    的頭像 發(fā)表于 09-17 13:17 ?4514次閱讀

    RDMA技術在Apache Spark中的應用

    背景介紹 在當今數據驅動的時代,Apache?Spark已經成為了處理大規(guī)模數據集的首選框架。作為開源的分布式計算系統(tǒng),
    的頭像 發(fā)表于 03-25 18:13 ?1601次閱讀
    RDMA技術在<b class='flag-5'>Apache</b> <b class='flag-5'>Spark</b>中的應用

    Hadoop的整體框架組成

    Hadoop是個用Java編寫的Apache開源框架,允許使用簡單的編程模型跨計算機集群分布式處理大型數據集。Hadoop框架工作的應用程
    發(fā)表于 05-11 16:00

    基于Spark 2.1版本的Apache Spark內存管理

    Apache Spark 內存管理詳解
    發(fā)表于 04-26 17:13

    基于Apache Spark 的下波智能應用

    基于Apache Spark 的下波智能應用
    發(fā)表于 12-28 11:07 ?0次下載

    如何使用Apache Spark 2.0

    數據集(Resilient Distributed Dataset,RDD)直是Spark中的主要抽象。RDD API是在Scala集合框架之后建模的,因此間接提供了Hadoop Map / Reduce熟悉的編程
    發(fā)表于 09-28 19:00 ?0次下載
    如何使用<b class='flag-5'>Apache</b> <b class='flag-5'>Spark</b> 2.0

    Apache Spark 1.6預覽版新特性展示

    日前,Databricks公司發(fā)布了Apache Spark主要版本的可用性。除了可用性、可移植性等幾個新的特性外,本次發(fā)布還提供了對尚未發(fā)布的Apache
    發(fā)表于 10-13 11:21 ?0次下載
    <b class='flag-5'>Apache</b> <b class='flag-5'>Spark</b> 1.6預覽版新特性展示

    機器學習實例:Spark與Python結合設計

    Apache Spark是處理和使用大數據最廣泛的框架,Python是數據分析、機器學習等領域最廣泛使用的編程語言之。如果想要獲得更棒
    發(fā)表于 07-01 10:15 ?2796次閱讀

    Apache Spark的分布式深度學習框架BigDL的概述

    該視頻概述了Apache Spark *的BigDL分布式深度學習框架
    的頭像 發(fā)表于 10-30 06:41 ?3294次閱讀

    Apache Spark上的分布式機器學習的介紹

    Apache Spark上的分布式機器學習
    的頭像 發(fā)表于 11-05 06:31 ?2954次閱讀

    Apache Spark 3.2有哪些新特性

    經過七輪投票, Apache Spark 3.2 終于正式發(fā)布了。Apache Spark 3.2 已經是 Databricks Runtime 10.0 的
    的頭像 發(fā)表于 11-17 14:09 ?1832次閱讀

    利用Apache Spark和RAPIDS Apache加速Spark實踐

      在第三期文章中,我們詳細介紹了如何充分利用 Apache SparkApache RAPIDS 加速器 Spark 。 大多數團隊
    的頭像 發(fā)表于 04-26 17:39 ?1933次閱讀
    利用<b class='flag-5'>Apache</b> <b class='flag-5'>Spark</b>和RAPIDS <b class='flag-5'>Apache</b>加速<b class='flag-5'>Spark</b>實踐

    詳細了解OpenHarmony新圖形框架

    3月30日,OpenHarmony v3.1 Release版本正式發(fā)布了。此版本為大家?guī)砹巳碌膱D形框架,實現了UI框架顯示、多窗口、流暢動畫等基礎能力,夯實了OpenHarmony系統(tǒng)能力基座。下面就帶大家詳細了解新圖形
    的頭像 發(fā)表于 04-27 13:21 ?2291次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>詳細了解</b>OpenHarmony新圖形<b class='flag-5'>框架</b>

    詳細了解ArkUI框架新增能力

    ArkUI是套UI開發(fā)框架,它提供了開發(fā)者進行應用UI開發(fā)時所必須的能力。隨著OpenHarmony v3.1 Release(后文簡稱v3.1)版本的發(fā)布,ArkUI框架也增加了許多新能力,接下來跟隨小編
    的頭像 發(fā)表于 04-27 13:44 ?1514次閱讀
    <b class='flag-5'>一</b><b class='flag-5'>文</b><b class='flag-5'>詳細了解</b>ArkUI<b class='flag-5'>框架</b>新增能力

    Spark基于DPU的Native引擎算子卸載方案

    1.背景介紹 Apache Spark(以下簡稱Spark)是開源的分布式計算框架,由UC
    的頭像 發(fā)表于 06-28 17:12 ?766次閱讀
    <b class='flag-5'>Spark</b>基于DPU的Native引擎算子卸載方案
    百家乐官网休闲游戏| 澳门百家乐官方网站| 多多视频棋牌游戏| 龙虎斗 | 百家乐官网赌法博彩正网| 战神国际娱乐| 澳门百家乐官网秘诀| 金宝博百家乐官网娱乐城| 慈利县| 如何玩百家乐官网游戏| 属虎和属猴牛人做生意| 百家乐网上真钱赌场娱乐网规则 | 百家乐网上赌局| 水果机技巧| 遵化市| 百家乐官网图淑何看| 现场百家乐电话投注| 大发888娱乐真钱游戏 官方| 灵台县| 尊龙百家乐官网娱乐| 任你博百家乐官网的玩法技巧和规则| 百家乐官网赌博器| 百家乐出千赌具| 华人棋牌游戏| 百家乐官网马渚| 百家乐娱乐城官方网| 皇冠现金网址| 百家乐官网现场新全讯网| 属虎属鼠合伙做生意吗| 威尼斯人娱乐场送18| 娱乐城注册送现金| 六合彩百家乐官网有什么平码| 百家乐官网五湖四海娱乐场开户注册| 华人百家乐官网博彩论| 百家乐网络视频游戏| 百家乐微乐| 永利高足球博彩网| 真人百家乐官网平台排行| 百家乐网上投注网站| 丽都棋牌下载| 网上百家乐官网真的假|