閱讀780 返回首頁    go iPhone_iPad_Mac_手機_平板_蘋果apple


使用shell執行datax任務__常見問題_大數據開發套件-阿裏雲

  1. 如果沒有配置好shell環境,請參考此鏈接的文檔:Q:怎麼順利執行Shell/MR類型任務

  2. 配置完成後,在shell節點填寫代碼。可以參考下麵的demo代碼

    • 代碼說明
      1. 生成臨時datax配置文件(您隻需要修改配置文件內容即可,其他不用更改。參考文檔:https://github.com/alibaba/DataX/wiki/Quick-Start)
      2. 讀取調度參數,分別為$1, $2
        • ${bdp.system.bizdate},${bdp.system.cyctime} 不需要配置,具體含義參考:係統參數
      3. 執行datax任務,進行數據同步
      4. 刪除臨時文件
      5. 判斷任務成功失敗,進行返回。0代表成功
  1. #!/bin/bash
  2. #********************************************************************#
  3. ##author:yixiao streamreader->streamwriter
  4. ##create time:2016-03-28 10:00:00
  5. #********************************************************************#
  6. shell_datax_home='/home/admin/shell_datax'
  7. mkdir -p ${shell_datax_home}
  8. shell_datax_config=${shell_datax_home}/${ALISA_TASK_ID}
  9. echo '''
  10. {
  11. "job": {
  12. "setting": {
  13. "speed": {
  14. "channel": 1
  15. },
  16. "errorLimit": {
  17. "record": 0,
  18. "percentage": 0.02
  19. }
  20. },
  21. "content": [
  22. {
  23. "reader": {
  24. "name": "streamreader",
  25. "parameter": {
  26. "column": [
  27. {
  28. "value": "${bdp.system.bizdate}",
  29. "type": "string"
  30. },
  31. {
  32. "value": "${bdp.system.cyctime}",
  33. "type": "string"
  34. },
  35. {
  36. "value": "${params1}__${params2}",
  37. "type": "string"
  38. },
  39. {
  40. "value": 19890427,
  41. "type": "long"
  42. },
  43. {
  44. "value": "1989-06-04 00:00:00",
  45. "type": "date"
  46. },
  47. {
  48. "value": true,
  49. "type": "bool"
  50. },
  51. {
  52. "value": "test",
  53. "type": "bytes"
  54. }
  55. ],
  56. "sliceRecordCount": 10
  57. }
  58. },
  59. "writer": {
  60. "name": "streamwriter",
  61. "parameter": {
  62. "print": true,
  63. "encoding": "UTF-8"
  64. }
  65. }
  66. }
  67. ]
  68. }
  69. }
  70. ''' > ${shell_datax_config}
  71. params1=$1
  72. params2=$2
  73. datax_params='-p "-Dparams1=${params1} -Dparams2=${params2}"'
  74. echo "`date '+%Y-%m-%d %T'` shell datax config: ${shell_datax_config}"
  75. echo "`date '+%Y-%m-%d %T'` shell datax params: -p "-Dparams1=${params1} -Dparams2=${params2}""
  76. /home/admin/datax3/bin/datax.py ${shell_datax_config} -p "-Dparams1=${params1} -Dparams2=${params2}"
  77. shell_datax_run_result=$?
  78. rm ${shell_datax_config}
  79. if [${shell_datax_run_result} -ne 0]
  80. then
  81. echo "`date '+%Y-%m-%d %T'` shell datax ended failed :("
  82. exit -1
  83. fi
  84. echo "`date '+%Y-%m-%d %T'` shell datax ended success~"

3。 調度係統配置參數

參數配置

最後更新:2016-11-23 16:04:20

  上一篇:go 同步數據報版本號異常__用戶常見問題反饋_常見問題_大數據開發套件-阿裏雲
  下一篇:go 首次使用___大數據開發套件-阿裏雲