使用 Microsoft 登入
登入或建立帳戶。
您好:
選取其他帳戶。
您有多個帳戶
選擇您要用來登入的帳戶。

Microsoft 發佈 Microsoft SQL Server 2012 修正成一個可下載的檔案。 因為修正程式是累加的,所以每個新發行版本本都包含舊版 SQL Server 2012 修正版本中包含的所有修復程式及所有安全性修正程式。

徵狀

當您在 SQL Server 2012 資料品質服務(DQS)中執行探索活動或清理活動時,DQS_PROJECTS 資料庫的增長速度可能會很快。 DQS_PROJECT 資料庫中的暫態 X_ 資料表特別是快速的。 特別是,您可能會在探索活動中遇到下列問題:

  • DQS_PROJECTS 資料檔(MDF)大小可能大約是來源資料大小的30倍。 發佈知識庫時會刪除此暫時性的資料。 已發佈的知識庫會移至 DQS_MAIN 資料檔(MDF),而且可能大約是來源資料大小的5倍。

  • DQS_PROJECTS 交易處理記錄檔(LDF)的大小會經常增加。

特別是,您可能會在清理活動中遇到下列問題:

  • DQS_PROJECTS 資料檔(MDF)大小可能大約是來源資料大小的40倍。

  • DQS_PROJECTS 事務日誌(LDF)大小可能大約60乘以來源資料大小的100倍。

原因

這個問題可能是由下列一或多個原因所導致:

  • 空白列和欄值會佔用瞬態資料表中的空間。 在每個架構中具有名稱 X_INDEX_DATA_SOURCE_TABLE 之資料表中的空白列和欄,大部分的空間都是由 BigInt 欄所消耗。

  • 儲存在 X_INDEX_DATA_SOURCE_TABLE 內部資料表中的暫態資料,不會在專案完成或知識庫發佈時立即發行。

解決方案

累積更新資訊

SQL Server 2012

此問題的修正程式是在 SQL Server 2012 Service Pack RTM 的累積更新2中第一次發行。如需此累積更新套件的詳細資訊,請按一下下列文章編號,以查看 Microsoft 知識庫中的文章:

2703275 SQL Server 2012 的累積更新套件2注意: 因為組建是累加的,所以每個新的修正程式版本都包含先前 SQL Server 2012 修正版本中所包含的所有修復程式及所有安全性修正程式。 我們建議您考慮套用包含此熱修復程式的最新修正版本。 如需詳細資訊,請按一下下面的文章編號,檢視「Microsoft 知識庫」中的文章:

2692828 在發行 SQL Server 2012 之後發行的 SQL Server 2012 組建 Microsoft SQL Server 2012 修復程式是針對特定的 SQL Server service pack 建立的。 您必須將 SQL Server 2012 Service Pack RTM 修補程式套用至 SQL Server 2012 Service Pack RTM 的安裝。 根據預設,SQL Server service pack 中提供的任何熱修復程式都包含在下一個 SQL Server service pack 中。

狀態

Microsoft 已確認本篇文章<適用於>一節所列之 Microsoft 產品確實有上述問題。

因應措施

若要解決此問題,請在 DQS 中刪除不必要的資料項目目和知識庫,以協助最小化專案所使用的內部資料表的覆蓋範圍。套用此修正程式後,DQS_PROJECT 資料庫大小就不會自動減少。 如需如何縮減資料庫大小的詳細資訊,請移至下列 Microsoft 網站:

如何收縮資料庫注意: 只安裝此熱修復程式,並不會修正過去所發生的資料庫增長問題,而且只有在將來建立的新專案和活動,以及未來的專案和活動很有説明。若要手動減少 DQS 資料庫的大小,請查看不再使用的知識庫或已完成的資料品質專案。 您可以使用 [資料品質] 用戶端,然後按一下 [開啟知識庫 ] 或 [ 開啟資料品質專案],以取得每個知識庫或每個專案的清單。 以滑鼠右鍵按一下知識庫名稱或專案名稱,然後按一下 [刪除]。您可以執行下列 Transact-sql 腳本來協助您估計每個知識庫的大小,以及每個位於 DQS_MAIN 的專案,以及 DQS_PROJECTS 資料庫,以便更清楚地計量每個使用中的磁碟空間。

-- DQSSizes.sql-- Version 1 - Nov 7, 2011 -JH-- Loops over each table in DQS_MAIN and DQS_PROJECTS to enumerate rows counts + index page counts to estimate size-- Reports by KB, then reports a drill in by Table within each KB-- Count Rows per objectUSE DQS_MAINGOCREATE TABLE ##DQSRowCounts (ObjId BIGINT, DBName SYSNAME, SchemaName SYSNAME, TableName SYSNAME, RowCounts BIGINT);EXEC sp_msforeachtable 'INSERT INTO ##DQSRowCounts SELECT OBJECT_ID(''?''), ''DQS_MAIN'', OBJECT_SCHEMA_NAME(OBJECT_ID(''?'')), OBJECT_NAME(OBJECT_ID(''?'')), COUNT(*) FROM ? WITH (NOLOCK)';GOUSE DQS_PROJECTSGOEXEC sp_msforeachtable 'INSERT INTO ##DQSRowCounts SELECT OBJECT_ID(''?''), ''DQS_PROJECTS'', OBJECT_SCHEMA_NAME(OBJECT_ID(''?'')), OBJECT_NAME(OBJECT_ID(''?'')), COUNT(*) FROM ? WITH (NOLOCK)';-- count pages per object CREATE TABLE ##DQSsizes(DbId INT, objid BIGINT, PageCount INT)INSERT INTO ##DQSsizes SELECT DB_ID('DQS_MAIN'), object_id, SUM(PS.page_count)FROM sys.dm_db_index_physical_stats (DB_ID('DQS_MAIN'),NULL, NULL, NULL, NULL) PSGROUP BY object_idINSERT INTO ##DQSsizes SELECT DB_ID('DQS_PROJECTS'), object_id, SUM(PS.page_count)FROM sys.dm_db_index_physical_stats (DB_ID('DQS_PROJECTS'),NULL, NULL, NULL, NULL) PSGROUP BY object_idGO-- Rows and Size per KBSELECT RC.DBName, RC.SchemaName, KB.Name AS KBProject, SUM(RC.RowCounts) AS TotalRowsAcrossAllTables, SUM(S.PageCount)*8 AS EstimatedKBSizeinKiloBytes,KB.ORIGIN_KNOWLEDGEBASE, KB2.Name AS OriginKBName, KB.CREATED_BY, KB.CREATE_DATEFROM ##DQSsizes SJOIN ##DQSRowCounts RC ON S.DbId=DB_ID(RC.DBName) AND S.objid=RC.ObjIdLEFT OUTER JOIN DQS_MAIN.dbo.A_KNOWLEDGEBASE KB WITH (NOLOCK)ON RC.SchemaName  =  ( CASEWHEN (RC.SchemaName LIKE 'KnowledgeBase%') THEN 'KnowledgeBase'+CAST(KB.ID AS NVARCHAR)WHEN (RC.SchemaName LIKE 'DQProject%') THEN 'DQProject'+CAST(KB.ID AS NVARCHAR)WHEN (RC.SchemaName LIKE 'KnowledgeManagement%') THEN 'KnowledgeManagement'+CAST(KB.ID AS NVARCHAR)  END)LEFT OUTER JOIN DQS_MAIN.dbo.A_KNOWLEDGEBASE KB2 WITH (NOLOCK)ON KB.ORIGIN_KNOWLEDGEBASE=KB2.IDGROUP BY DBName, SchemaName, KB.Name, KB.ORIGIN_KNOWLEDGEBASE, KB2.Name, KB.CREATED_BY, KB.CREATE_DATEORDER BY DBName, SchemaName, KB.NameGO-- Rows and Size per Table per KBSELECT RC.DBName, RC.SchemaName, KB.Name AS KBProject, RC.TableName, RC.RowCounts, S.PageCount*8 AS EstKiloByteSizeFROM ##DQSsizes SLEFT OUTER JOIN  ##DQSRowCounts RC ON S.DbId=DB_ID(RC.DBName) AND S.objid=RC.ObjIdLEFT OUTER JOIN DQS_MAIN.dbo.A_KNOWLEDGEBASE KB WITH (NOLOCK)ON RC.SchemaName  =  ( CASEWHEN (RC.SchemaName LIKE 'KnowledgeBase%') THEN 'KnowledgeBase'+CAST(KB.ID AS NVARCHAR)WHEN (RC.SchemaName LIKE 'DQProject%') THEN 'DQProject'+CAST(KB.ID AS NVARCHAR)WHEN (RC.SchemaName LIKE 'KnowledgeManagement%') THEN 'KnowledgeManagement'+CAST(KB.ID AS NVARCHAR)  END)ORDER BY DBName, SchemaName, KBProject, TableNameGODROP TABLE ##DQSsizesDROP TABLE ##DQSRowCounts

其他相關資訊

安裝此熱修復程式後,當 DQS 在每個專案的架構中建立內部表格 X_INDEX_DATA_SOURCE_TABLE 時,會在 BigInt 欄上使用稀疏提示,以將空白列和欄所使用的空間最小化,以將保留這些物件所需的磁碟空間降至最低。 此熱修復程式可讓 DQS 釋放暫時性 X_INDEX_DATA_SOURCE_TABLE 物件。 因此,可能會重複使用空格,或者在發佈知識庫之後或完成資料品質專案之後,才能減少資料庫大小。 因此,當您按一下專案結尾的 [完成]按鈕時,系統會協助您釋放活動所消耗的磁碟空間。

需要更多協助嗎?

想要其他選項嗎?

探索訂閱權益、瀏覽訓練課程、瞭解如何保護您的裝置等等。

社群可協助您詢問並回答問題、提供意見反應,以及聆聽來自具有豐富知識的專家意見。

這項資訊有幫助嗎?

您對語言品質的滿意度如何?
以下何者是您會在意的事項?
按下 [提交] 後,您的意見反應將用來改善 Microsoft 產品與服務。 您的 IT 管理員將能夠收集這些資料。 隱私權聲明。

感謝您的意見反應!

×