本文為您介紹如何使用MaxCompute Studio開發Graph,包括編寫Graph、調試Graph、打包上傳和運行Graph。
前提條件
您需要完成以下操作:
編寫Graph
建立MaxCompute Java Class。
本文以建立
BaseLoadingVertexResolver
類和SSSP
類為例。在Project地區,按右鍵Module的源碼目錄(即 ),選擇 。
填寫Name並選擇類型為GraphLoader或Vertex,按下Enter鍵。
Name:填寫建立的MaxCompute Java Class名稱。
說明如果還沒建立package,可以在此處填寫 packagename.classname,會自動產生package。
選擇類型為GraphLoader或Vertex,類型介紹如下:
GraphLoader:用於載入圖。通過GraphJob的setGraphLoaderClass介面提供GraphLoader實現。
Vertex:是圖的點的抽象,包含屬性:id、value、halted、edges。通過GraphJob的setVertexClass介面提供Vertex實現。
建立成功後,在編輯介面開發Java程式。
BaseLoadingVertexResolver
類和SSSP
程式碼範例詳情,請參見單源最短距離。
配置pom.xml檔案,引入相關依賴。樣本如下。
<dependency> <groupId>com.aliyun.odps</groupId> <artifactId>odps-sdk-core</artifactId> <version>0.48.0-public</version> </dependency> <dependency> <groupId>com.aliyun.odps</groupId> <artifactId>odps-sdk-graph</artifactId> <version>0.48.0-public</version> </dependency> <!-- 用於本地測試 --> <dependency> <groupId>com.aliyun.odps</groupId> <artifactId>odps-graph-local</artifactId> <version>0.48.0-public</version> </dependency>
pom.xml檔案配置完成後,您可以在Maven面板確認對應的依賴包是否已載入成功。
通過本地運行調試Graph
通過本地運行方式測試,查看Graph的運行結果是否符合預期。
按右鍵編寫完成的Java指令碼,選擇Run。
在Run/Debug Configurations頁面上配置運行參數。
MaxCompute project:選擇運行Graph的MaxCompute專案。
Download Record limit:下載資料記錄限制。預設為100條。
單擊OK,開始運行。
本文選擇本地運行,因此將會讀取warehouse目錄中指定的表資料作為輸入,您可以在控制台查看日誌輸出。更多warehouse目錄的介紹詳情,請參見warehouse目錄。
打包上傳
調試成功之後,將Java程式打成JAR包,並作為資源上傳至MaxCompute服務端。詳情請參見打包、上傳和註冊。
運行Graph
在IntelliJ IDEA工具的左側導覽列,單擊Project Explorer。
按右鍵專案名稱,選擇Open in Console。
在Console地區運行Graph,命令樣本如下,請根據實際情況替換其中的MainClass、輸入表及輸出表後運行命令。
更多命令,請參見JAR命令。
jar -libjars xxx.jar -classpath /Users/home/xxx.jar com.aliyun.odps.graph.examples.PageRank pagerank_in pagerank_out;
PageRank:指Graph程式中定義的MainClass。
pagerank_in:輸入表。
pagerank_out:輸出表。