文章詳情頁
SQL Server 2000的數(shù)據(jù)轉(zhuǎn)換服務(wù)(上)
瀏覽:125日期:2023-10-28 16:39:36
Microsoft SQL Server 2000的數(shù)據(jù)轉(zhuǎn)換服務(wù)(上) DTS簡介 大多數(shù)組織都使用多種格式和多個位置來存儲數(shù)據(jù)。為了支持決策、 改善系統(tǒng)性能或?qū)ΜF(xiàn)有系統(tǒng)進行升級,經(jīng)常必須將數(shù)據(jù)從一個數(shù)據(jù)存儲位 置移動到另一個存儲位置。 Microsoft SQL Server 2000 數(shù)據(jù)轉(zhuǎn)換服務(wù)(DTS )提供一組工具,可以從不同的源將數(shù)據(jù)抽取、轉(zhuǎn)換和合并到一個或多個目標位置。借助于DTS工具,您可以創(chuàng)建適合于您的組織特定需要的自定義移動解決方案,如以下方案所示: 您已在較早版本的 SQL Server 或另一平臺上部署了一個數(shù)據(jù)庫應(yīng)用 程序,如 Microsoft Access.該應(yīng)用程序的新版本要求 SQL Server 2000, 因此需要您更改數(shù)據(jù)庫架構(gòu)并轉(zhuǎn)換某些數(shù)據(jù)類型。 要復(fù)制和轉(zhuǎn)換數(shù)據(jù),您可以生成一個 DTS解決方案,該方案可把數(shù)據(jù) 庫對象從原數(shù)據(jù)源復(fù)制到 SQL Server 2000數(shù)據(jù)庫中,同時重新映射列并 更改數(shù)據(jù)類型。可以使用 DTS工具運行此解決方案,或者將該解決方案嵌 入您的應(yīng)用程序。 您必須將幾個主要的 Microsoft Excel電子表格合并到 SQL Server 數(shù)據(jù)庫。幾個部門會在月末創(chuàng)建這些電子表格,但是并沒有設(shè)定完成所有 電子表格的時間。 要合并電子表格,可以生成一個 DTS解決方案,在消息傳送到消息隊 列時運行該解決方案。此消息觸發(fā) DTS從電子表格抽取數(shù)據(jù),執(zhí)行所有定 義的轉(zhuǎn)換然后將數(shù)據(jù)加載到 SQL Server 數(shù)據(jù)庫中。 您的數(shù)據(jù)倉庫包含有關(guān)業(yè)務(wù)操作的歷史數(shù)據(jù),您使用 Microsoft SQL Server 2000 分析服務(wù)來匯總數(shù)據(jù)。而該數(shù)據(jù)倉庫每晚需要從聯(lián)機事務(wù)處 理(OLTP)數(shù)據(jù)庫進行更新。OLTP系統(tǒng)每天 24 小時都在運行,所以性能 至關(guān)重要。 您可以生成一個 DTS解決方案,該方案使用文件傳輸協(xié)議(FTP )將 數(shù)據(jù)文件移動到本地驅(qū)動器,將數(shù)據(jù)加載到一個實際的表中,然后使用分 析服務(wù)對數(shù)據(jù)進行合計。可以安排每晚運行 DTS解決方案,還可以使用新 的 DTS記錄選項來跟蹤該進程的進行時間,從而可以分析不同時間段內(nèi)的 性能。 什么是 DTS? DTS是一組工具,用于一個或多個數(shù)據(jù)源(如Microsoft SQL Server、 Microsoft Excel 或 Microsoft Access )間導(dǎo)入、導(dǎo)出和轉(zhuǎn)換各種數(shù)據(jù)。 通過 OLE DB (一種數(shù)據(jù)訪問的開放式標準)提供連接,通過用于 ODBC 的 OLE DB 提供程序來支持 ODBC (開放式數(shù)據(jù)庫連接)數(shù)據(jù)源。 可以將 DTS解決方案創(chuàng)建為一個或多個軟件包。每個軟件包可包含一 組已安排好的任務(wù),它們定義要執(zhí)行的工作、對數(shù)據(jù)和對象的轉(zhuǎn)換、定義 任務(wù)執(zhí)行的工作流約束條件以及數(shù)據(jù)源和目標間的連接方式。DTS 軟件包 還提供一些服務(wù),如記錄軟件包執(zhí)行詳細情況、控制事務(wù)和處理全局變量。 以下工具可用于創(chuàng)建和執(zhí)行 DTS 軟件包: ●導(dǎo)入/導(dǎo)出向?qū)в糜谏上鄬唵蔚?DTS 軟件包,并支持數(shù)據(jù)移植和簡 單轉(zhuǎn)換。 ●DTS設(shè)計器以圖形方式來實現(xiàn) DTS 對象模型,可用于創(chuàng)建具有一系列功 能的 DTS 軟件包。 ●DTSRun 是用于執(zhí)行現(xiàn)有 DTS 軟件包的命令提示實用程序。 ●DTSRunUI 是 DTSRun 的圖形界面,可以傳遞全局變量以及生成命令行。 ●SQLAgent 不是 DTS 應(yīng)用程序,DTS 將其用于安排軟件包的執(zhí)行。 使用 DTS對象模型還可以用編程方式創(chuàng)建和運行軟件包,生成自定義 任務(wù)和自定義轉(zhuǎn)換。 DTS 的新功能 Microsoft SQL Server 2000 中加入了多種 DTS 增強功能和新功能: ●新的 DTS 任務(wù)包括 FTP 任務(wù)、執(zhí)行軟件包任務(wù)、動態(tài)屬性任務(wù)和信息 隊列任務(wù)。 ●增強的記錄功能可以保存每個軟件包的執(zhí)行信息,從而為您保留一個完 整的執(zhí)行歷史記錄,并可以查看每一任務(wù)的每個進程的信息。可以生成 異常情況文件,文件中包含因錯誤而無法處理的數(shù)據(jù)行。 ●您可以將 DTS 軟件包另存為 Microsoft Visual Basic? 文件。 ●新的多階段數(shù)據(jù)泵允許高級用戶自定義不同階段的數(shù)據(jù)轉(zhuǎn)換操作。還可 以將全局變量用作查詢的輸入?yún)?shù)。 ●您可以在 DTS 轉(zhuǎn)換任務(wù)和執(zhí)行 SQL 任務(wù)時使用參數(shù)化源查詢。 ●可以使用執(zhí)行軟件包任務(wù)將全局變量的值從父軟件包動態(tài)分配到子軟件 包。 使用 DTS 設(shè)計器 DTS 設(shè)計器以圖形方式實現(xiàn) DTS對象模型,使您可以用圖形方式創(chuàng)建 DTS 軟件包。您可以使用 DTS設(shè)計器執(zhí)行以下任務(wù): ●創(chuàng)建包含一個或多個步驟的的簡單軟件包。 ●創(chuàng)建包括復(fù)雜工作流的軟件包,這些工作流包括多個步驟,而這些步驟 使用條件邏輯、事件驅(qū)動代碼或與數(shù)據(jù)源的多種連接。 ●編輯現(xiàn)有軟件包。 DTS 設(shè)計器界面包括一個工作區(qū)(用于生成軟件包)、幾個工具欄 (其中包含可拖動到設(shè)計工作表上的軟件包元素)以及幾個菜單(其中包 含工作流和軟件包管理命令)。 圖 1. DTS 設(shè)計器界面 通過將連接和任務(wù)拖動到設(shè)計工作表,然后指定工作流的執(zhí)行順序, 可以方便地使用 DTS設(shè)計器來生成功能強大的 DTS軟件包。以下各部分將 對任務(wù)、工作流、連接和轉(zhuǎn)換進行定義,并闡釋使用 DTS設(shè)計器實施 DTS 解決方案的方便性。 任務(wù):定義軟件包中的步驟 一個 DTS軟件包通常包括一個或多個任務(wù)。每個任務(wù)定義一個在軟件 包執(zhí)行期間可能要執(zhí)行的工作項。可以使用這些任務(wù)進行以下操作: ● 轉(zhuǎn)換數(shù)據(jù) 轉(zhuǎn)換數(shù)據(jù)任務(wù) 用于在源和目標間移動數(shù)據(jù),可以選擇對數(shù)據(jù)應(yīng)用列一級的轉(zhuǎn)換。 數(shù)據(jù)驅(qū)動的查詢?nèi)蝿?wù) 用于對數(shù)據(jù)執(zhí)行靈活的基于 SQL 事務(wù)的操作,包括存儲過程和 INSERT、UPDATE 或 DELETE 語句。 ;;并行數(shù)據(jù)泵任務(wù)1 只可按編程方式使用,并行數(shù)據(jù)泵任務(wù)執(zhí)行的功能與轉(zhuǎn)換數(shù)據(jù)和數(shù)據(jù)驅(qū)動的查詢?nèi)蝿?wù)相同,但它支持 OLE DB 2.5 或更高版本所定義的分層次的行集合。 ● 復(fù)制和管理數(shù)據(jù) 批量插入任務(wù) 用于快速將大量數(shù)據(jù)加載到 SQL Server 表或視圖中。 執(zhí)行 SQL 任務(wù) 用于在軟件包執(zhí)行期間運行 SQL 語句。執(zhí)行 SQL 任務(wù)還可以保存作為查詢結(jié)果的數(shù)據(jù)。 復(fù)制 SQL Server 對象任務(wù) 用于將 SQL Server 對象從一個 SQL Server 或其實例復(fù)制到另一個 SOL Server 或?qū)嵗?梢詮?fù)制對象(如:數(shù)據(jù)和表)以及對象(如:視圖和存儲過程)的定義。 傳輸數(shù)據(jù)庫任務(wù)1 用于將 SQL Server 數(shù)據(jù)庫從 SQL Server 7.0 版本或 SQL Server 2000 的一個實例移動或復(fù)制到 SQL Server 2000 的一個實例中。 傳輸錯誤消息任務(wù)1 用于將針對用戶的錯誤消息(通過 sp_addmessage 系統(tǒng)存儲過程創(chuàng)建)從 SQL Server 7.0 或 SQL Server 2000 的一個實例復(fù)制到 SQL Server 2000 的一個實例中。 傳輸?shù)卿浫蝿?wù) 1 用于將登錄信息從 SQL Server 7.0 或 SQL Server 2000 的一個實例復(fù)制到 SQL Server 2000 的一個實例中。 傳輸作業(yè)任務(wù)1 用于將作業(yè)從 SQL Server 7.0 或 SQL Server 2000 的一個實例復(fù)制到 SQL Server 2000 的一個實例中。 傳輸主存儲過程任務(wù) 1 用于將存儲過程從 SQL Server 7.0 或 SQL Server 2000 的一個實例的主數(shù)據(jù)庫復(fù)制到 SQL Server 2000 的一個實例的主數(shù)據(jù)庫。 ● 將任務(wù)作為軟件包中的作業(yè)運行 ActiveX 腳本任務(wù) 用于編寫代碼以執(zhí)行在其它 DTS 任務(wù)中無法執(zhí)行的功能。 動態(tài)屬性任務(wù)1 用于在軟件包運行時從 DTS 軟件包以外的源檢索值,并將這些值分配給選定的軟件包屬性。 執(zhí)行軟件包任務(wù)1 用于運行軟件包內(nèi)其它的 DTS 軟件包。 執(zhí)行進程任務(wù) 用于運行可執(zhí)行程序或批處理文件。 文件傳輸協(xié)議 (FTP) 任務(wù)1 用于從遠程服務(wù)器或 Internet 下載數(shù)據(jù)文件。 消息隊列任務(wù)1 用于從 Microsoft 消息隊列發(fā)送和接收消息。;;發(fā)送郵件任務(wù) 用于發(fā)送電子郵件消息。 分析服務(wù)處理任務(wù)2 用于對 SQL Server 2000 分析服務(wù)中定義的一個或多個對象執(zhí)行處理。 數(shù)據(jù)挖掘任務(wù)1,2 用于從 SQL Server 2000 分析服務(wù)中定義的數(shù)據(jù)挖掘模式對象中創(chuàng)建謂詞查詢或輸出表。 1 SQL Server 2000 中的新功能。 2 只在安裝了 SQL Server 2000 分析服務(wù)的前提下可用。 摘自http://www.microsoft.com/china/msdn/?MSCOMTB=ICP_MSDN
排行榜
