基于Apache Spark的REST服務詳解(二),云網數據中心,深圳服務器托管,深圳服務器租用, 深圳BGP機房托管,深圳BGP機房租用,深圳電信機房租用,深圳移動機房
發(fā)布時間:2017-07-05 點擊數:1193
我們接下來看看如何使用交互式會話。
創(chuàng)建交互式會話
POST /sessions

使用交互式會話的前提是需要先創(chuàng)建會話。當我們提交請求創(chuàng)建交互式會話時,我們需要指定會話的類型(“kind”),比如“spark”,Livy會根據我們所指定的類型來啟動相應的REPL,當前Livy可支持spark、pyspark或是sparkr三種不同的交互式會話類型以滿足不同語言的需求。
當創(chuàng)建完會話后,Livy會返回給我們一個JSON格式的數據結構表示當前會話的所有信息:

其中需要我們關注的是會話id,id代表了此會話,所有基于該會話的操作都需要指明其id。
提交代碼
POST /sessions/{sessionId}/statements

創(chuàng)建完交互式會話后我們就可以提交代碼到該會話上去執(zhí)行。與創(chuàng)建會話相同的是,提交代碼同樣會返回給我們一個id用來標識該次請求,我們可以用id來查詢該段代碼執(zhí)行的結果。
查詢執(zhí)行結果
GET /sessions/{sessionId}/statements/{statementId}

Livy的REST API設計為非阻塞的方式,當提交代碼請求后Livy會立即返回該請求id而并非阻塞在該次請求上直到執(zhí)行完成,因此用戶可以使用該id來反復輪詢結果,當然只有當該段代碼執(zhí)行完畢后用戶的查詢請求才能得到正確結果。
當然Livy交互式會話還提供許多不同的REST API來操作會話和代碼,在這就不一一贅述了。
深圳市云網數據中心(sjsyph.cn)
專業(yè)提供【服務器租用】【服務器托管】【機柜大帶寬】【云主機租用】【CDN加速】【專線接入】
創(chuàng)建交互式會話
POST /sessions

使用交互式會話的前提是需要先創(chuàng)建會話。當我們提交請求創(chuàng)建交互式會話時,我們需要指定會話的類型(“kind”),比如“spark”,Livy會根據我們所指定的類型來啟動相應的REPL,當前Livy可支持spark、pyspark或是sparkr三種不同的交互式會話類型以滿足不同語言的需求。
當創(chuàng)建完會話后,Livy會返回給我們一個JSON格式的數據結構表示當前會話的所有信息:

其中需要我們關注的是會話id,id代表了此會話,所有基于該會話的操作都需要指明其id。
提交代碼
POST /sessions/{sessionId}/statements

創(chuàng)建完交互式會話后我們就可以提交代碼到該會話上去執(zhí)行。與創(chuàng)建會話相同的是,提交代碼同樣會返回給我們一個id用來標識該次請求,我們可以用id來查詢該段代碼執(zhí)行的結果。
查詢執(zhí)行結果
GET /sessions/{sessionId}/statements/{statementId}

Livy的REST API設計為非阻塞的方式,當提交代碼請求后Livy會立即返回該請求id而并非阻塞在該次請求上直到執(zhí)行完成,因此用戶可以使用該id來反復輪詢結果,當然只有當該段代碼執(zhí)行完畢后用戶的查詢請求才能得到正確結果。
當然Livy交互式會話還提供許多不同的REST API來操作會話和代碼,在這就不一一贅述了。
深圳市云網數據中心(sjsyph.cn)
專業(yè)提供【服務器租用】【服務器托管】【機柜大帶寬】【云主機租用】【CDN加速】【專線接入】