2017-06-16 97 views
0

我已經實現了一個Azure的DF工作,其執行SQL存儲過程:Azure數據工廠 - 始終運行?

{ 
    "name": "spLoggingProc", 
    "properties": { 
     "activities": [ 
      { 
       "type": "SqlServerStoredProcedure", 
       "typeProperties": { 
        "storedProcedureName": "logging" 
       }, 
       "outputs": [ 
        { 
         "name": "spEmptyOutput15-4" 
        } 
       ], 
       "scheduler": { 
        "frequency": "Hour", 
        "interval": 1 
       }, 
       "name": "spLogging" 
      } 
     ], 
     "start": "2017-01-01T00:00:00Z", 
     "end": "2099-01-01T00:10:00Z", 
     "isPaused": false, 
     "hubName": "dwh_hub", 
     "pipelineMode": "Scheduled" 
    } 
} 

數據集:

{ 
    "name": "spEmptyOutput15-4", 
    "properties": { 
     "published": false, 
     "type": "AzureSqlTable", 
     "linkedServiceName": "DWH", 
     "typeProperties": { 
      "tableName": "spEmptyOutput15-4" 
     }, 
     "availability": { 
      "frequency": "Hour", 
      "interval": 1 
     } 
    } 
} 

現在的問題是,在PROC運行每2-3秒。但是頻率設置爲每小時。我的目標是,每運行一小時,每一天都會運行。

任何人都可以幫我嗎?

非常感謝!

回答

0

請將開始時間更改爲今天的日期,並且您不會看到問題。因爲您已將開始時間設置爲年初,因此它將在每天和每個小時運行一次,以便在正常例程之前繼續運行24x166次。它仍然每小時運行一次,但它必須完成每小時的過去運行,您會看到它每隔幾秒鐘運行一次。我相信你的proc只需要1-2秒就可以完成。

+0

感謝您的回覆 - 它的工作原理。我已經有時間了。非常令人沮喪... –

0

還有一種方法可以並行運行10個切片(10爲最大值)以提高速度。如果你還想要過去的數據。那麼這將有所幫助。

更改策略下的併發值3以並行運行切片。

 "policy": { 
     "concurrency": 3, 
     "executionPriorityOrder": "OldestFirst", 
     "retry": 3, 
     "timeout": "00:10:00" 
     }