IBM DB2

IBM DB2企業伺服器版本，是美國IBM公司發展的一套關係型資料庫管理系統。它主要的執行環境為UNIX、Z/OS，以及Windows伺服器版本。DB2也提供效能強大的各稱IBM InfoSphere Warehouse版本。和DB2同級的還有另外一個關聯式資料庫管理系統：，它在2001年被IBM收購。歷史.擁有悠久的歷史並且被很多人認為是最早使用SQL的資料庫產品。這個名字最早被用於資料庫管理系統的--作業系統中，並且也有可用於--和--的版本。DB2 LUW(Linux, Unix, Windows)的一個較早的程式碼版本是OS/2一個擴充套件版本元件Database Manager的一部分。IBM多次擴充套件了Database Manager的功能，包括在區域網內允許遠端共享訪問的分配式資料庫功能。最終IBM宣佈在Database Manager的程式碼中存在不可克服的複雜度問題，並且作出了困難的決定，在其多倫多實驗室完全重寫了這個軟體。新版本的Database Manager被稱為DB2，如同其在大型機上的前身一樣，同樣被執行在OS/2和RS/6000平臺上，並分別被稱為DB2/2和DB2/6000。基於不同程式碼的其它版本的DB2也遵循同樣的命名規則被叫做DB2/400，但是兩者共享非常相似的功能並使用相同的SQL最佳化的構架：Starburst Optimizer。多年來DB2跟隨更新並促進了大量的硬體更新，特別是在IBM System z上的比如Parallel Sysplex資料共享特性。事實上，DB2 UDB Version 8 for z/OS現在只能在64位系統上執行而不能執行在較早的處理器上，DB2 for z/OS保留了一些與眾不同的軟體特性為一些尖端客戶服務。雖然最終的軟硬體升級都歸結於IBM大型機，但在一定程度上這種擴充套件也發生在其它的平臺上，IBM的軟體工程師們總和對應的硬體工程師們一起協同合作。在90年代中期，IBM釋出了一組最初應用在AIX上的被稱為DB2 Parallel Edition的實現。此版本透過提供無分享架構而允許軟體更強的可伸縮性。在這個構架中一個單獨的大型資料庫被分割跨接在多個IBM伺服器上並透過高速連結來通訊。這個DB2版本最終被接入所有的Linux、UNIX以及Windows(LUW)平臺並被重新命名為DB2 UDB Enterprise Server Edition(ESE)。IBM現在將這款產品稱為Database Partitioning Feature(DPF)並把它作為DB2旗艦企業級產品的附加功能售賣。2006年年中，IBM宣佈應用在分散式平臺以及z/OS上的DB2 9程式碼名稱為“Viper”。DB2 9 for z/OS 於2007年年初被公佈。IBM宣告這個全新的DB2將是第一款“天然”儲存XML的關係型資料庫。其它的改進包括在分散式平臺上OLTP相關的升級，z/OS 商業智慧效能的提高，並且繼續提高在z/OS和分散式平臺之間的SQL詞表的收斂。基於分散式平臺的DB2 9在2006年7月28日全球售賣，DB2 9 Express的價格自4，874美元／處理器或者165美元／使用者起，包括一年的技術支援。基於z/OS的DB2價格從大約4，450／月起，包括技術支援。版本.DB2有眾多的版本，或者是許可證。為了弱化“版本”的概念增強可選擇性，IBM允許客戶不購買他們不需要的特性。示例版本包括Express、Workgroup和Enterprise版本。基於Linux/UNIX/Windows的最複雜的版本是DB2 Data Warehouse Enterprise Edition，縮寫為DB2 DWE。這個版本的偏重於混合工作負荷和商業智慧的實現。DB2 DWE包括一些商務智慧的特性例如ETL、資料發掘、OLAP加速以及in-line analytics。基於z/OS的DB2有著自己的許可證系列。自Version 8開始，IBM使基於z/OS的DB2和其它平臺的DB2更為接近。。Oracle的CEO Larry Ellison評價DB2 for z/OS為他所尊重和欽佩的一個數據庫競爭對手。2006年1月30日，IBM釋出了一個DB2免費版本DB2 Express-C。這是對最近公佈的Oracle免費版本10g以及微軟免費版本SQL Server的回應。和Oracle以及微軟的免費版本不同，Express-C，它不限制使用者數量以及資料庫的大小。DB2 Express-C 8.2版本和9.1版本對執行伺服器的硬體有所限制，而DB2 Express-C 9.5卻可以在Windows以及Linux的任何大小的機器上執行，只是資料庫引擎最多隻能使用2個CPU核心和2GB的記憶體。2007年IBM提供了一個為期一年的服務支援產品叫做Fixed Term License(FTL)，對每一臺伺服器只要你每年付3000美元，將會得到Express-C一年的電話技術支援。購買FTL後DB2 Express-C引擎可以被允許用於高達4核的CPU以及4GB的記憶體。沒有購買FTL的DB2 Express-C使用者也可以在免費公開論壇上得到IBM技術人員和其他DB2使用者的技術支援和幫助。競爭對手.自80年代中期開始，資料庫管理軟體市場就被Oracle所佔據。2004年5月3日，IBM資料庫開發和銷售的高層人員，Janet Perna，宣佈他們的主要競爭對手為Oracle的高階事務處理，開源軟體產品例如Firebird、PostgreSQL和MySQL，以及針對特殊使用者群的產品如Sybase和MaxDB。在資料庫管理軟體競爭市場，資料庫可以成兆兆位元組的增長，IBM的資料庫分割槽特性。Oracle擁有可用於z/OS的31位RDBMS。非關係型資料庫競爭產品包括IMS、CA-IDMS等。在Transaction Processing Performance Council的網站上，IBM和DB2常常居於TPC-C and TPC-H行業水準的首位。2006年IBM透過釋出一系列整合了DB2 Warehouse Edition和IBM system p (AIX)或者IBM system x (Linux)伺服器的預架構軟硬體系統的產品線來應對在日漸顯現的資料倉庫應用上的競爭。這個"warehouse appliance-like"系統系列產品被命名為IBM Balanced Configuration Unit，縮寫為BCU，此係列產品瞄準以Netezza和DATAllegro為代表的倉庫應用市場，但是它使用了DB2全功能特徵並藉此區別於單一面向資料倉庫的RDBMS。技術資訊.從命令列方式到圖形使用者介面都可以使用DB2。命令列介面要求對產品知識的更多瞭解同樣也更容易編寫指令碼並自動執行。圖形介面是一個多平臺的Java客戶端，它包含了多種針對新手使用者的嚮導服務。DB2同時支援SQL和XQuery。DB2本地執行XML資料儲存，在這裡XML資料以XML格式儲存以更快地透過使用XQuery進行存取。DB2擁有基於.NET CLI, Java, Python, Perl, PHP, Ruby, C++, C, REXX, PL/I, COBOL, RPG, FORTRAN的APIs，以及很多其它的程式語言。DB2同樣支援整合於Eclipse和Visual Studio .NET整合開發環境之中。錯誤處理.DB2計算機程式一個重要的特徵就是錯誤處理。SQL communications area結構曾一度被專門用於DB2程式在每個SQL語句被執行後向應用程式返回錯誤資訊。在SQLCA block中常見錯誤診斷被體現在SQLCODE中。SQL返回程式碼的值對應為：DB2後來的版本增強了SQL語句執行的功能性和複雜性。多個錯誤或警告可以透過執行SQL語句被返回；它可以啟動一個數據庫觸發器和其它SQL語句。替代最初的SQLCA，錯誤資訊現在被連續不斷的GET DIAGNOSTICS語句執行所檢索。察看更多的常見SQLCODEs列表。培訓及認證.目前，IBM提供多種培訓和認證，在其官方網站上都有提供。使用者組.IDUG是International DB2 Users Group的縮寫，這是一個獨立的、非盈利的使用IBM 關係型資料庫管理系統DB2的IT專業人才聯盟。IDUG提供培訓、技術資源、點網路工作的機會、線上資源以及其它專案來使DB2使用者提高他們使用DB2的能力以達到自己的工作目標。