執行知識探索
適用於:SQL Server
此主題描述如何透過知識探索來建立知識庫。 在探索程序中,Data Quality Services (DQS) 會透過電腦輔助的程序來分析範例資料來源中的資料,並將它所獲得的知識加入至知識庫。 您可以在知識探索活動或定義域管理活動的 [管理定義域值] 步驟中修改及增強這項知識。
知識探索是由精靈驅動的程序,其中包含必須各自完成的三個步驟。
開始之前
必要條件
如果您執行探索的來源資料在 Excel 檔案中,則 Microsoft Excel 必須安裝在 Data Quality Client 電腦上。 否則,您將無法在對應階段選取此 Excel 檔案。 由 Microsoft Excel 建立的檔案可以具有 .xlsx、.xls 或 .csv 的副檔名。 如果使用 64 位元版本的 Excel,則僅支援 Excel 2003 檔案 (.xls);Excel 2007 或 2010 檔案 (.xlsx) 不受支援。 如果您使用 64 位元版本的 Excel 2007 或 2010,請將檔案儲存為 .xls 檔案或 .csv 檔案,或是改為安裝 32 位元版本的 Excel。
安全性
權限
您必須擁有 DQS_MAIN 資料庫的 dqs_kb_editor 角色或 dqs_administrator 角色,才能建立知識庫。
第一步:開始知識探索
啟動 Data Quality Client。 如需這樣做的詳細資訊,請參閱執行 Data Quality Client 應用程式。
如果您想要針對新的知識庫執行知識探索,請按一下 [新增知識庫]、輸入名稱和描述,並指定建立此知識庫所根據的來源 (如果適用的話)。 如果您想要針對現有的知識庫執行知識探索,請按一下 [開啟知識庫],然後選取知識庫。
選取 [知識探索] 當做活動,然後按一下 [建立] 建立新的知識庫,或按一下 [開啟] 開啟現有的知識庫。
對應階段
在 [資料來源] 欄位中,選取 [SQL Server] (預設值) 或 [Excel 檔案]。
注意
在這個頁面中,您會連接 SQL Server 或 Excel 資料來源,然後對應資料來源內的資料行與知識庫中的定義域。 對應資料表會顯示要分析的來源資料庫中的所有資料行,將知識加入至對應的定義域。 在資料來源內的資料行與知識庫中的定義域之間建立對應。
如果資料來源是 [SQL Server],則請依照以下方式進行:
在 [資料庫] 欄位中,選取您要分析的來源資料庫以建立知識庫。 文字方塊下拉式清單會列出可用的資料庫。 來源資料庫必須與 Data Quality Server 位於相同的 SQL Server 執行個體上。 否則不會出現在下拉式清單中。
在 [資料表/檢視表] 欄位中,選取要分析的資料表或檢視表以建立知識庫。 這個資料表或檢視表應該是範例資料,而不是您執行資料清理或比對的整個來源資料庫。 文字方塊下拉式清單會列出可供選取之資料庫使用的資料表和檢視表。
如果資料來源是 [Excel],則請依照以下方式進行:
按一下 [瀏覽] 並選取您要分析的 Excel 檔案以建立知識庫。 Data Quality Client 電腦上必須安裝 Excel,才能選取 Excel 檔案。 如果 Excel 未安裝在 Data Quality Client 電腦上,將無法使用 [瀏覽] 按鈕,而且這個文字方塊下方會通知您尚未安裝 Excel。
如果 Excel 檔案的第一個資料列包含標頭資料,請選取 [使用第一個資料列做為標頭] 核取方塊。
在 [對應] 資料表中,將您想要執行知識探索的每一個來源資料行對應到知識庫中的定義域,如下所示:
若要建立對應,請先從空資料列的 [來源資料行] 資料行的下拉式清單中選取來源資料行,然後從相同資料列的 [定義域] 資料行的下拉式清單中選取定義域 (如果定義域存在的話)。 如果定義域不存在,請按一下 [建立定義域] 或 [建立複合定義域] 來建立定義域。 如需相關資訊,請參閱 建立定義域規則 或 建立複合定義域。
針對每一個對應重複以上步驟。 若要變更資料表中的資料列數,請按一下 [加入資料行對應],或是選取資料列並按一下 [移除選取的資料行對應]。 如果您在選取擴展的資料列時按一下 [移除選取的資料行對應] ,即使有未擴展的資料列,也會刪除選取的資料列。
注意
只有當 DQS 支援來源資料類型,而且該類型符合 DQS 定義域資料類型時,您才能將來源資料對應至 DQS 定義域,以便執行知識探索。 如需有關支援之資料類型的資訊,請參閱< DQS 定義域支援的 SQL Server 和 SSIS 資料類型>。
按一下 [檢視/選取複合定義域] ,顯示已經定義的複合定義域。 如果沒有已經定義的複合定義域,將無法使用此控制項。
按一下 [預覽資料來源] ,將您在 [資料表/檢視表] 或 [Excel 檔案] 文字方塊中選取之資料來源中的所有資料顯示在快顯清單中。
按 [下一步] ,繼續前往知識探索精靈的 [探索] 頁面。 您也可以選取下列項目:
按一下 [取消] ,結束知識探索活動,不儲存工作並返回 DQS 首頁。
按一下 [關閉] ,返回 DQS 首頁並儲存工作。 系統會針對您封鎖知識庫,而且 [開啟知識庫] 畫面中知識庫資料表的知識庫狀態將會是 [探索 - 對應]。 在按一下 [關閉]之後,若要執行定義域管理活動,您必須按一下 [開啟知識庫] 畫面中的 [知識探索] ,進入 [知識庫管理: 管理定義域詞彙] 畫面,按一下 [完成],然後按一下 [是] 發行知識庫,或按一下 [否] 儲存知識庫工作並結束。
探索階段
按一下 [開始] ,分析資料來源。
注意
將會針對之前在 [對應] 頁面上 [對應] 資料表中輸入的資料行執行探索。 對應至每個資料行的定義域將會以探索所得的知識來擴展。 如果定義域是複合定義域,則知識將會加入至組成此複合定義域的個別定義域。
在執行探索程序時,請檢查針對每一個探索步驟所顯示的完成狀態: [正在前置處理記錄]、 [正在執行定義域規則]和 [正在執行探索]。 每一個階段都將顯示完成百分比和完成狀態。
分析完成後,請確認完成統計資料下方的狀態行指出已順利完成。
注意
在上傳檔案之前離開畫面將會終止檔案上傳程序。
分析完成後,請檢查 [分析工具] 索引標籤中的統計資料,以查看資料的狀態。 如需詳細資訊,請參閱 Data Profiling and Notifications in DQS。
分析完成後, [啟動] 按鈕將變為 [重新啟動] 按鈕。 按一下 [重新啟動] ,再次執行分析程序。 但是,上一次分析的結果尚未儲存,所以按一下 [重新啟動] 將會遺失之前的資料。 若要繼續,請在快顯視窗中按一下 [是] 。 執行分析時請勿離開頁面,否則分析程序將會終止。
按 [下一步] ,繼續前往知識探索精靈的 [管理定義域值] 頁面。 在此頁面上,您可以修改加入至知識庫定義域的知識。 您也可以選取下列項目:
按一下 [取消] ,結束知識探索活動,不儲存工作並返回 DQS 首頁。
按一下 [關閉] ,返回 DQS 首頁並儲存工作。 系統會針對您封鎖知識庫,而且 [開啟知識庫] 畫面中知識庫資料表的知識庫狀態將會是 [探索 - 探索]。 在按一下 [關閉]之後,若要執行定義域管理活動,您必須按一下 [開啟知識庫] 畫面中的 [知識探索] ,進入 [知識庫管理: 管理定義域詞彙] 畫面,按一下 [完成],然後按一下 [是] 發行知識庫,或按一下 [否] 儲存知識庫工作並結束。
按一下以返回 [探索] 頁面。
管理資料探索結果階段
在您執行知識庫探索活動之後,您可以變更值,如下所示:
將定義域值加入至值清單中,或是從清單中選取值並加以刪除。
變更 DQS 探索程序所指定的定義域值狀態,將它變更為正確、錯誤或無效
針對錯誤或無效的值輸入取代值
將兩個或多個值設為同義字以及變更探索程序所設定的前置值,結果是前置值將會取代同義字值,但前提是您在建立定義域時已設定 [使用前置值] 屬性。
從 Excel 檔案匯入定義域值。
[值] 資料表會顯示針對單一定義域加入至知識庫的知識。 您會在左邊窗格中的定義域清單中選取該定義域。 欄位中的資料行如下:
[值] 資料行會顯示探索程序從資料取樣的欄位加入至選定定義域的所有值。 預計錯誤的任何值都將會顯示為預計正確之值的同義字。
[頻率] 資料行會顯示定義域所對應的範例資料庫欄位中,此值的執行個體數目。 若為複合定義域,只會顯示頻率大於或等於 20 的值。 頻率資料可用,因為知識探索程序仍然連接到範例資料庫。 在 [定義域管理] 畫面的 [定義域值] 索引標籤上,定義域資料表中無法使用頻率資料,因為定義域管理程序未連接到範例資料庫。
[類型] 資料行會顯示此值的狀態,這是由探索程序所決定。 綠色核取符號表示此值正確或已更正,紅色十字符號表示此值錯誤,含驚嘆號的橘色三角形表示此值無效。 無效的值不符合定義域的資料需求。 錯誤的值可以是有效的值,但是因為資料原因所以不是正確的值。
[更正為] 資料行會顯示標示為錯誤或無效的原始值將會變更成為的正確值。 DQS 可將正確的值提議為探索程序的結果。
依照以下方式管理探索結果:
在左邊的 [定義域清單] 窗格中,選取要設定定義域值的定義域。 您可以執行以下動作來修改顯示的值。
選取 [篩選] 清單中的狀態,在資料表中顯示您想要的結果 (根據結果的狀態)。
在 [尋找] 文字方塊中輸入要搜尋的一個或多個字,以 [尋找] 您想要檢查或修改的資料。 如此一來,當任何顯示的值中出現這些字時,就會反白顯示這些字。
按一下 [只顯示新值] ,資料表中顯示的值將僅限為目前工作階段已探索的值,而不是之前工作階段已探索的值。
按一下 [全部展開] 按鈕,在目前狀態摺疊時顯示任何同義字群組中的所有值,或是按一下 [全部摺疊] 按鈕,在目前狀態展開時隱藏任何同義字群組中前置值以外的所有值。
按一下 [顯示\隱藏定義域值變更記錄面板] 按鈕,在值資料表的底部顯示預覽快顯視窗,該資料表會顯示定義域值集合的最近變更。
將 [篩選] 設定為 [錯誤],尋找 Data Quality Services 已提議的任何更正。 確認此值事實上有錯誤,而且 [更正為] 資料行中的值是適當的。
將 [篩選] 設定為 [所有值] ,並確認值的狀態是適當的。 若要變更值的狀態,請選取值,然後按一下 [將選取的定義域值設為更正] \(核取) 按鈕、[將選取的定義域值設為錯誤] \(十字符號) 按鈕或是 [將選取的定義域值設為無效] \(三角形) 按鈕。
若要變更值的狀態,請依照以下方式繼續進行:
將選取的定義域值設為更正:若要將值的狀態從錯誤或無效變更為更正,請選取值,然後從圖示列的向下箭號或是從 [類型] 下拉式清單按一下 [將選取的定義域值設為更正] \(核取)。 如果錯誤或無效值與更正值群組在一起,請在作業之後刪除該值。
將選取的定義域值設為錯誤:若要將值的狀態從更正或無效變更為錯誤,請選取值,然後從圖示列的向下箭號或是從 [類型] 下拉式清單按一下 [將選取的定義域值設為錯誤] \(十字符號) 圖示。 您可以在 [更正為] 資料行中輸入更正,或是將它保留空白。
將選取的定義域值設為無效:若要將值的狀態從更正或錯誤變更為無效,請選取值,然後從圖示列的向下箭號或是從 [類型] 下拉式清單按一下 [將選取的定義域值設為無效] \(三角形) 圖示。 您可以在 [更正為] 資料行中輸入更正,或是將它保留空白。
更正為:將值設定為錯誤或無效之後,請在 [更正為] 資料行中輸入新的值。 DQS 將會為取代值新增資料列、將它指定為正確的值,然後將兩個值群組在一起。 新的值將會顯示為前置值,前置值會以粗體顯示,而錯誤或無效的值則縮排。
若要將值指定為一組同義字,請選取多個正確值,然後依照以下方式繼續進行:
將選取的定義域值設為同義字:按一下此選項,將選取的值設定為同義字。 DQS 會將其中一個值指定為將用來取代其他值的前置值。
注意
如果您選取群組中的兩個或多個值以及群組外的另一個值,然後將這些值設定為同義字,您會得到不正確的錯誤訊息。 在關閉錯誤訊息快顯視窗之後,這些值將會正確設定為同義字。
中斷選取的同義字之間的關聯:按一下此選項可復原同義字的指定。
將選取的定義域值設為群組的前置值:變更群組的前置值,方法是在群組中選取未指定為前置值的某個值,然後按一下 [將選取的定義域值設為群組的前置值] 按鈕。
拼字檢查:如果您已經在 [定義域屬性] 頁面中啟用拼字檢查,請尋找具有波浪式紅色底線的任何值,表示拼字檢查有建議更正。 以滑鼠右鍵按一下有底線的值,然後選取適用的更正。 值類型會變成 (或維持) 錯誤,而且更正將會加入至 [更正為] 資料行。 按一下向下箭號,以查看其他建議的更正。 手動輸入更正,將其加入至拼字檢查字典,而且能夠將其選取為更正。 如需相關資訊,請參閱 使用 DQS 拼字檢查 及 設置域屬性。
注意
若要使用拼字檢查,您可以在 [定義域屬性] 頁面中啟用此功能,或者如果 [定義域屬性] 頁面中已停用此功能,您可以按一下 [管理資料探索結果] 頁面上的 [啟用/停用拼字檢查] 圖示,在此頁面上啟用此功能。
加入新的定義域值:若要將新的值加入至定義域,請按一下 [加入新的定義域值] 按鈕,在資料表結尾加入資料列。 在您輸入值之後,此資料列將會依字母順序重新定位。
從 Excel 匯入定義域值:若要從 Excel 試算表加入新的值,請按一下 [匯入值] 圖示的向下箭號,然後選取 [從 Excel 匯入定義域值]。 輸入檔案名稱,並在適當情況下選取 [使用第一個資料列做為標頭] ,然後按一下 [確定]。 如需詳細資訊,請參閱 將 Excel 檔案中的值匯入定義域中。
匯入專案值:若要從資料品質專案加入新的值,請按一下 [匯入值] 圖示的向下箭號,然後選取 [匯入專案值]。 輸入檔案名稱,並在適當情況下選取 [使用第一個資料列做為標頭] ,然後按一下 [確定]。 選取要匯入的值來自於哪一個專案,然後按一下 [確定]。 隨即顯示匯入的值。 按一下 [完成] 。 如需詳細資訊,請參閱<將專案值匯入定義域>。
刪除選取的定義域值:若要從定義域中移除一個或多個現有的值,請選取值,然後按一下 [刪除選取的定義域值] 按鈕。 DQS_NULL 的項目無法刪除,所以如果您選擇多個要刪除的值,而且 DQS_NULL 的項目是其中一個,此作業將會失敗。
按一下 [完成] ,完成知識探索活動。 如果您尚未檢閱每一個定義域,將會顯示快顯視窗。 按一下 [是] 繼續檢閱,或按一下 [否] 繼續進行。 如果您按一下 [否],將會顯示另一個快顯視窗,讓您執行下列動作:
發行:知識庫將會發行給目前使用者或其他人使用。 知識庫不會鎖定,知識庫狀態 (在知識庫資料表中) 將會設為空白,而且定義域管理和知識探索活動可供使用。 您會返回首頁。 若要完成此程序,請按一下快顯視窗中的 [是] 。
否:您的工作將會儲存起來、知識庫會維持鎖定狀態,而且知識庫的狀態將會設定為 [工作中]。 定義域管理和知識探索活動都可供使用。 您會返回首頁。
取消:快顯視窗將會關閉,而且您會留在 [管理定義域值] 頁面。
您也可以按一下以下項目:
[取消] 可結束知識探索活動,不儲存工作並返回 DQS 首頁。
[關閉] 可返回 DQS 首頁並儲存工作。 系統會針對您封鎖知識庫,而且在 [開啟知識庫] 畫面中知識庫資料表的知識庫狀態將會是 [探索 - 值管理]。
按一下 [上一步] ,返回 [探索] 頁面。 在按一下 [關閉]之後,若要執行定義域管理活動,您必須按一下 [開啟知識庫] 畫面中的 [知識探索] ,進入 [知識庫管理: 管理定義域詞彙] 畫面,按一下 [完成],然後按一下 [是] 發行知識庫,或按一下 [否] 儲存知識庫工作並結束。
後續操作:在執行知識探索之後
當您在電腦輔助的知識探索程序中將知識加入至知識庫之後,您可以使用此知識庫來立即清理專案,或者您可以先執行定義域管理,然後再執行清理。 如需資料清理或定義域管理的詳細資訊,請參閱資料清理或管理定義域。
正確值、錯誤值和無效值的意義
[定義域值] 頁面上 [值] 資料表中的每一個值都會被指派 [正確] 、 [錯誤]或 [無效]的 [類型]設定。 值的類型最初是由知識探索活動所產生,之後您可以適當地加以變更。 根據探索和互動式變更的最終類型則是由清理活動產生。 這些設定具有以下意義:
正確: 這個值屬於定義域,而且沒有任何語法錯誤。 例如,"Chicago" 在城市定義域中是正確的。
錯誤: 這個值屬於定義域,但不是正確的值。 例如,"Shicago" (而非 "Chicago") 在城市定義域中是錯誤的。 DQS 如果在探索程序中偵測到某個值有語法錯誤和關聯的更正,則會將此值指定為錯誤。 語法錯誤包括拼字錯誤。
無效: 這個值不屬於定義域,而且沒有更正。 例如,"12345" 值在城市定義域中是無效的。 當某個值未通過定義域規則時,DQS 會將它指定為無效的值。
您可以手動將值的類型變更為其他兩個值的任何一個。 DQS 不會針對手動作業強制執行有效性和錯誤語意。 您可以輸入無效值的更正,而不需變更其狀態。 您可以將某個值指定為無效,即使它已通過定義域規則。 您可以將某個值指定為錯誤,即使探索程序並未指出它有語法錯誤。 您也可以移除錯誤值的更正 (標示為 [正確]),而不需變更其狀態。
當您在 [清理] 活動的 [管理和檢視結果] 頁面中執行互動式資料清理時,無效和錯誤的值都會包含在 [管理和檢視結果] 頁面的 [無效] 索引標籤上。
How to Display the Appropriate Values
您可以依照以下方式修改顯示:
選取[篩選] 下拉式清單中的狀態,在資料表中 [篩選] 您想要的結果 (根據結果的狀態)。
在[尋找] 文字方塊中輸入要搜尋的一個或多個字,以 [尋找] 您想要檢查或修改的資料。 如此一來,當任何顯示的值中出現這些字時,就會反白顯示這些字。
按一下 [只顯示新值] ,資料表中顯示的值將僅限為目前工作階段已探索的值,而不是之前工作階段已探索的值。
按一下 [全部展開] 按鈕,在目前狀態摺疊時顯示任何同義字群組中的所有值。
按一下 [全部摺疊] 按鈕,在目前狀態展開時隱藏任何同義字群組中前置值以外的所有值。
按一下 [顯示\隱藏定義域值變更記錄面板] 按鈕,在值資料表的底部顯示預覽快顯視窗,該資料表會顯示定義域值集合的最近變更。
Profiler Statistics
[分析工具] 索引標籤會提供指示來源資料品質的統計資料。 這些統計資料不會衡量知識庫的品質。 知識探索分析會提供完整性和獨特性的洞察能力。 知識探索分析並不是要衡量精確度。 知識管理分析可幫助您評估資料來源用來建立和增強知識庫內之知識的價值多寡。
[分析工具] 索引標籤會提供探索程序適用的以下統計資料 (依據欄位和定義域):
記錄:已探索資料取樣中的多少筆記錄
總計值:為每一個欄位以及總共找到的總計值數量
新值:上次探索程序之後每一個欄位和所有對應的欄位之總計值為新增的數量,以及其總計值百分比
唯一值:每一個欄位和所有對應的欄位之總計值為唯一的數量,以及其總計值百分比
新的唯一值:上次探索程序之後每一個欄位和所有對應的欄位之唯一值為新增的數量,以及其總計值百分比
在定義域值中有效:每一個欄位和所有對應的欄位之總計值有效的數量,以及其總計值百分比
欄位統計資料包括以下項目:
欄位:欄位在來源資料庫中的名稱
定義域:對應至欄位的定義域名稱
新增:新值的數目以及新的值相較於欄位中現有值的百分比
唯一:欄位中唯一記錄的數目以及其總計百分比
在定義域中有效:有效的定義域值數目以及其總計百分比
完整性:針對比對工作所對應之每一個來源欄位的完整性
知識探索分析會提供完整性的洞察能力。 如果分析告訴您某個欄位相對不完整,您可能會想要從資料品質專案的知識庫中將其移除。 分析可能不會針對複合定義域提供可靠的完整性統計資料。 如果您需要完整性統計資料,請使用單一定義域,而非複合定義域。 如果您想要使用複合定義域,您可能會想要使用分析用的單一定義域來建立一個知識庫以判斷完整性,並使用清理程序所用的複合定義域來建立另一個定義域。 例如,分析可能會針對使用複合定義域的位址記錄顯示 95% 完整性,但是其中一個資料行可能會有更高層級的不完整性,例如郵遞區號 (zip) 資料行。 在此範例中,您可能會想要使用單一定義域衡量郵遞區號資料行的完整性。 分析可能會針對複合定義域提供可靠的精確度統計資料,因為您可以一起衡量多個資料行的精確度。 此資料的值位於複合彙總中,所以您可能會想要使用複合定義域衡量精確度。
統計資料會顯示在以下階段的 [分析工具] 索引標籤中:
在 正在前置處理記錄 階段中,DQS 會載入資料並為資料編制索引。 這是依照逐一記錄或逐一批次的方式進行,所以記錄可以顯示進度。 在這個步驟的執行期間,可以產生大多數的分析資料,但是 [在定義域中有效] 值除外。
在 正在執行定義域規則 階段中, [在定義域中有效] 資料行會擴展為定義域規則,這些規則全都會當做每一個定義域值之不可部分完成的單位來執行。
在 [執行探索] 階段中,[分析工具] 索引標籤中不會更新任何新資料。在精靈的下一個步驟管理定義域值階段中,可以看到任何發生的語法錯誤。
如果是知識探索活動,以下情況會產生通知:
欄位中沒有任何新的值,建議您從對應中將它消除。
欄位中有幾個新的值,您可能會想要從對應中將它消除。
欄位是空的,建議您從對應中將它消除。
欄位完整性分數非常低,您可能會想要從對應中將它消除。
欄位中的所有值都無效;您應該驗證對應以及定義域規則與欄位內容的相關性。
欄位中有效值的數目不多;您應該驗證對應以及定義域規則與欄位內容的相關性。
如需有關分析的詳細資訊,請參閱< DQS 中的資料分析與通知>。