日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

Spark SQL執行方式

更新時間:

云原生數據倉庫 AnalyticDB MySQL 版支持使用批處理和交互式兩種方法執行Spark SQL,兩種執行方式都直接與AnalyticDB for MySQL的元數據服務連通,可以讀寫AnalyticDB for MySQL的庫表。本文介紹批處理和交互式兩種執行方式的注意事項、適用場景、特點及啟動方法。

批處理

注意事項

  • 使用批處理方式執行SQL時,必須在SQL執行開始處使用USE <database_name>;語法選擇一個數據庫。

  • SQL語句中指定表時,必須為database_name.table_name格式。

  • 批處理方式執行DML、DDL或DQL等任何SQL語句時,只有返回執行成功或者失敗,不返回數據。執行成功的結果會抽樣一部分打印到日志中。如需查看SQL語句返回的數據,詳情請參見查看Spark應用信息

適用場景

  • 執行多條相互依賴的SQL語句。

  • SQL語句需要嚴格的資源隔離。

  • 需要處理較大規模的數據,例如使用SQL執行一次性的ETL。

  • 有復雜的第三方依賴包需要上傳,且這些包可能需要反復測試和替換。

特點

  • 批處理方式提交的SQL運行在單獨的Spark應用中,可以保證穩定性。

  • 支持通過SQL語句描述獨立的配置,如SET spark.sql.adaptive.coalescePartitions.minPartitionSize = 2MB;

  • 批處理方式執行的SQL中如果包含SELECT語句,這些SELECT語句的執行結果會抽樣一部分打印到日志中,您可以在日志中查看。

啟動方法

SQLConsole窗口,選擇Job型資源組和Spark引擎。執行SQL語句時,在彈窗中選擇繼續執行。

交互式執行

注意事項

  • 交互式執行的DDL和DML語句的執行結果僅返回最多1000行數據。

  • 使用交互執行方式執行的DDL語句,只返回執行成功或者失敗,不返回數據。例如執行CREATE TABLE語句,只提示成功或失敗,不返回表中的數據,和開源社區保持一致。

  • 當有英文分號(;)隔開的多個SQL語句時,Spark引擎只會執行最后一行SQL。

  • ThriftServer引擎啟動需要一定時間,如果出現啟動時失敗可以等待一定時間重試。

適用場景

  • 臨時進行數據計算,無需返回所有數據。

  • 需要執行大量的DDL語句。

  • 希望在提交DQL語句后,可以立即開始執行, 且對資源隔離不敏感,能允許一定的失敗。

特點

  • 同一個資源組中的SQL由共享的ThriftServer引擎執行,并返回1000條結果到控制臺。

  • 資源隔離是線程級的。多個用戶在同一個Spark應用中執行SQL,相互之間可能存在干擾。

  • 線程級的配置可以通過配置SQL生效。

  • 應用級別的配置,需要重啟ThriftServer引擎才能生效。如需修改應用級別的配置,需要先停止ThriftServer,參數配置完成后重新啟動ThriftServer引擎。啟動和停止ThriftServer的操作,請參見啟停ThriftServer。

啟動方式

使用Job型資源組交互式執行SQL時,需要啟動ThriftServer,您可以通過以下兩種方式啟動ThriftServer。

  • SQLConsole窗口,選擇Job型資源組和Spark引擎。執行SQL語句時,在彈窗中選擇啟動ThriftServer

  • 在資源組列表中,單擊目標Job型資源組操作列的高級配置,完成參數配置后,單擊啟動。詳情請參見啟動ThriftServer

已啟動ThriftServer的Job型資源組,在執行SQL時,都會采用交互式執行。