本文為您介紹數據開發的相關問題。
資源
pyodps
節點與業務流程
表
運行日志及保留時長
批量操作
BI對接
API調用
其他
如何在pyodps調用第三方包?
需要使用獨享調度資源組進行操作,詳情請參考文檔:在PyODPS節點中調用第三方包
如何控制表數據查詢以后是否可以下載?
在DataWorks下載數據的前提是要將下載功能打開,如果沒有下載入口,說明工作空間未開啟下載,如果有需要可以聯系主賬號或者工作空間管理員在工作空間管理處開啟。
查詢數據后在查詢結果右下角會有下載入口,如下圖所示:
DataWork界面下載由于引擎限制只能下載10000條數據。
如何下載超過1萬條的表數據?
需要通過MaxCompute tunnel操作:SQLTask配合Tunnel實現大量數據導出示例
為什么EMR通過DataWorks可視化建表失敗報錯:call emr exception?
可能原因:EMR所在的ECS集群的安全組缺失必要安全組配置。注冊EMR集群時,您需要添加安全組策略,否則可能會出現上述建表失敗提示。
EMR所在的ECS集群的安全組缺失必要安全組配置。注冊EMR集群時,您需要添加以下安全組策略,否則可能會出現上述建表失敗提示。
授權策略:允許
協議類型:自定義TCP
端口范圍:8898/8898
授權對象:100.104.0.0/16
如何處理:查看EMR所在的ECS集群的安全組配置情況,補充上述安全組策略。
如何在節點內使用資源?
右鍵目標資源節點,選擇引用資源。
如何下載上傳到DataWorks的資源?
右鍵目標資源節點,選擇查看歷史版本。
超過30M的資源如何上傳?
超過30M的資源需要通過[tunnel](使用Tunnel命令上傳下載數據)上傳,上傳后再使用MaxCompute資源功能添加到DataWorks進行后續的資源使用操作。詳情請參考常見問題:通過odpscmd上傳的資源如何在DataWorks上使用??
通過odpscmd上傳的資源如何在DataWorks上使用?
odpscmd上傳的資源在DataWorks上使用請在MaxCompute資源處將資源添加到數據開發。
在DataWorks如何上傳自己本地編寫的jar并執行?
您需要在數據開發界面將該jar作為資源上傳到DataWorks,節點使用該jar資源時,您需要先右鍵目標資源節點 > 引用資源(會在節點最上方自動多出一條注釋),然后直接使用資源名執行。
例如:在Shell節點內##@resource_reference{"test.jar"}
java -jar test.jar
如何實現在DataWorks上使用MaxCompute表資源?
目前DataWorks不支持直接使用圖形界面上傳MaxCompute表資源,可參見MaxComputeUDF示例:引用表資源查看引用資源表方式。如果您想在DataWorks上使用MaxCompute表資源,可按照如下:
在MaxCompute側通過以下SQL語句添加表為表資源,詳情請參見添加資源。
add table <table_name> [partition (<spec>)] [as <alias>] [comment '<comment>'][-f];
在DataWorks數據開發頁面創建Python類型的資源,本示例資源名為
get_cache_table.py
,用來遍歷查找到MaxCompute內添加的表資源,該Python代碼請參見開發代碼。
在DataWorks數據開發頁面,新建函數,本示例函數名為
table_udf
。該函數中的需要填寫的內容如下:
類名:
get_cache_table.DistCacheTableExample
資源列表:Python文件直接下拉選擇
get_cache_table.py
,表資源需要在腳本模式下添加。
完成函數注冊后,即可參照使用示例構造測試數據并調用注冊的函數。
Python資源是否支持調用另一個Python資源?
兩個資源在同一個工作空間的前提下,Python資源支持調用另一個Python資源。
PyODPS是否支持調用自定義函數來使用第三方包?
如果您不想通過DataFrame的map方法使用test函數,PyODPS同樣支持直接調用自定義函數來導入第三方包,詳情請參見PyODPS使用第三方包。
PyODPS 3中調用Pickle文件報錯:_pickle.UnpicklingError: invalid load key, '\xef.
如果您的代碼中存在特殊字符,請將代碼打成zip再上傳,然后在代碼中進行解壓使用。
如何刪除MaxCompute資源?
資源創建完成后,如果需要刪除資源,簡單模式下直接右鍵單擊所需刪除的資源即可,標準模式下需要先在開發環境中刪除資源,再在生產環境中刪除資源,以下以刪除生產環境的資源為例,為您演示刪除資源的操作步驟。
如果您的DataWorks為標準模式,則開發環境和生產環境分離,在DataWorks的DataStudio刪除資源時,只刪除了開發環境的資源,生產環境的資源需要將刪除操作發布到生產環境,生產環境的資源才會被刪除下線。
在開發環境中刪除資源。在對應業務流程下,選擇
,右鍵待刪除的資源后單擊刪除,在彈出的頁面單擊確認。在生產環境中刪除資源。刪除操作會在任務發布界面生成一條待發布的記錄,發布后才能生產任務才會下線。您可以在數據開發DataStudio頁面的右上角單擊任務發布,過濾變更類型為下線,找到上述步驟下線資源的變更發布包后,單擊操作列的發布,在彈出的頁面中單擊發布。完成發布后,生產環境的資源才會被刪除。
節點刪除后如何還原?
節點刪除后可以進入回收站進行還原。
如何查看節點版本?
打開單個節點配置界面可以查看節點的版本
已提交才會生成版本。
如何克隆業務流程?
您可以使用節點組功能:使用節點組
如何將工作空間下的節點代碼導出?
您可以使用遷移助手功能:概述
如何查看業務節點提交狀態?
如果您希望查看業務節點提交狀態,可以選擇
,展開對應的業務流程列表,即可查看當前業務流程下所有節點狀態。如果節點名稱左側存在圖標,表示該節點已提交;如果節點名稱左側不存在圖標,表示該節點未提交。當業務流程中包含多個節點時,是否可以批量配置節點的調度信息?
DataWorks不支持對業務流程配置調度信息,對于業務流程內的節點,您無法批量配置調度信息,只能逐個配置節點的調度信息。例如,一個業務流程中包含20個節點,您只能為每個節點逐個配置調度信息。
節點被刪除,實例是否受影響?
調度系統每天會根據時間屬性為該任務生成對應的一個或多個實例,當一個任務運行一段時間后被刪除,則實例不會被刪除。當實例在刪除任務后被觸發運行時,會由于找不到需要運行的代碼而失敗。
修改后的節點任務提交發布至生產環境后,是否會覆蓋之前生產環境的錯誤節點?
不會覆蓋之前的節點,未運行的實例會用最新代碼運行,不會刪除已生成的節點實例。如果調度參數有變化,需要重新生成實例去運行。
如何可視化新建表?
可以在數據開發,表管理和業務流程內的表容器中建表。
如何對生產表添加字段?
主賬號可以在表管理頁面,對生產表添加字段后,提交至生產環境。
子賬號需要擁有運維或項目管理員角色,才可以在表管理頁面,對生產表添加字段后,提交至生產環境。
如何刪除表?
刪除開發表:可以在數據開發界面刪除。
刪除生產表:
生產表請前往數據地圖我的數據中刪除表。
您可以創建一個ODPS SQL節點,輸入并執行DROP語句。創建ODPS SQL節點的詳情請參見開發ODPS SQL任務,刪除表的語法格式請參見表操作。
如何將本地數據上傳到MaxCompute表中?
您可以進入數據開發找到導入表功能導入本地數據。
在EMR集群中建表失敗,界面提示:call emr exception?
可能原因:
EMR所在的ECS集群的安全組缺失必要安全組配置。注冊EMR集群時,您需要添加以下安全組策略,否則可能會出現上述建表失敗提示。
授權策略:允許
協議類型:自定義TCP
端口范圍:8898/8898
授權對象:100.104.0.0/16
解決方法:
查看EMR所在的ECS集群的安全組配置情況,補充上述安全組策略。
如何在開發環境訪問生產環境數據?
標準模式下,如果在數據開發界面需要查詢生產環境的數據,請使用項目名.表名進行訪問。
如果是簡單模式升級到標準模式,在數據開發界面需要查詢生產環境數據,則需要先申請生產者角色權限,再使用項目名.表名進行訪問。申請權限具體請參考申請表權限
數據開發界面歷史執行日志如何獲取?
您可以進入數據開發界面左側邊欄找到運行歷史模塊,查看歷史執行日志。
數據開發運行歷史保留多長時間?
數據開發界面的運行歷史默認保留3天。
生產運維中心日志與實例保留時長請參考:日志和實例保留多長時間?
如何對節點、資源、函數等進行相關批量修改相關屬性的操作?
您可以在數據開發界面左側工具欄中進入批量操作界面。支持針對節點、資源、函數進行批量操作,批量修改完成后,您可以批量提交,并在任務發布界面批量發布,讓節點變更操作生產環境生效。
如何在數據開發頁面批量修改業務流程下節點使用的調度資源組?
您可以在數據開發頁面指定的業務流程名處,進入資源組編排,您可以在此頁面批量修改該業務流程內的節點指定的調度資源組,修改完成后,您可以選擇提交按鈕進行批量提交,并在任務發布界面批量發布,讓節點使用的調度資源組變更操作在生產環境生效。
使用Power BI連接MaxCompute報錯,該如何處理?
目前MaxCompute不支持連接Power BI,建議您使用交互式分析(Hologres)進行連接,詳情請參見訪問域名
Openapi調用報錯access is forbidden. Please first activate DataWorks Enterprise Edition or Flagship Edition.
openapi需要DataWorks企業版。詳情請參見:DataWorks OpenAPI概述
如何獲取Python SDK調用案例?
您可以在對應的API頁面點擊調試查看Python SDK的示例。
任務執行沒有instanceid,如何關閉ODPS加速模式?
獲取instanceid需要關閉加速模式。
DataWorks只支持下載1W條數據,超過1W的數據需要通過tunnel下載,下載時需要instanceid、
在運行任務的時候在odps sql節點編輯器里加上set odps.mcqa.disable=true;
(需要和其他select語句一塊執行)。