分析檢視數據集設計
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
每個分析檢視都會在Power BI 中定義數據集。 數據集是用來建立視覺效果的數據表和屬性。 Power BI Data Connector for Azure DevOps 所產生的數據集具有下列特性:
- 分析中可用的實體和相關聯的欄位會扁平化(反正規化)成單一數據表。 例如,「建立者」中的用戶名稱會模型化為字串(用戶名稱),而不是使用者標識元。 它不需要建立數據表之間的關聯性,以建立報表。
- 歷程記錄數據會模型化為每個時間週期的快照集,因此趨勢報告很簡單。
如需 Power BI 和數據集的詳細資訊,請參閱 Power BI - Power BI 服務 的基本概念。
扁平化 Analytics OData 端點
Analytics OData 端點提供分析數據的正規化表示法。 數據正規化主要是為了支援報告數據之間存在的「多對多」關聯性,例如工作專案和相關聯的標記。
Power BI 資料連接器將此數據表示為單一數據表,因此我們的 分析數據模型中 顯示的關聯性不需要在 Power BI 中重新建立。 此表示法可讓您立即篩選複雜欄位,例如工作項目標記。
此程式可大幅簡化報表啟動並執行。 不過,並非所有可透過 Analytics OData 端點取得的欄位都可以在 Analytics 檢視中進行選取。
[分析] 檢視中的可選取欄位
您可以在分析檢視中選取的欄位會對應至一般工作追蹤欄位和 Analytics 資料存放區欄位。
工作追蹤欄位
您可以在 [分析] 檢視中選取所有工作追蹤欄位,但下列欄位除外:
- 不屬於 建立檢視之專案的 欄位
- 具有 HTML 數據類型的長文字欄位,例如描述、歷程記錄和其他欄位
- 工作項目連結計數位段,例如 ExternalLinkCount、HyperLinkCount、AttachedFileCount、RelatedLinkCount
- 特定的 REST API 字段,例如浮水印、IsDeleted
- 具有 多對多 關聯性的欄位,例如 Team、Board 資料行、面板名稱
重要
身分識別或人員名稱欄位,例如 [建立者]、[指派給] 等,都是可選取的欄位,不過您目前無法選取這些字段做為字段準則,以便篩選工作專案。
如需每個工作項目追蹤欄位的描述,請參閱 Azure Boards 的實體和屬性參考。
分析數據存放區欄位
您可以在 [分析] 檢視中選取下列以分析為基礎的欄位:
欄位 | 描述 |
---|---|
週期時間 | 工作項目從狀態類別「進行中」移至「已完成」的時間。 |
日期(自動隨附於歷程記錄中) | 支持檢視已篩選工作專案集的每日、每周或每月記錄。 |
是目前 (自動包含在歷程記錄中) | 支援藉由將 值設定為 True ,篩選數據以檢視已篩選工作專案集的最新快照集。 |
前置時間 | 工作項目從狀態類別「建議」移至「已完成」的時間。 |
父工作項目標識碼 | 工作專案的父代工作專案標識碼。 |
專案名稱 | 相當於專案欄位。 |
修訂 | 指派給工作項目歷程記錄修訂的數位。 |
標籤 | 以分號分隔的標記清單。 |
WorkItemRevisionSK | 用於聯結相關實體之工作專案修訂的分析唯一索引鍵。 |
如需狀態類別的資訊,請參閱 工作流程狀態和狀態類別。 如需分析數據模型的詳細資訊,請參閱 分析的數據模型。
若要存取透過 Analytics 取得的任何其他欄位,請在分析檢視中包含對應的 Surrogate 密鑰 (SK) 或工作專案識別碼。 然後,根據 Analytics Navigational 屬性建立必要的對應數據表。
- 反覆專案 (反覆專案)
- 區域 (AreaSK)
- Teams (AreaSK - 根據 Teams 導覽屬性產生對應資料表)
- BoardLocations (AreaSK - 根據 BoardLocations 導覽屬性產生對應數據表)
- 日期 (DateSK)
- 行程 (AreaSK - 根據 行程 導覽屬性產生對應資料表)
- WorkItemLinks (工作專案識別符)
資料關聯性
瞭解分析數據模型對於建立實體之間的良好關聯性至關重要。
根據預設,從 Analytics 傳回基本數據時,數據會相關,如下圖所示:
標籤、Teams 和使用者與任何其他數據無關。 它與這些實體的關聯性相關。 它們可能以幾種方式相關:
- 這些模型中不容易處理的多對多關聯性
- 實體之間有多個關聯性,例如使用者與工作專案之間的關聯性。 其相關方式如下:
- 指派至
- 建立者
- 變更者
- 依此類推…
您可以直接處理多個關聯性。 例如,在預設模型中,您可以編輯查詢、選取 WorkItems 數據表的 AssignedTo 數據行,並展開數據行以包含 Users 數據表中的所有數據,而且您也可以針對 [建立者] 和 [變更依據] 資料行重複此程式。 它可讓您從一個數據表到另一個數據表有多個連結,但不允許。
以這種方式擴充數據行的另一個原因是處理不允許的循環關聯性。 例如,採用下列路徑:專案 > 區域 > 工作項目 > 專案。 它呈現典型的循環問題。 如果您想要查看哪些是指定專案的一部分,該怎麼辦? 建置的模型在 Areas 和 Work Items 和 Projects 和 Work Items 之間具有關聯性,但專案無法與 Areas 相關,因為該模型會完成迴圈關聯性,因此不允許。 若要處理此案例,您可以展開 Areas 資料表中的 [專案] 資料行。 若要這樣做,請執行下列步驟:
從 [常用] 索引標籤選取 [編輯查詢]。
選取 [ 區域] 查詢。
捲動至 [專案] 資料行 (最後一個數據行),然後選取數據行頂端的 [展開] 圖示。
取消核取 ProjectName 以外的所有數據行,然後選取 [確定]。
現在您可以依專案列出區域,並取得每個專案中的區域計數。