定義資料來源檢視 (Analysis Services)
適用於: SQL Server Analysis Services
Azure Analysis Services
Fabric/Power BI Premium
數據源檢視包含 SQL Server Analysis Services 多維度資料庫物件所使用的架構邏輯模型,也就是 Cube、維度和採礦結構。 數據源檢視是元數據定義,以 XML 格式儲存,統一維度模型 (UDM) 和採礦結構所使用的這些架構元素。 資料源檢視:
包含元數據,代表一或多個基礎數據源中選取的物件,或如果您遵循架構產生的方法,則用來產生基礎關係型數據存放區的元數據。
可以建置在一或多個數據源上,讓您定義多維度和數據採礦物件,以整合多個來源的數據。
可以包含關聯性、主鍵、物件名稱、計算結果列和查詢,這些查詢不存在於基礎數據源中,且它們與基礎數據源不同。
用戶端應用程式無法看見或可供查詢。
DSV 是多維度模型的必要元件。 大部分 Analysis Services 開發人員會在模型設計的早期階段建立 DSV,根據提供基礎數據的外部關係資料庫產生至少一個 DSV。 不過,您也可以在稍後階段建立 DSV,在建立維度和 Cube 之後產生架構和基礎資料庫結構。 第二種方法有時稱為由上而下設計,並經常用於原型設計和分析模型。 當您使用此方法時,您可以使用架構產生精靈,根據 Analysis Services 專案或資料庫中定義的 OLAP 物件來建立基礎數據源檢視和數據源物件。 不論您如何及何時建立 DSV,每個模型都必須有一個模型,才能處理它。
本主題包含下列各節:
指定關聯性 的名稱比對準則
數據源檢視組合
資料來源檢視包含下列專案:
名稱和描述。
從一或多個數據源擷取之架構的任何子集定義,最多可包含整個架構,包括下列專案:
數據表名稱。
數據行名稱。
數據類型。
可為 Null。
數據行長度。
主鍵。
主鍵 - 外鍵關聯性。
基礎數據來源架構的註釋,包括下列專案:
數據表、檢視和數據行的易記名稱。
從一或多個數據源傳回數據行的具名查詢(如架構中的數據表所示)。
從數據源傳回數據行的具名計算(在數據表或檢視中顯示為數據行)。
邏輯主鍵(如果主鍵未在基礎表中定義,或不包含在檢視或具名查詢中,則需要)。
邏輯主鍵 - 數據表、檢視和具名查詢之間的外鍵關聯性。
使用數據源檢視精靈建立 DSV
若要建立 DSV,請從 SQL Server Data Tools 中的 [方案總管] 執行 [數據源檢視精靈]。
注意
或者,您可以先建構維度和 Cube,然後使用架構產生精靈為模型產生 DSV。 如需詳細資訊,請參閱 架構產生精靈 (Analysis Services)。
在 [方案總管] 中,以滑鼠右鍵按兩下 [資料源檢視] 資料夾,然後按兩下 [[新增數據源檢視]。
指定新的或現有的數據來源物件,以提供外部關係資料庫的連接資訊(您只能在精靈中選取一個數據源)。
在相同的頁面上,按兩下 [進階 選擇特定架構、套用篩選或排除數據表關聯性資訊。
選擇架構
對於包含多個架構的極大型數據源,您可以選取要用於逗號分隔清單中的架構,不含空格。
擷取關聯性
您可以藉由清除 [進階數據源檢視選項] 對話框中的 [擷取關聯性] 複選框,以便手動在 [數據源檢視設計工具] 中建立數據表之間的關聯性,以省略數據表關聯性資訊。
篩選可用的物件
如果 [可用的物件] 列表包含非常大量的物件,您可以套用將字串種類為選取準則的簡單篩選來減少清單。 例如,如果您輸入 dbo ,然後按兩下 [Filter] 按鈕,則只有以 “dbo” 開頭的項目會顯示在 Available 物件 列表中。 篩選可以是部分字串(例如,“sal” 會傳回 sales 和 salary),但不能包含多個字串或運算符。
對於未定義數據表關聯性的關係型數據源,會出現 名稱比對 頁面,以便您可以選取適當的名稱比對方法。 如需詳細資訊,請參閱本主題中的 一节 一節。
新增次要數據源
定義包含多個數據來源之數據表、檢視或數據行的數據源檢視時,您新增物件至數據源檢視的第一個數據源會指定為主要數據源(您無法在定義主要數據源之後變更主要數據源)。 根據單一數據源中的物件定義數據源檢視之後,您就可以從其他數據源新增物件。
如果 OLAP 處理或數據採礦查詢需要單一查詢中多個數據源的數據,則主要數據源必須使用 OpenRowset支援遠端查詢。 一般而言,這會是 SQL Server 數據源。 例如,如果您設計 OLAP 維度,其中包含系結至多個數據源數據行的屬性,則 SQL Server Analysis Services 會建構 OpenRowset 查詢,以在處理期間填入此維度。 不過,如果可以填入 OLAP 物件,或從單一數據源解析數據採礦查詢,則不會建構 OpenRowset 查詢。 在某些情況下,您可以定義屬性之間的屬性關聯性,以消除 OpenRowset 查詢的需求。 如需屬性關聯性的詳細資訊,請參閱 屬性關聯性、在資料源檢視中新增或移除資料表或檢視 和 定義屬性關聯性。
若要從第二個數據源新增數據表和數據行,請按兩下 [方案總管] 中的 DSV,在 [數據源檢視設計工具] 中開啟它,然後使用 [新增/移除數據表] 對話框,以包含專案中定義之其他數據源的物件。 如需詳細資訊,請參閱 在數據源檢視中新增或移除資料表或檢視表 (Analysis Services)。
指定關聯性的名稱比對準則
當您建立 DSV 時,會根據數據源中的外鍵條件約束,在數據表之間建立關聯性。 SQL Server Analysis Services 引擎需要這些關聯性,才能建構適當的 OLAP 處理和數據採礦查詢。 不過,有時候具有多個數據表的數據源沒有外鍵條件約束。 如果數據源沒有外鍵條件約束,[數據源檢視精靈] 會提示您定義您希望精靈嘗試比對不同數據表的數據行名稱的方式。
注意
只有在基礎數據源中偵測到沒有外鍵關聯性時,才會提示您提供名稱比對準則。 如果偵測到外鍵關聯性,則會使用偵測到的關聯性,而且您必須手動定義您想要包含在 DSV 中的任何其他關聯性,包括邏輯主鍵。 如需詳細資訊,請參閱在數據源檢視中定義邏輯關聯性 和 在數據源檢視中定義邏輯主鍵。
[數據源檢視精靈] 會使用您的回應來比對數據行名稱,並在 DSV 中的不同數據表之間建立關聯性。 您可以指定下表所列的任何一個準則。
名稱比對準則 | 描述 |
---|---|
與主鍵相同的名稱 | 源數據表中的外鍵數據行名稱與目的地數據表中的主鍵數據行名稱相同。 例如,外鍵數據行 Order.CustomerID 與主鍵數據行 Customer.CustomerID 相同。 |
與目的地數據表名稱相同的名稱 | 源數據表中的外鍵數據行名稱與目的地數據表的名稱相同。 例如,外鍵數據行 Order.Customer 與主鍵數據行 Customer.CustomerID 相同。 |
目的地數據表名稱 + 主鍵名稱 | 源數據表中的外鍵數據行名稱與與主鍵數據行名稱串連的目的地數據表名稱相同。 允許空格或底線分隔符。 例如,下列外鍵組全都相符:Order.CustomerID 和 Customer.ID Order.Customer ID 和 Customer.ID Order.Customer_ID 和 Customer.ID |
您選取的準則會變更 DSV NameMatchingCriteria 屬性設定。 此設定會決定精靈如何新增相關的數據表。 當您使用數據源檢視設計工具變更數據源檢視時,此規格會決定設計工具如何比對數據行,以在 DSV 中建立資料表之間的關聯性。 您可以在 [數據源檢視設計工具] 中變更 NameMatchingCriteria 屬性設定。 如需詳細資訊,請參閱 數據源檢視中的變更屬性 (Analysis Services)。
注意
完成 [數據源檢視精靈] 之後,您可以在 [數據源檢視設計工具] 的架構窗格中新增或移除關聯性。 如需詳細資訊,請參閱 在資料源檢視中定義邏輯關聯性 (Analysis Services)。
另請參閱
在數據源檢視中新增或移除數據表或檢視表
在數據源檢視中定義邏輯主鍵 (Analysis Services)
在數據源檢視中定義具名計算
在數據源檢視中定義具名查詢 (Analysis Services)
取代數據源檢視中的數據表或具名查詢
使用數據源檢視設計工具中的圖表 (Analysis Services)
探索數據源檢視中的數據 (Analysis Services)
刪除數據源檢視 (Analysis Services)
重新整理數據源檢視中的架構 (Analysis Services)