日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

Spark _21 _SparkSQL介绍

發(fā)布時(shí)間:2024/2/28 数据库 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Spark _21 _SparkSQL介绍 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

Shark

Shark是基于Spark計(jì)算框架之上且兼容Hive語法的SQL執(zhí)行引擎,由于底層的計(jì)算采用了Spark,性能比MapReduce的Hive普遍快2倍以上,當(dāng)數(shù)據(jù)全部load在內(nèi)存的話,將快10倍以上,因此Shark可以作為交互式查詢應(yīng)用服務(wù)來使用。除了基于Spark的特性外,Shark是完全兼容Hive的語法,表結(jié)構(gòu)以及UDF函數(shù)等,已有的HiveSql可以直接進(jìn)行遷移至Shark上Shark底層依賴于Hive的解析器,查詢優(yōu)化器,但正是由于SHark的整體設(shè)計(jì)架構(gòu)對Hive的依賴性太強(qiáng),難以支持其長遠(yuǎn)發(fā)展,比如不能和Spark的其他組件進(jìn)行很好的集成,無法滿足Spark的一棧式解決大數(shù)據(jù)處理的需求。

SparkSQL

  • SparkSQL介紹

Hive是Shark的前身,Shark是SparkSQL的前身,SparkSQL產(chǎn)生的根本原因是其完全脫離了Hive的限制。

  • SparkSQL支持查詢原生的RDD。 RDD是Spark平臺(tái)的核心概念,是Spark能夠高效的處理大數(shù)據(jù)的各種場景的基礎(chǔ)。
  • 能夠在Scala中寫SQL語句。支持簡單的SQL語法檢查,能夠在Scala中寫Hive語句訪問Hive數(shù)據(jù),并將結(jié)果取回作為RDD使用。
    • Spark on Hive和Hive on Spark

    Spark on Hive: Hive只作為儲(chǔ)存角色,Spark負(fù)責(zé)sql解析優(yōu)化,執(zhí)行。

    Hive on Spark:Hive即作為存儲(chǔ)又負(fù)責(zé)sql的解析優(yōu)化,Spark負(fù)責(zé)執(zhí)行。

    • DataFrame

    DataFrame也是一個(gè)分布式數(shù)據(jù)容器。與RDD類似,然而DataFrame更像傳統(tǒng)數(shù)據(jù)庫的二維表格,除了數(shù)據(jù)以外,還掌握數(shù)據(jù)的結(jié)構(gòu)信息,即schema。同時(shí),與Hive類似,DataFrame也支持嵌套數(shù)據(jù)類型(struct、array和map)。從API易用性的角度上 看, DataFrame API提供的是一套高層的關(guān)系操作,比函數(shù)式的RDD API要更加友好,門檻更低。

    DataFrame的底層封裝的是RDD,只不過RDD的泛型是Row類型。

    • SparkSQL的數(shù)據(jù)源

    SparkSQL的數(shù)據(jù)源可以是JSON類型的字符串,JDBC,Parquent,Hive,HDFS等。

    • SparkSQL底層架構(gòu)

    首先拿到sql后解析一批未被解決的邏輯計(jì)劃,再經(jīng)過分析得到分析后的邏輯計(jì)劃,再經(jīng)過一批優(yōu)化規(guī)則轉(zhuǎn)換成一批最佳優(yōu)化的邏輯計(jì)劃,再經(jīng)過SparkPlanner的策略轉(zhuǎn)化成一批物理計(jì)劃,隨后經(jīng)過消費(fèi)模型轉(zhuǎn)換成一個(gè)個(gè)的Spark任務(wù)執(zhí)行。

    • 謂詞下推(predicate Pushdown)

    總結(jié)

    以上是生活随笔為你收集整理的Spark _21 _SparkSQL介绍的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。