Zeppelin的Hive解釋器是使用JDBC連接HiveServer2。本文為您介紹如何在Zeppelin中使用Hive。

背景信息

EMR數(shù)據(jù)開發(fā)的Zeppelin在以下兩方面做了增強(qiáng):
  • 在多個(gè)EMR集群中動(dòng)態(tài)切換。
  • 您無(wú)需配置,所有配置都是自動(dòng)完成。
Zeppelin的Hive解釋器提供以下主要功能:
  • 支持任何Hive SQL語(yǔ)句(包括DDL和DML等)。

    Hive解釋器與Beeline支持的語(yǔ)言及功能一樣。

  • 支持一個(gè)段落編寫多條SQL語(yǔ)句,每條SQL語(yǔ)句以分號(hào)(;)結(jié)尾,按照從上到下的順序執(zhí)行。
  • 支持注釋功能。
  • 支持并發(fā)執(zhí)行多個(gè)段落。
  • 支持參數(shù)功能。
  • 支持圖表展示SQL結(jié)果。

示例

  • 多行SQL
    如下圖所示,在一個(gè)段落里執(zhí)行2句SQL語(yǔ)句(以分號(hào)間隔),第一句切換執(zhí)行引擎,第二句運(yùn)行Select語(yǔ)句。hive_sql
  • 注釋
    --開頭的均為SQL注釋。注釋
  • 參數(shù)功能

    Zeppelin支持${var=value} 形式的差數(shù)。var是變量名,value是默認(rèn)值。

    例如,通常不使用變量時(shí)的查詢SQL語(yǔ)句如下:
    select count(1) from orders where o_totalprice < 10000;
    在Zeppelin中使用${var=value} 形式的參數(shù)查詢語(yǔ)句時(shí),設(shè)置變量名為price,默認(rèn)值是10000,此時(shí)頁(yè)面上會(huì)顯示一個(gè)文本框,您可以在文本框里填寫任意值,按回車鍵,即使用文本框里的值替換變量price并運(yùn)行SQL語(yǔ)句。例如,填寫的值為50000,運(yùn)行的SQL語(yǔ)句如下圖所示:var-value
  • 圖表展示SQL結(jié)果
    Zeppelin內(nèi)置了很多圖表,您可以通過(guò)圖表方式展示SQL結(jié)果。如下圖所示,通過(guò)柱狀圖展示一個(gè)GROUP BY語(yǔ)句的結(jié)果。SQL

內(nèi)置教程

EMR數(shù)據(jù)開發(fā)集群自帶了很多開發(fā)教程,詳細(xì)信息請(qǐng)?jiān)谌缦聢D頁(yè)面查看。Hive