Hive與SparkSQL別名中的區別

2021-10-07 01:53:56 字數 680 閱讀 8336

先上**:

select 

vid,

from_unixtime(gpsdate,'yyyy-mm-dd hh:mm:ss') as time

from ***xx

where pdt = '2020-01-01'

and vid = '010019410390'

order by gpsdate

limit 10;

一行簡單的**,沒啥毛病。但是,這行**,在 sparksql 中沒毛病,在 hive 中卻執行不了。ps:我司 hive 是 1.2 版本,有點老舊了。。。spark 用的是 2.2版本。

在 hive 中(至少是1.2中)需要這麼寫:

select 

vid,

from_unixtime(gpsdate,'yyyy-mm-dd hh:mm:ss') as time

from ***xx

where pdt = '2020-01-01'

and vid = '010019410390'

order by time

limit 10;

區別就在於 order by 後面乙個需要使用別名,乙個可以使用原始欄位名。真是乙個沒有注意到的區別。不知道之後的版本有沒有進行修改。

Spark sql與Hive的關係

spark sql 在某些部分是重用的hive的東西,比如語法解析 元資料儲存,到執行計畫的翻譯部分。hiveql可以翻譯成mapreduce執行,也可以翻譯成spark執行計畫執行。在同時安裝了hive和spark時,我使用hive下的beeline執行hql,執行引擎是mapreuce 使用sp...

Spark SQL操作Hive實戰

在目前企業級 spark大資料開發中,大多數情況下都是採用hive來作為資料倉儲的。spark提供了對hive的支援,spark通過hivecontext可以直接操作hive中的資料。基於hivecontext,我們可以使用sql hql兩種方式來編寫sql語句 對hive進行操作,包括 建立表 刪...

SparkSql實現Mysql到hive的資料流動

今天去面試了一波,因為排程系統採用了sparksql實現資料從mysql到hive,在這一點上面試官很明顯很不滿我對於spark的理解,19年的第乙個面試就這麼掛了。有問題不怕,怕的是知道了問題還得過且過。現在就來梳理下我的專案是怎麼使用spark導數的 第一步 把mysql中的表放入記憶體 pro...