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

小文件優化及作業診斷常見問題

本文為您介紹小文件優化以及作業診斷時的常見問題。

問題類別

常見問題

小文件優化

MaxCompute什么情況下會產生小文件?如何解決小文件問題?

作業診斷

MaxCompute什么情況下會產生小文件?如何解決小文件問題?

  • 產生場景:

    MaxCompute使用盤古分布式文件系統是按塊(Block)存放的,通常文件大小比塊大小小的文件(默認塊大小為64MB),被稱為小文件。

    以下場景會產生小文件:

    • Reduce計算過程會產生大量小文件。

    • Tunnel數據采集過程中會生成小文件。

    • Job執行過程中生成的各種臨時文件、回收站保留的過期的文件等,主要分類有以下幾種:

      • TABLE_BACKUP:回收站中超過保留天數的表。

      • FUXI_JOB_TMP:作業運行臨時目錄。

      • TMP_TABLE:作業運行中產生的臨時表。

      • INSTANCE:作業運行時保留在META表中的日志。

      • LIFECYCLE:超過生命周期的數據表或分區。

      • INSTANCEPROFILE:作業提交及執行完成后的Profile信息。

      • VOLUME_TMP:沒有META信息,但在盤古上有路徑的數據。

      • TEMPRESOURCE:用戶自定義函數使用的一次性臨時資源文件。

      • FAILOVER:系統發生失效轉移(Failover)時保留的臨時文件。

    可以通過如下命令查看表中的小文件數量。

    desc extended + 表名          
  • 問題影響:

    小文件過多會帶來以下影響:

    • 影響啟動Map Instance,默認情況下一個小文件對應一個Instance,造成浪費資源,影響整體的執行性能。

    • 過多的小文件給盤古文件系統帶來壓力,且影響空間的有效利用,嚴重的會直接導致盤古文件系統不可服務。

  • 處理方式:

    不同原因產生的小文件,需要有不同的處理方法:

    • Reduce過程中產生的小文件。您需要使用Insert Overwrite源表(或分區)即可,或者將數據寫入到新表刪除源表。

    • Tunnel數據采集過程中產生的小文件,通過如下方式處理:

      • 調用Tunnel SDK時,當緩存達到64MB時提交一次。

      • 使用客戶端時避免頻繁上傳小文件,建議積累較大時一次性上傳。

      • 如果導入的是分區表,建議給分區設置生命周期,過期不用的數據自動清理。

      • Insert Overwrite源表(或分區)。

      • ALTER合并模式,通過如下命令進行合并。

        ALTER TABLE tablename [PARTITION] MERGE SMALLFILES;                         

執行并發插入操作報錯,如何處理?

  • 問題現象

    執行并發插入操作時,返回報錯如下。

    ODPS-0110999: Critical! Internal error happened in commit operation and rollback failed, possible breach of atomicity - Rename directory failed during DDLTask.       
  • 產生原因

    MaxCompute沒有并發控制,可能有多個任務在修改這張表。這種情況下,有極小的概率在最后的META操作時,發生并發沖突導致執行異常。同時ALTER、INSERT操作都會發生此情況。

  • 解決措施

    建議您將此表修改為分區表,每個SQL語句插入的數據寫入單獨的分區里,這樣便可以執行并發操作。

運行作業時,報錯ODPS-0130121,如何解決?

  • 問題現象

    運行作業時,返回報錯如下。

    FAILED:ODPS-0130121:Invalid argument type - line 1:7 'testfunc':in function class
  • 產生原因

    內建函數接收到的參數類型不正確。

  • 解決措施

    建議您檢查輸入參數的數據類型,確保滿足函數入參要求。

創建的Shell任務執行失敗,在ECS服務器執行顯示成功,運維中心無法查看失敗的原因,如何解決?

可以在ECS上執行以下代碼,命令重啟Agent后,重新執行任務。

su - admin
/home/admin/alisatasknode/target/alisatasknode/bin/serverctl restart

如果還是看不到運行日志,配置IP10.116.134.123訪問8000端口后再試。

DataWorks-運維中心-任務管理中查看某個任務屬性,為何顯示的狀態是暫停?

配置中心 > 項目配置中查看是否啟用了此任務。

  • 如果啟用了此任務,請查看此任務的上游任務是否執行失敗。

  • 如果沒有啟用此任務,請右鍵單擊工作節點查看是否運行正常,或將此任務重新命名后配置調度。

執行數據集成操作時,右上角總是彈出消息框提示Order字段是否已經刪除,是什么原因?

首先查看數據庫中的Order字段是否已經被刪除。

清除緩存后,將同步任務重新配置或者重新創建同步任務,再次執行驗證。

odpscmd -f執行SQL文件失敗,沒有提示報錯信息,如何解決?

首先需要獲取任務的運行日志或者報錯信息,才能定位問題。

通過Shell執行odpscmd -f命令,日志信息會打印在Shell中。不過在Shell中調用正常,但是在crontab中調用時會報錯且沒有日志。

針對這種情況,您可以在crontab中把任務執行的輸出記錄下來,后續出了問題可以在日志文件里獲取任務的日志。執行語句為odpscmd -f xxx.sql >> path/to/odpscmd.log 2>&1

使用DataWorks時,很多數據同步任務處于等待狀態是什么原因?

同步任務使用公共調度資源時一直在等待狀態,您可以通過離線同步提速或限速實現最大化的同步速度。

您也可以添加自己的調度資源,詳情請參見新增和使用自定義數據集成資源組

Shell任務執行時,調度資源管理添加的其中一臺服務器一直顯示停止狀態,重新執行了初始化還是顯示停止,是什么原因?

  • 如果是云產品互聯網絡,請確認注冊使用的機器名稱是否為機器的真實名稱。在ECS上執行hostname命令,返回的結果即為機器名稱,不支持自定義名稱。

  • 如果是專有網絡,請確認是否修改過ECS的主機名稱,注意這里不是指實例名。如果修改過主機名稱,在ECS上執行cat /etc/hosts命令查詢是否綁定正確。