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

背景信息

EMR數據開發的Zeppelin在以下兩方面做了增強:
  • 在多個EMR集群中動態切換。
  • 無需配置,所有配置都是自動完成。
Zeppelin的Presto解釋器提供以下主要功能:
  • 支持任何Presto SQL語句(包括DDL和DML等)。
  • 支持多行SQL,每條SQL語句以分號(;)結尾。
  • 支持注釋功能。
  • 支持并發執行多條SQL。
  • 支持參數功能。
  • 支持圖表展示SQL結果。

示例

  • 多行SQL
    如下圖所示,在一個段落里執行2句SQL語句(以分號間隔),第一句切換database,第二句運行Select語句。SQL
  • 注釋
    --開頭的均為SQL注釋。Comment
  • 參數功能

    Zeppelin支持${var=value} 形式的參數。var是變量名,value是默認值。

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

內置教程

EMR數據開發集群自帶了很多開發教程,詳細信息請在如下圖頁面查看。Presto-Demo