共用方式為


使用 SQL Server Agent 排程 SSAS 系統管理工作

適用於: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

使用 SQL Server Agent 服務,您可以排程 SQL Server Analysis Services 系統管理工作,以所需的順序和時間執行。 排程的工作可協助您自動化在一般或可預測的週期上執行的程式。 您可以排程管理工作,例如 Cube 處理,以在商務活動緩慢期間執行。 您也可以藉由在 SQL Server Agent 作業內建立作業步驟來判斷工作執行的順序。 例如,您可以處理 Cube,然後執行 Cube 的備份。

作業步驟可讓您控制執行流程。 如果一個作業失敗,您可以設定 SQL Server Agent 繼續執行其餘工作或停止執行。 您也可以設定 SQL Server Agent 來傳送作業執行成功或失敗的相關通知。

本主題是逐步解說,說明使用 SQL Server Agent 執行 XMLA 腳本的兩種方式。 第一個範例示範如何排程單一維度的處理。 範例二示範如何將處理工作合併成依排程執行的單一腳本。 若要完成本逐步解說,您必須符合下列必要條件。

先決條件

必須安裝 SQL Server Agent 服務。

根據預設,作業會在服務帳戶下執行。 SQL Server Agent 的預設帳戶是 NT Service\SQLAgent$<instancename>。 若要執行備份或處理工作,此帳戶必須是 Analysis Services 實例上的系統管理員。 如需詳細資訊,請參閱 將伺服器管理員許可權授與 Analysis Services 實例

您也應該有要使用的測試資料庫。 您可以從 Analysis Services 多維度教學課程部署 AdventureWorks 多維度範例資料庫或專案,以在本逐步解說中使用。 如需詳細資訊,請參閱 安裝 Analysis Services 多維度模型化範例數據和專案教學課程

範例 1:在排程工作中處理維度

此範例示範如何建立及排程處理維度的作業。

SQL Server Analysis Services 排程工作是內嵌至 SQL Server Agent 作業的 XMLA 腳本。 此作業會排定在所需的時間和頻率執行。 因為 SQL Server Agent 是 SQL Server 的一部分,因此您可以使用 Database Engine 和 SQL Server Analysis Services 來建立及排程系統管理工作。

建立腳本以在 SQL Server Agent 作業中處理維度

  1. 在 SQL Server Management Studio 中,連線到 SQL Server Analysis Services。 開啟資料庫資料夾並尋找維度。 以滑鼠右鍵按下維度,然後選取 [進程]。

  2. 在 [處理維度] 對話框中,於 [物件] 清單下的 [處理 選項] 數據行中,確認此數據行的選項 [處理完整]。 如果不是,請在 [處理選項]下,按兩下選項,然後從下拉式清單中選取 [[處理完整]。

  3. 按下 文稿

    此步驟會開啟 XML 查詢 視窗,其中包含處理維度的 XMLA 腳本。

  4. 在 [處理維度] 對話框中,按兩下 [取消] 關閉對話框

  5. 在 [XMLA 查詢] 視窗中,反白顯示 XMLA 腳本,以滑鼠右鍵按下醒目提示的腳本,然後選取 [複製

    此步驟會將 XMLA 腳本複製到 Windows 剪貼簿。 您可以將 XMLA 腳本保留在剪貼簿中,或貼到 [記事本] 或其他文本編輯器中。 以下是 XMLA 腳本的範例。

    <Batch xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">  
     <Parallel>  
      <Process xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">  
        <Object>  
          <DatabaseID>Adventure Works DW Multidimensional</DatabaseID>  
          <DimensionID>Dim Account</DimensionID>  
        </Object>  
        <Type>ProcessFull</Type>  
        <WriteBackTableCreation>UseExisting</WriteBackTableCreation>  
      </Process>  
     </Parallel>  
    </Batch>  
    

建立和排程維度處理作業

  1. 連接到 Database Engine 的實例,然後開啟 [物件總管]。

  2. 展開 SQL Server Agent

  3. 以滑鼠右鍵按兩下 [作業],然後選取 [[新增作業]

  4. 在 [新增作業] 對話框中,於 [名稱]中輸入作業名稱。

  5. 在 [選取頁面],選取 [步驟],然後按兩下 [[新增]

  6. 在 [新增作業步驟] 對話框中,於 [步驟名稱] 中輸入步驟名稱。

  7. Server中,針對具名實例的預設實例輸入 localhostlocalhost\<實例> 名稱。

    如果您要從遠端電腦執行作業,請使用執行作業的伺服器名稱和實例名稱。 針對預設實例使用 <伺服器名稱> 格式,並針對具名實例使用 <伺服器名稱>\<實例名稱>。

  8. 在 [類型]中,選取 [SQL Server Analysis Services 命令]

  9. 命令中,以滑鼠右鍵按兩下 ,然後 選取 [貼上]。 您在上一個步驟中產生的 XMLA 腳稿應該會出現在命令視窗中。

  10. 按下 [確定]

  11. 在 [選取頁面],按兩下 [排程],然後按兩下 [[新增]

  12. 在 [新增作業排程] 對話框中,於 [名稱]中輸入排程名稱,然後按兩下 [確定]

    此步驟會在上午 12:00 建立星期日的排程。 下一個步驟說明如何手動執行作業。 您也可以指定在監視作業時執行工作的排程。

  13. 在 [新增作業] 對話框中,按兩下 [確定] [確定]

  14. [物件總管]中,展開 [作業],以滑鼠右鍵按兩下您建立的作業,然後選取 [步驟][啟動作業]。

    因為作業只有一個步驟,因此作業會立即執行。 如果作業包含一個以上的步驟,您可以選取作業應該啟動的步驟。

  15. 當作業完成時,按下 [關閉]

範例 2:批處理排程工作中維度和數據分割的批次

此範例中的程式示範如何建立和排程批次處理 SQL Server Analysis Services 資料庫維度的作業,同時處理相依於匯總維度的 Cube 數據分割。 如需 SQL Server Analysis Services 物件批處理的詳細資訊,請參閱 批處理 (Analysis Services)

在 SQL Server Agent 作業中建立批處理維度和數據分割的腳本

  1. 使用相同的資料庫,展開 [維度],以滑鼠右鍵按兩下 [Customer] 維度,然後選取 [Process]。

  2. 在 [進程維度] 對話框中,於 [處理 選項] 數據行的 [物件] 列表下,確認此數據行的選項 [處理完整]。

  3. 按下 文稿

    此步驟會開啟 XML 查詢 視窗,其中包含處理維度的 XMLA 腳本。

  4. 在 [處理維度] 對話框中,按兩下 [取消] 關閉對話框

  5. 展開 Cube、展開 Adventure Works量值群組、展開 Internet Sales、展開 分割區,以滑鼠右鍵按兩下清單中的最後一個分割區,然後選取 [處理]。

  6. 在 [進程分割區] 對話框中,於 [處理 選項] 數據行的 [物件] 清單下,確認此數據行的選項 [處理完整]。

  7. 按下 文稿

    此步驟會開啟第二個 XML 查詢 視窗,其中包含處理分割區的 XMLA 腳本。

  8. 在 [處理分割區] 對話框中,按兩下 [取消] 關閉編輯器

    此時,您必須合併這兩個腳本,並確定先處理維度。

    警告

    如果先處理分割區,後續的維度處理會使分割區變成未處理。 分割區接著需要第二個處理才能達到已處理的狀態。

  9. XMLA 查詢 視窗中,包含處理分割區的 XMLA 腳本、反白顯示 卷標內的程式代碼、以滑鼠右鍵按下醒目提示的腳稿,然後選取 [複製

    <Process xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">  
        <Object>  
          <DatabaseID> Adventure Works DW Multidimensional</DatabaseID>  
          <CubeID>Adventure Works</CubeID>  
          <MeasureGroupID>Fact Internet Sales 1</MeasureGroupID>  
          <PartitionID> Internet_Sales_2004</PartitionID>  
        </Object>  
        <Type>ProcessFull</Type>  
        <WriteBackTableCreation>UseExisting</WriteBackTableCreation>  
      </Process>  
    
  10. 開啟 XMLA 查詢 視窗,其中包含處理維度的 XMLA 腳本。 以滑鼠右鍵按下 標籤左側的腳稿,然後選取 [貼上]

    下列範例顯示修訂后的 XMLA 腳本。

    <Batch xmlns="http://schemas.microsoft.com/analysisservices/2003/engine">  
     <Parallel>  
      <Process xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">  
        <Object>  
          <DatabaseID>Adventure Works DW Multidimensional</DatabaseID>  
          <DimensionID>Dim Customer</DimensionID>  
        </Object>  
        <Type>ProcessFull</Type>  
        <WriteBackTableCreation>UseExisting</WriteBackTableCreation>  
      </Process>  
      <Process xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">  
        <Object>  
          <DatabaseID>Adventure Works DW Multidimensional</DatabaseID>  
          <CubeID>Adventure Works</CubeID>  
          <MeasureGroupID>Fact Internet Sales 1</MeasureGroupID>  
          <PartitionID>Internet_Sales_2004</PartitionID>  
        </Object>  
        <Type>ProcessFull</Type>  
        <WriteBackTableCreation>UseExisting</WriteBackTableCreation>  
      </Process>  
     </Parallel>  
    </Batch>  
    
  11. 反白顯示修訂的 XMLA 腳本、以滑鼠右鍵按下醒目提示的腳本,然後選取 [複製]

  12. 此步驟會將 XMLA 腳本複製到 Windows 剪貼簿。 您可以將 XMLA 腳本保留在剪貼簿中、將它儲存至檔案,或貼到 [記事本] 或其他文本編輯器中。

建立和排程批處理作業

  1. 連接到 SQL Server 的實例,然後開啟 [物件總管]。

  2. 展開 SQL Server Agent。 如果未執行,請啟動服務。

  3. 以滑鼠右鍵按兩下 [作業],然後選取 [[新增作業]

  4. 在 [新增作業] 對話框中,於 [名稱]中輸入作業名稱。

  5. 在 [步驟]中,按兩下 [[新增]

  6. 在 [新增作業步驟] 對話框中,於 [步驟名稱] 中輸入步驟名稱。

  7. 在 [類型]中,選取 [SQL Server Analysis Services 命令]

  8. 在 [執行身分中,選取 SQL Server Agent 服務帳戶。 回想一下,此帳戶必須具有 Analysis Services 的系統管理許可權一節。

  9. Server中,指定 Analysis Services 實例的伺服器名稱。

  10. 命令中,以滑鼠右鍵按兩下 ,然後 選取 [貼上]。

  11. 按下 [確定]

  12. 在 [排程] 頁面中,按兩下 [[新增]。

  13. 在 [新增作業排程] 對話框中,於 [名稱]中輸入排程名稱,然後按兩下 [確定]

    此步驟會在上午 12:00 建立星期日的排程。 下一個步驟說明如何手動執行作業。 您也可以選取排程,以在監視作業時執行作業。

  14. 按兩下 [確定] 關閉對話框。

  15. [物件總管]中,展開 [作業],以滑鼠右鍵按兩下您建立的作業,然後選取 [步驟][啟動作業]。

    因為作業只有一個步驟,因此作業會立即執行。 如果作業包含一個以上的步驟,您可以選取作業應該啟動的步驟。

  16. 當作業完成時,按下 [關閉]

另請參閱

處理選項和設定 (Analysis Services)