本文為您介紹如何通過配置Hue訪問Presto服務。
前提條件
已建立叢集,並選擇了Presto服務。
已開啟8888連接埠。
重要設定安全性群組規則時要針對有限的IP範圍。禁止在配置的時候對0.0.0.0/0開放規則。
操作流程
EMR各版本預設支援Hue訪問E-MapReduce(EMR)叢集的Presto服務的情況,以及配置Hue訪問Presto服務的操作流程如下。
版本 | 支援情況 | 操作流程 |
EMR-3.33.0以前版本或EMR-4.6.0以前版本 | 預設不支援 | |
EMR-3.33.0(包含)版本到EMR-3.38版本,EMR-4.6.0(包含)版本到EMR-5.5.0版本 | 預設支援 | 無需任何配置,直接通過Hue訪問EMR叢集的Presto服務。 |
EMR-3.38及後續版本或EMR-5.5.0及後續版本 | 預設不支援 |
下載Presto的JDBC驅動
使用SSH方式登入到叢集,詳細資料請參見登入叢集。
建立presto-jdbc的目錄。
mkdir -p /opt/apps/presto-jdbc/下載相應版本的JDBC JAR包,並上傳至/opt/apps/presto-jdbc/目錄。
例如,本文樣本建立的是EMR-3.32.0版本的叢集,因為Presto版本是338,所以您可以下載338版本的JDBC JAR包。

下載下圖中的JAR包。

上傳JAR包至/opt/apps/presto-jdbc/目錄。
執行以下命令,修改檔案許可權。
chmod 644 /opt/apps/presto-jdbc/*執行以下命令,編輯檔案hue.sh。
vim /etc/profile.d/hue.sh添加以下內容至檔案hue.sh最後一行。
export CLASSPATH=/opt/apps/presto-jdbc/*:$CLASSPATH如下圖所示:

載入Presto的JDBC驅動
進入Hue配置頁面。
在頂部功能表列處,根據實際情況選擇地區和資源群組。
單擊上方的叢集管理頁簽。
在叢集管理頁面,單擊相應叢集所在行的詳情。
在左側導覽列,選擇。
在Hue服務頁面,單擊配置頁簽。
在服務配置地區,單擊hue。
添加Hue自訂配置。
單擊右上方的自訂配置。
在新增配置項對話方塊中,添加配置資訊。
EMR-3.33.0以前版本或EMR-4.6.0以前版本
參數
描述
notebook.interpreters.presto.name
固定值為Presto。
notebook.interpreters.presto.interface
固定值為jdbc。
notebook.interpreters.presto.options
固定值為{"url": "jdbc:presto://emr-header-1:9090/hive/default", "driver": "com.facebook.presto.jdbc.PrestoDriver", "user": "hadoop", "password": ""}。
EMR-3.38及後續版本或EMR-5.5.0及後續版本
參數
描述
notebook.interpreters.presto.options
固定值為{"url": "jdbc:trino://emr-header-1:9090/hive/default", "driver": "io.trino.jdbc.TrinoDriver", "user": "hadoop", "password": ""} 。
配置資訊添加完成後,單擊確定。
儲存配置。
單擊右上方的儲存。
在確認修改對話方塊,填寫執行原因,並開啟自動更新配置。
單擊確定。
部署配置。
單擊上方的部署用戶端配置。
在執行叢集操作對話方塊,選擇執行範圍和失敗處理策略,填寫執行原因。
單擊確定。
在確認對話方塊,單擊確定。
- 在執行叢集操作對話方塊中,輸入執行原因,單擊確定。
- 在確認對話方塊,單擊確定。
- 單擊右上方查看操作歷史查看任務進度,等待任務完成。
重啟Hue。
在Hue叢集服務頁面,選擇。
在執行叢集操作對話方塊,選擇執行範圍和失敗處理策略,填寫執行原因。
單擊確定。
在確認對話方塊,單擊確定。
- 在執行叢集操作對話方塊中,輸入執行原因,單擊確定。
- 在確認對話方塊,單擊確定。
- 單擊右上方查看操作歷史查看任務進度,等待任務完成。
通過Hue訪問EMR叢集的Presto服務
在左側導覽列,單擊訪問連結與連接埠。
單擊Hue所在行的連結。

使用預設管理員admin登入,初始密碼在Hue配置頁面擷取admin_pwd參數的值,詳細資料請參見查看初始密碼。
在Hue頁面已顯示Presto。
表示您可以通過Hue訪問EMR叢集的Presto服務。
可選:測試連通性。
在Presto SQL中輸入以下命令,查詢叢集上Schema的列表。
show schemas當正確返回資訊時,表示連通性正常。