使用SQL Server 2008管理非結(jié)構(gòu)化數(shù)據(jù)
microsoft SQL Server™ 2008提供了一個(gè)靈活的解決方案,使得可以存儲(chǔ)非結(jié)構(gòu)化數(shù)據(jù),并將它與關(guān)系數(shù)據(jù)合并起來建立使用整個(gè)公司范圍內(nèi)的數(shù)據(jù)的綜合的解決方案。
1. 導(dǎo)言
在最近幾年,個(gè)人和公司創(chuàng)建和存儲(chǔ)的數(shù)字?jǐn)?shù)據(jù)的數(shù)量急劇膨脹。過去,企業(yè)使用計(jì)算機(jī)系統(tǒng)和數(shù)據(jù)庫(kù)以結(jié)構(gòu)化格式例如關(guān)系表或固定的格式文檔來存儲(chǔ)它們的大部分商業(yè)數(shù)據(jù),軟件應(yīng)用程序使用這些結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ)來執(zhí)行商業(yè)操作。然而在現(xiàn)今,公司的很大一部分?jǐn)?shù)據(jù)是存儲(chǔ)在使用功能強(qiáng)大的工具例如Microsoft® Office Excel®和Microsoft Office Word所創(chuàng)建的文檔中的,而數(shù)字?jǐn)z影、文檔掃描、視頻產(chǎn)品和音頻格式進(jìn)一步的擴(kuò)大了用于商業(yè)數(shù)據(jù)的非結(jié)構(gòu)化數(shù)據(jù)格式的范圍。此外,在存儲(chǔ)硬件和內(nèi)存上的成本的顯著降低極大的影響了存儲(chǔ)在計(jì)算機(jī)中的數(shù)據(jù)的數(shù)量和類型,并導(dǎo)致產(chǎn)生了新一代的商業(yè)應(yīng)用,這些商業(yè)應(yīng)用合并了傳統(tǒng)的關(guān)系數(shù)據(jù)結(jié)構(gòu)和非結(jié)構(gòu)化數(shù)字內(nèi)容。數(shù)字內(nèi)容的豐富意味著公司現(xiàn)在正在試圖能夠在企業(yè)范圍內(nèi)管理關(guān)系數(shù)據(jù)和非結(jié)構(gòu)化數(shù)據(jù),并需要一個(gè)能夠全面滿足關(guān)系數(shù)據(jù)存儲(chǔ)和非關(guān)系數(shù)據(jù)存儲(chǔ),同時(shí)降低管理和建立使用這些數(shù)據(jù)的應(yīng)用程序的成本的解決方案。
例如,考慮一個(gè)保險(xiǎn)索賠應(yīng)用程序在過去的15年里是怎樣改變的。15年前,這個(gè)應(yīng)用程序一般維護(hù)一列以簡(jiǎn)單的行和列來存儲(chǔ)的保險(xiǎn)索賠記錄。而今天,一個(gè)保險(xiǎn)索賠應(yīng)用程序更趨向于管理一組包括圖片、照片和文檔的索賠記錄。它還可能需要以基于XML的格式來顯示索賠數(shù)據(jù),以此來與其它的系統(tǒng)集成,并且它還可能包括更高級(jí)別的功能像空間可視化、報(bào)表和分析。
SQL Server 2008提供了一些超出傳統(tǒng)的數(shù)據(jù)庫(kù)系統(tǒng)、向能夠存儲(chǔ)、管理和查詢所有類型的數(shù)據(jù)的數(shù)據(jù)平臺(tái)發(fā)展的功能;包括非結(jié)構(gòu)化二進(jìn)制數(shù)據(jù)、XML和空間數(shù)據(jù)。這篇白皮書集中講述了非結(jié)構(gòu)化數(shù)據(jù),并描述了使用SQL Server 2008的存儲(chǔ)、管理和使用非結(jié)構(gòu)化數(shù)據(jù)的選項(xiàng)。
2. 商業(yè)推動(dòng)非結(jié)構(gòu)化數(shù)據(jù)
大多數(shù)公司依賴于存儲(chǔ)在數(shù)據(jù)庫(kù)中的關(guān)鍵業(yè)務(wù)數(shù)據(jù),并在存儲(chǔ)和操縱這些數(shù)據(jù)的數(shù)據(jù)管理系統(tǒng)和應(yīng)用上投入很大。然而,日漸增長(zhǎng)的業(yè)務(wù)產(chǎn)生了大量的數(shù)字圖片、文檔視頻和其它多媒體格式的非關(guān)系和非結(jié)構(gòu)化數(shù)據(jù)——這些新的數(shù)據(jù)格式迅速成為正式的和非正式的商業(yè)處理的一個(gè)關(guān)鍵組成部分,它們與現(xiàn)有的商業(yè)應(yīng)用程序集成在一起,遵守調(diào)整要求,或者簡(jiǎn)單的提供了一個(gè)更加豐富的用戶體驗(yàn)。
例如,在下面這些商業(yè)情景中:
· 一個(gè)保險(xiǎn)公司需要存儲(chǔ)政策文檔和按照要求處理來提取這些文檔。
· 一個(gè)在線的零售商需要存儲(chǔ)用于在一個(gè)電子商城中顯示它的產(chǎn)品的視頻膠片。
· 一個(gè)電話系統(tǒng)需要保存語(yǔ)音信息的音頻流以便他們可以遠(yuǎn)程傳送。
· 一個(gè)廣播臺(tái)需要制作一個(gè)在它的網(wǎng)站上用于下載的并可以搜索的廣播庫(kù)。
· 一個(gè)操作需要存儲(chǔ)文檔的圖片形式的電子拷貝,并能很容易的獲取與一個(gè)單獨(dú)的客戶端或例子相關(guān)的文檔。
· 一個(gè)建筑合伙企業(yè)需要存儲(chǔ)和提取數(shù)字計(jì)劃和其相關(guān)聯(lián)的客戶端數(shù)據(jù)。
· 一個(gè)需要轉(zhuǎn)換和保存大量的現(xiàn)有的文件和分類內(nèi)容的庫(kù),用于在一個(gè)數(shù)字搜索工具中進(jìn)行檢索和使用。
這些是全球商業(yè)中使用的非機(jī)構(gòu)化數(shù)字?jǐn)?shù)據(jù)的一些新的例子;并且隨著創(chuàng)建數(shù)字內(nèi)容變得越來越容易,公司也在尋找新的創(chuàng)新方式來使用這個(gè)數(shù)字內(nèi)容來改進(jìn)或擴(kuò)展它們的商業(yè)能力。
2.1 對(duì)于非結(jié)構(gòu)化數(shù)據(jù)的挑戰(zhàn)
當(dāng)新的非結(jié)構(gòu)化數(shù)據(jù)的類型在不斷增加的同時(shí),數(shù)字內(nèi)容帶來了很多好處和商業(yè)機(jī)遇,但是它同時(shí)還帶來了一些針對(duì)需要合并這些非結(jié)構(gòu)化數(shù)據(jù)源到計(jì)算機(jī)應(yīng)用程序和服務(wù)中去的系統(tǒng)架構(gòu)師、管理員和應(yīng)用程序開發(fā)人員的挑戰(zhàn)。
存儲(chǔ)非結(jié)構(gòu)化數(shù)據(jù)的挑戰(zhàn)
要考慮的第一個(gè)挑戰(zhàn),同時(shí)也可能是最明顯的挑戰(zhàn),就是非結(jié)構(gòu)化數(shù)據(jù)的大量存儲(chǔ)。你值得擁有一個(gè)使你可以靈活地滿足存儲(chǔ)非關(guān)系數(shù)據(jù)、同時(shí)將成本和管理費(fèi)用降低到最小的特定需求的系統(tǒng)。當(dāng)你計(jì)劃存儲(chǔ)非結(jié)構(gòu)化數(shù)據(jù)時(shí)你要考慮的主要問題包括:
· 存儲(chǔ)你的非結(jié)構(gòu)化數(shù)據(jù)的成本,不只是包括硬件成本,還包括管理成本。
· 非結(jié)構(gòu)化數(shù)據(jù)的物理存儲(chǔ)位置,例如文件服務(wù)器和網(wǎng)絡(luò)附加存儲(chǔ)(NAS)設(shè)備。
· 管理持久力和存檔政策。
· 將非結(jié)構(gòu)化數(shù)據(jù)文件和相關(guān)聯(lián)的關(guān)系數(shù)據(jù)集成起來,并維護(hù)結(jié)構(gòu)化數(shù)據(jù)源和非結(jié)構(gòu)化數(shù)據(jù)源間的事務(wù)一致性。
· 將與維護(hù)關(guān)系數(shù)據(jù)和非結(jié)構(gòu)化數(shù)據(jù)相關(guān)的管理費(fèi)用降低到最小。
· 性能和可擴(kuò)展性。.
· 保護(hù)非結(jié)構(gòu)化數(shù)據(jù),并確保相關(guān)的關(guān)系數(shù)據(jù)的一致性。
· 非結(jié)構(gòu)化數(shù)據(jù)的可用性和可恢復(fù)性。
使用非結(jié)構(gòu)化數(shù)據(jù)的挑戰(zhàn)
還有關(guān)于存儲(chǔ)非結(jié)構(gòu)化數(shù)據(jù)的相關(guān)問題,你必須考慮數(shù)據(jù)將怎樣被你公司的應(yīng)用程序使用。一些具有代表性的要考慮的事項(xiàng)包括:
· 在建立使用結(jié)構(gòu)化數(shù)據(jù)和非結(jié)構(gòu)化數(shù)據(jù)的應(yīng)用程序時(shí)遇到的開發(fā)挑戰(zhàn)包括編寫代碼來創(chuàng)建、提取、更新和刪除非結(jié)構(gòu)化數(shù)據(jù),并維護(hù)相關(guān)聯(lián)的關(guān)系數(shù)據(jù)源和非結(jié)構(gòu)化數(shù)據(jù)源間的事務(wù)一致性。
· 索引和搜索非結(jié)構(gòu)化數(shù)據(jù)。
· 顯式提取可用的元數(shù)據(jù)(例如從表格區(qū)域或文件屬性),并將它顯示給用戶。
· 將文檔內(nèi)容轉(zhuǎn)換為可以搜索和查詢的格式(例如,轉(zhuǎn)換音頻文件到文本形式,從而可以被數(shù)據(jù)庫(kù)查詢或純文本引擎檢索到。)
2.2 在SQL Server 2008中的非結(jié)構(gòu)化數(shù)據(jù)的目標(biāo)
非結(jié)構(gòu)化數(shù)據(jù)面臨的相關(guān)挑戰(zhàn)反應(yīng)了那些開始為數(shù)字內(nèi)容建立解決方案的公司所關(guān)注的一些常見情況:
· 管理多個(gè)不同的平臺(tái)來處理關(guān)系數(shù)據(jù)和非關(guān)系數(shù)據(jù),從而導(dǎo)致不必要的復(fù)雜性。
· 這些分散的數(shù)據(jù)存儲(chǔ)使得對(duì)于開發(fā)人員來說增加了復(fù)雜度,并提高了經(jīng)理的部署難度。
· 開發(fā)人員和數(shù)據(jù)庫(kù)管理員缺乏在這些不同的數(shù)據(jù)類型中可以使用的服務(wù)。
SQL Server 2008旨在解決這些問題,通過:
· 降低管理這些不同的數(shù)據(jù)類型的成本。
· 簡(jiǎn)化使用關(guān)系數(shù)據(jù)和非關(guān)系數(shù)據(jù)的應(yīng)用程序的開發(fā)工作。
· 將現(xiàn)在只用于關(guān)系數(shù)據(jù)的功能擴(kuò)展到非關(guān)系數(shù)據(jù)。
3. 在SQL Server 2008中存儲(chǔ)非結(jié)構(gòu)化數(shù)據(jù)
依賴于關(guān)系數(shù)據(jù)和非關(guān)系數(shù)據(jù)的應(yīng)用程序通常使用下面的三個(gè)架構(gòu)中的一個(gè):
· 數(shù)據(jù)庫(kù)中的關(guān)系數(shù)據(jù)以及文件系統(tǒng)和文件服務(wù)器上的非關(guān)系型二進(jìn)制大對(duì)象(BLOB)。
· 數(shù)據(jù)庫(kù)中的關(guān)系數(shù)據(jù)和只用于BLOB的存儲(chǔ)中的非關(guān)系數(shù)據(jù)。
· 數(shù)據(jù)庫(kù)中的關(guān)系數(shù)據(jù)和非關(guān)系數(shù)據(jù)。
每一個(gè)方法都有其優(yōu)劣之處。例如,在文件服務(wù)器或只用于BLOB的存儲(chǔ)中存儲(chǔ)非結(jié)構(gòu)化數(shù)據(jù)會(huì)降低每GB所花費(fèi)的費(fèi)用,但是通常會(huì)增加管理和建立應(yīng)用程序的復(fù)雜性,因?yàn)閼?yīng)用程序不得不維護(hù)包含BLOB數(shù)據(jù)的數(shù)據(jù)庫(kù)和單獨(dú)的系統(tǒng)中的記錄以及這些記錄所關(guān)聯(lián)的對(duì)象間的完整性。另一方面,在數(shù)據(jù)庫(kù)中存儲(chǔ)BLOB數(shù)據(jù)方便地集中了數(shù)據(jù)存儲(chǔ),但是通常帶來了更高的成本并會(huì)導(dǎo)致性能下降。
SQL Server 2008推出了兩個(gè)用于存儲(chǔ)BLOB數(shù)據(jù)的新功能:
· FILESTREAM:是一個(gè)你可以在varbinary字段上設(shè)置的屬性,以便數(shù)據(jù)存儲(chǔ)在文件系統(tǒng)中(因此受益于它的快速流式功能和存儲(chǔ)能力)但是直接在數(shù)據(jù)庫(kù)的上下文中管理和訪問。:
· 遠(yuǎn)程BLOB存儲(chǔ):一個(gè)客戶端應(yīng)用程序編程接口(API),它降低了建立依賴于一個(gè)用于BLOB的外部存儲(chǔ)和一個(gè)用于關(guān)系數(shù)據(jù)的數(shù)據(jù)庫(kù)的應(yīng)用程序的復(fù)雜性。
此外,SQL Server 2008繼續(xù)通過varbinary 數(shù)據(jù)庫(kù)類型支持標(biāo)準(zhǔn)的BLOB字段。
◆3.1 SQL Server BLOB
SQL Server 2005推出了varbinary(max)數(shù)據(jù)類型,它使得你可以在一個(gè)SQL Server字段或變量中存儲(chǔ)最大為2,147,483,647字節(jié)的大型二進(jìn)制數(shù)據(jù)值。當(dāng)使用修訂過的max時(shí),你可以通過設(shè)置large value types out of row表選項(xiàng)來控制數(shù)據(jù)怎樣存儲(chǔ)在物理的表的數(shù)據(jù)頁(yè)面中。當(dāng)這個(gè)選項(xiàng)設(shè)置為ON時(shí),所有的值存儲(chǔ)在單獨(dú)的鏈接頁(yè)面上,而在這個(gè)記錄的數(shù)據(jù)頁(yè)面上會(huì)保存一個(gè)指向這些頁(yè)面的16位的根指針。當(dāng)這個(gè)選項(xiàng)設(shè)置為OFF時(shí),最大為8000字節(jié)的值存儲(chǔ)在這行的數(shù)據(jù)頁(yè)面上,而更大的值存儲(chǔ)在單獨(dú)的鏈接頁(yè)面上。
盡管新的FILESTREAM 和遠(yuǎn)程BLOB能力是設(shè)計(jì)用來提供比標(biāo)準(zhǔn)的varbinaryBLOB字段更好的性能和可管理性,但有一些場(chǎng)景是使用varbinary 字段更適合的(具有代表性的是當(dāng)BLOB平均規(guī)模小于250 KB的時(shí)候。)
◆3.2 FILESTREAM 屬性
在SQL Server 2008中,你可以將FILESTREAM 屬性應(yīng)用到一個(gè)varbinary 字段,然后SQL Server 為這個(gè)字段在本地NTFS文件系統(tǒng)上存儲(chǔ)數(shù)據(jù)。在文件系統(tǒng)上存儲(chǔ)數(shù)據(jù)帶來兩個(gè)重大的優(yōu)勢(shì):
· 性能可匹配文件系統(tǒng)的流性能。
· BLOB 規(guī)模只受文件系統(tǒng)的空間規(guī)模限制。
然而,字段可以像SQL Server中的其它任何BLOB字段一樣來管理,所以管理員可以使用SQL Server的可管理性和安全功能來集成BLOB數(shù)據(jù)管理和關(guān)系數(shù)據(jù)庫(kù)中的其它數(shù)據(jù)——而不需要單獨(dú)管理文件系統(tǒng)數(shù)據(jù)。在SQL Server中將數(shù)據(jù)定義為一個(gè)FILESTREAM字段還確保了在數(shù)據(jù)庫(kù)中的關(guān)系數(shù)據(jù)和存儲(chǔ)在文件系統(tǒng)中的非結(jié)構(gòu)化數(shù)據(jù)在數(shù)據(jù)級(jí)的一致性。FILESTREAM字段的使用和BLOB字段一樣,這意味著維護(hù)操作的完全集成(例如備份和恢復(fù))、和SQL Server安全模型的完全集成、以及純事務(wù)的支持。
應(yīng)用程序開發(fā)人員可以通過兩個(gè)編程模型中的一個(gè)來使用FILESTREAM數(shù)據(jù);他們可以使用Transact-SQL就像對(duì)待標(biāo)準(zhǔn)的BLOB字段一樣的來訪問和操縱數(shù)據(jù),或者他們可以使用Win32流式API和Transact-SQL事務(wù)型語(yǔ)義來確保一致性,這意味著他們可以對(duì)FILESTREAM BLOB使用標(biāo)準(zhǔn)的Win32讀/寫調(diào)用,這和他們與文件系統(tǒng)上的文件交互時(shí)所做的一樣。
在SQL Server 2008中,F(xiàn)ILESTREAM 字段只可以將數(shù)據(jù)存儲(chǔ)在本地磁盤空間,并且FILESTREAM 字段不支持像簡(jiǎn)單加密和以表為值的參數(shù)等功能。此外,你不能在數(shù)據(jù)庫(kù)快照或數(shù)據(jù)庫(kù)鏡像會(huì)話中使用包含了FILESTREAM字段的表,不過支持日志傳送功能。
◆3.3 遠(yuǎn)程BLOB存儲(chǔ)API
盡管FILESTREAM 屬性將文件系統(tǒng)的性能和可擴(kuò)展性與在數(shù)據(jù)庫(kù)中存儲(chǔ)BLOB的可管理性和數(shù)據(jù)一致性結(jié)合起來,但是通常會(huì)出現(xiàn)在像EMC Centera、Fujitsu Nearline、Microsoft windows®這樣的文件服務(wù)器或其它任何只用于BLOB的存儲(chǔ)的系統(tǒng)中存儲(chǔ)BLOB更有效或成本利用率更高的場(chǎng)景。在SQL Server 2008中的遠(yuǎn)程BLOB存儲(chǔ)API通過提供一個(gè)基于提供商的架構(gòu)使得可以更容易的將只用于遠(yuǎn)程BLOB存儲(chǔ)解決方案和你的數(shù)據(jù)庫(kù)中的關(guān)系數(shù)據(jù)集成起來,這個(gè)架構(gòu)使得你的應(yīng)用程序可以使用任何BLOB存儲(chǔ)而不需要特定的BLOB存儲(chǔ)功能或代碼。
在架構(gòu)方面有兩個(gè)關(guān)鍵部分:
· 客戶端庫(kù):它是一個(gè)能夠使得任何提供商和你的BLOB以及關(guān)系數(shù)據(jù)一起使用的組件。客戶端應(yīng)用程序使用客戶端庫(kù)和任何適用的提供商庫(kù)來插入、更新和查詢存儲(chǔ)在BLOB中的數(shù)據(jù)和數(shù)據(jù)庫(kù)中存儲(chǔ)的數(shù)據(jù)。
· 供應(yīng)商庫(kù):它是一個(gè)由BLOB存儲(chǔ)供應(yīng)商提供的具有代表性的組件(盡管它可以定制開發(fā))。供應(yīng)商庫(kù)實(shí)現(xiàn)了一個(gè)常規(guī)接口,提供了一組標(biāo)準(zhǔn)的服務(wù),這些服務(wù)抽象了對(duì)這個(gè)特定的存儲(chǔ)執(zhí)行Create、Fetch、Enumerate、Delete和Garbage Collect操作的細(xì)節(jié)。
.當(dāng)你的數(shù)據(jù)庫(kù)BLOB需要存儲(chǔ)在與數(shù)據(jù)庫(kù)不同的服務(wù)器上并需要和其它系統(tǒng)協(xié)作時(shí),遠(yuǎn)程BLOB存儲(chǔ)API(Remote BLOB Store API)是一個(gè)理想的選擇。它對(duì)BLOB存儲(chǔ)沒有任何限制。任何提供遠(yuǎn)程BLOB存儲(chǔ)提供商的系統(tǒng)或任何可以建立于遠(yuǎn)程BLOB存儲(chǔ)提供商的系統(tǒng)都支持它。因?yàn)榕cBLOB存儲(chǔ)的交互細(xì)節(jié)被提供商庫(kù)抽象出來了,所以你可以改變存儲(chǔ)而不必改動(dòng)應(yīng)用程序,這帶來了很大的好處并且降低了開發(fā)人員和管理員的復(fù)雜度。Microsoft與業(yè)內(nèi)的所有存儲(chǔ)供應(yīng)商合作,以確保提供一個(gè)適當(dāng)?shù)墓?yīng)商庫(kù)用于遠(yuǎn)程BLOB存儲(chǔ)API。 使用遠(yuǎn)程BLOB存儲(chǔ)API使你能夠靈活地使用不同的系統(tǒng)來管理關(guān)系數(shù)據(jù)和非關(guān)系數(shù)據(jù)。遠(yuǎn)程BLOB存儲(chǔ)API通過鏈接級(jí)別的一致性維護(hù)了數(shù)據(jù)庫(kù)中的記錄與在外部存儲(chǔ)的BLOB之間的一致性。例如,如果你通過一個(gè)刪除語(yǔ)句從數(shù)據(jù)庫(kù)中刪除BLOB參照,系統(tǒng)將從存儲(chǔ)中刪除BLOB。然而,使用遠(yuǎn)程BLOB存儲(chǔ)API不能提供隨著BLOB直接存儲(chǔ)到數(shù)據(jù)庫(kù)中而來的數(shù)據(jù)級(jí)別的一致性,要做到這一點(diǎn)你需要使用FILESTREAM或者varbinary。
◆3.4 比較BLOB的存儲(chǔ)選擇
下表比較了SQL Server 2008中的BLOB數(shù)據(jù)的存儲(chǔ)選擇。
表1:BLOB存儲(chǔ)選項(xiàng)對(duì)照
這些選項(xiàng)意味著SQL Server 2008為存儲(chǔ)非結(jié)構(gòu)化數(shù)據(jù)提供了一個(gè)最適合你的業(yè)務(wù)需求的靈活的解決方案。
4. 在SQL Server 2008中搜索非結(jié)構(gòu)化數(shù)據(jù)
使用非關(guān)系數(shù)據(jù)的應(yīng)用程序的一個(gè)最常見的要求是使得可以在數(shù)據(jù)上作純文本搜索。
◆4.1 綜合的純文本搜索
SQL Server 在之前的版本中支持純文本搜索。然而,它一直依賴于一個(gè)外部的服務(wù)——Windows Search Service ——作為它的純文本搜索引擎。使用外部服務(wù)產(chǎn)生了下面兩個(gè)挑戰(zhàn):· 對(duì)外部服務(wù)的依賴使得部署更加復(fù)雜,也更難進(jìn)行支持。· 結(jié)合了純文本搜索謂詞和標(biāo)準(zhǔn)的SQL謂詞的查詢性能受到影響,因?yàn)閺乃阉鞯募兾谋静糠值脕淼恼麄€(gè)結(jié)果集不得不在標(biāo)準(zhǔn)的謂詞應(yīng)用之前放置在這個(gè)引擎上。查詢優(yōu)化器不能創(chuàng)建與純文本搜索謂詞協(xié)作的計(jì)劃。在SQL Server 2008,純文本搜索是完全集成在數(shù)據(jù)庫(kù)引擎中的。通過將純文本引擎直接集成到SQL核心中,SQL Server 2008解決了之前版本中所面臨的挑戰(zhàn),降低了管理和部署SQL Server的成本,同時(shí)提高了搜索非結(jié)構(gòu)化數(shù)據(jù)的性能。
5. 總結(jié)
SQL Server 2008為存儲(chǔ)和搜索非結(jié)構(gòu)化數(shù)據(jù)提供了一個(gè)靈活的解決方案。FILESTREAM加強(qiáng)了存儲(chǔ)數(shù)據(jù)庫(kù)中的非關(guān)系數(shù)據(jù)像BLOB和關(guān)系數(shù)據(jù)的性能,而沒有降低可管理性。如果你需要使用一個(gè)只用于BLOB的存儲(chǔ),那么遠(yuǎn)程BLOB存儲(chǔ)API能夠幫助你集成你的BLOB數(shù)據(jù)和你的數(shù)據(jù)庫(kù)中的關(guān)系數(shù)據(jù),并提供一個(gè)一致的編程界面用于與這個(gè)數(shù)據(jù)交互,還提供了系統(tǒng)的獨(dú)立性,用來存儲(chǔ)數(shù)據(jù)。最后,當(dāng)你需要通過使用在這篇白皮書中討論的任何解決方案來存儲(chǔ)和使用大型文檔庫(kù)時(shí),SQL Server 2008幫助你使得搜索非關(guān)系數(shù)據(jù)更加有效也更易于管理。
