Spark SQL 筆記(4)——Spark SQL 介紹
阿新 • • 發佈:2018-11-06
1 Spark SQL 背景介紹
1.1 Hive 介紹
- 類似 sql 的 Hive QL 語言, sql -> mapreduce
- 改進: hive on tez,hive on spark, hive on mapreduce
1.2 Spark SQL 前世
- hive on spark -> shark
- shark,基於 spark,基於記憶體的列式儲存,與 hive 能夠相容
- shark 缺點: hive ql 的解析、邏輯執行計劃生成、執行計劃的優化是依賴 hive 的;僅僅只是把物理執行計劃從 mr 作業替換成 spark 作業
1.3 Shark 終止
Shark 終止後,產生了 2 個分支:
- hive on spark: Hive 社群,原始碼在 Hive 中
- Spark SQL: Spark SQL 社群;支援多種資料來源
1.4 SQL on Hadoop 常用框架
- Hive ,sql -> mapreduce;facebook 開源; metastore:元資料;
- impala ,cloudera公司:cdh(建議生產中使用);cm;sql:自己的守護程序執行的,非mr;metastore:元資料;
- presto: facebook 開源;京東;sql
- drill: sql; 訪問 : hdfs 、rdbms,json,hbase,mangodb,s3,hive
- Spark SQL: sql; dataframe/dataset api; metastore; 訪問 : hdfs 、rdbms,json,hbase,mangodb,s3,hive
1.5 Spark SQL 總結
- 應用不侷限於 SQL
- 訪問 hive,json,parquet 等檔案的資料;