早晨十點,你愜意地坐在寬大的辦公桌邊,沖杯咖啡,從40層樓的窗戶看了一眼熱浪下依然川流不息的馬路,一個小時前地鐵里混濁的空氣和擁擠的人群給你帶來的不快已經(jīng)煙消云散。打開筆記本沖一下浪,這也許是你的想法,或者是打開MSN和好友煲上一會兒八卦。
嘿!Stop!知道我們的世界正在發(fā)生什么變化么?當(dāng)然,除了奧運要來了!
我們的用戶正在日以繼夜地生成數(shù)據(jù),我們的存儲空間已經(jīng)從二十年前昂貴的MB級到現(xiàn)在的TB級。記得我第一臺電腦只有4.3GB的硬盤空間,朋友們羨慕的眼光還歷歷在目的時候,現(xiàn)在我的ThinkPad已經(jīng)擁有了250GB的硬盤,外加Secondary Bay里面的那塊250GB的硬盤,還有兩塊160GB的移動硬盤,臺式機(jī)上面那塊1TB的SATA,老板剛發(fā)的一塊500GB的移動硬盤,我已經(jīng)有2.3TB的存儲空間了!
電子表格、圖片影像、音頻視頻、電子郵件,越來越多的數(shù)據(jù)展現(xiàn)形式。10年前我用Access 97為一些中小企業(yè)編寫工資計算程序,似乎當(dāng)時只有那么幾個數(shù)據(jù)類型,文本、數(shù)字、貨幣、日期。哦對了,客戶還很喜歡那個MEMO類型。可是現(xiàn)在呢?Blog、Podcast、YouTube、各種各樣的門戶,現(xiàn)在還流行一個詞匯叫富媒體,就像黑白電視機(jī)到彩色電視機(jī)一樣,用戶對表現(xiàn)形式永遠(yuǎn)不會滿足。
回過來說我們苦命的程序員和IT架構(gòu)師。人力資源部的經(jīng)理可能有一個關(guān)于績效考核的新點子需要你在HRM系統(tǒng)里面做一個“小小”的改動,而市場部的老總也有一個風(fēng)靡全球的營銷模式需要你在SFA應(yīng)用里面支撐一下,銷售部有了新的獎金計算方案、物流部需要連接新的供應(yīng)商系統(tǒng)、財務(wù)部發(fā)布了下一年度的預(yù)算方案,最后你的老板也說話了“我們要整合應(yīng)用系統(tǒng)!”
其實世界不是一天之內(nèi)便成這樣的,西方的IT咨詢機(jī)構(gòu)作過一個調(diào)查,他們認(rèn)為現(xiàn)在數(shù)據(jù)消費的游戲規(guī)則正在發(fā)生改變,而且速度愈演愈烈,而這些改變主要體現(xiàn)在:
· 數(shù)據(jù)總量的飛速增長
· 數(shù)據(jù)格式越來越豐富
· 信息終端的多樣化和微型化
· 信息規(guī)范越來越嚴(yán)格
如何應(yīng)對這種變化呢?
SQL Server 2008將幫助我們輕松面對這些挑戰(zhàn)。
SQL Server在7.0之前的版本被微軟稱為其第一代數(shù)據(jù)庫服務(wù)器產(chǎn)品,而從7.0到2000則被稱為是其第二代產(chǎn)品,從2005開始則進(jìn)入了第三代。且不論前面兩代產(chǎn)品,就SQL Server 2005,也就是為微軟第三代數(shù)據(jù)庫服務(wù)器產(chǎn)品的里程碑版本,我們不難發(fā)現(xiàn)微軟將數(shù)據(jù)應(yīng)用推向互聯(lián)和在線的策略,HTTP Support、Native XML以及Service Broker組成了SQL Server作為SODA平臺的基礎(chǔ),CLR集成也在非關(guān)系型數(shù)據(jù)的支持方面走出了關(guān)鍵的一步,幾乎全新的數(shù)據(jù)集成服務(wù)(原來叫作DTS)、聯(lián)機(jī)分析服務(wù)、報表服務(wù)詮釋了微軟在商務(wù)智能平臺方面的策略。
SQL Server 2008呢?
SQL Server 2008建立在SQL Server 2005的基礎(chǔ)之上,進(jìn)一步對各項服務(wù)進(jìn)行改進(jìn)。我們就和大家一起分享一些SQL Server 2008中的重要改進(jìn)。
SQL Server 2008重要的新特性
o 基于策略的管理框架
由于現(xiàn)在企業(yè)需要越來越多的應(yīng)用,因此SQL Server在企業(yè)中部署的實例數(shù)量也與日俱增。從支撐ERP的4節(jié)點故障轉(zhuǎn)移集群虛擬服務(wù)器實例,到運行在一臺PC上財務(wù)系統(tǒng)用的標(biāo)準(zhǔn)版實例,到運行在虛擬機(jī)上用于IT開發(fā)部測試用的開發(fā)版實例。這些實例分布在企業(yè)的各個角落,他們對性能、可靠性、安全的要求都不一樣。
基于策略的管理框架(在CTP階段也曾被稱為Dynamic Management Framework動態(tài)管理框架)利用類似于AD中組策略的管理方法為我們管理大量SQL Server實例提供了相當(dāng)?shù)谋憷?,而且SQL Serve r2008中的策略除了可以進(jìn)行被動的策略依從掃描之外,還可以實現(xiàn)主動的策略依從強(qiáng)制。
o 資源調(diào)控器
如果你曾經(jīng)或正在將數(shù)個應(yīng)用部署在同一個SQL Server實例上,那么你一定會知道當(dāng)其中一個應(yīng)用系統(tǒng)失去控制后對其他系統(tǒng)的傷害。因為SQL Server內(nèi)部的線程之間是非常有禮貌的,如果有一個線程占據(jù)了過度的資源,其他線程只會默默地忍受而不會采取過激行為。
SQL Server 2008提供的資源調(diào)控器可以將服務(wù)實例的資源劃分為數(shù)個資源池,并且SQL Server 2008可以限制每個資源池中可以獲得的資源容量,而通過另外一個函數(shù)將用戶的連接分為數(shù)個工作組,最后通過在資源組和工作組之間建立關(guān)聯(lián),SQL Server 2008就可以方便的控制系統(tǒng)資源的消耗了。
o 性能套件
如何管理SQL Server的性能一直是SQL Server DBA頭疼的一個問題,SQL Server的性能數(shù)據(jù)分布在性能計數(shù)器、動態(tài)管理視圖、SQL Trace等一些列的工具和內(nèi)部對象中。如何獲得一個統(tǒng)一的性能視圖就變得尤為重要了。因此微軟提供了Performance Studio,這個套件由Data Collector、Performance Data Warehouse以及一組Performance相關(guān)的內(nèi)置報表構(gòu)成。
Data Collector呢就是微軟在SQL Server 2008種內(nèi)置的一套性能搜集機(jī)制,通過Data Collector我們可以搜集性能計數(shù)器、動態(tài)管理視圖、T-SQL查詢以及SQL Server跟蹤結(jié)果中的數(shù)據(jù),這些性能相關(guān)的數(shù)據(jù)被存儲在一個Database中,然后通過內(nèi)置的報表我們就可以以圖形的方式了解我們服務(wù)器實例以及數(shù)據(jù)庫的性能情況了。
o LINQ以及EDM
如何處理關(guān)系型數(shù)據(jù)架構(gòu)與應(yīng)用程序?qū)ο蠼Y(jié)構(gòu)之間的關(guān)系一直是開發(fā)人員和應(yīng)用系統(tǒng)架構(gòu)師的夢魘。因為在應(yīng)用系統(tǒng)的生命周期里面,為了性能問題和滿足業(yè)務(wù)需要,我們不可避免地需要對應(yīng)用程序的對象結(jié)構(gòu)或者數(shù)據(jù)庫架構(gòu)進(jìn)行調(diào)整,而不管是哪一個方面的調(diào)整都會影響到對方。
微軟在應(yīng)用程序開發(fā)領(lǐng)域提出了LINQ和EDM的概念就是為了解決這一問題的。LINQ為開發(fā)人員提供了以SQL類似的語言對數(shù)據(jù)集和對象集進(jìn)行查詢,這樣就統(tǒng)一了開發(fā)人員的體驗。而EDM(Entity Data Model對象實體模型)則是在關(guān)系型數(shù)據(jù)架構(gòu)與應(yīng)用程序?qū)ο笾g建立了一層映射圖,通過這個映射層就可以使得關(guān)系型數(shù)據(jù)架構(gòu)與應(yīng)用程序?qū)ο蟊3窒鄬Κ毩⒘恕?/P>
o Spatial
有沒有想過在應(yīng)用程序中集成地理信息,或為客戶提供地圖定位信息?其實地理數(shù)據(jù)在許多應(yīng)用中都有非常大的作用。比如說一個連鎖超市集團(tuán)在規(guī)劃開設(shè)分店的時候需要考慮到區(qū)域內(nèi)的消費能力和競爭對手情況,而一個配送公司則需要在遞送開始前規(guī)劃好最有的遞送路徑,房產(chǎn)開發(fā)集團(tuán)需要了解不同的地塊情況以便于規(guī)劃建設(shè)何種房產(chǎn),快速消費品集團(tuán)的物流部門需要知道交通情況來規(guī)劃物流中心的選址等等。
SQL Server 2008首次提供了對Spatial的支持,盡管在這個版本中只支持二維的地理信息,但是SQL Server 2008中提供的眾多Spatial函數(shù)仍然可以節(jié)省我們大量的開發(fā)成本。同時,將Spatial信息和其他信息放置在一個數(shù)據(jù)存儲中,我們就可以在一個查詢中同時獲取地理信息和其他信息,比如查詢某個超市覆蓋半徑內(nèi)的總?cè)丝诤褪杖肫骄怠?/P>
o 全面審核
SQL Server早期版本中的審核是通過觸發(fā)器完成的,當(dāng)然還有C2 Audit,但是觸發(fā)器不能審核SELECT操作,而C2 Audit產(chǎn)生的數(shù)據(jù)量又過于龐大。后來SQL Server 2005提供了DDL Trigger,在可審計事件中有增加了DDL操作,Event Trigger又進(jìn)一步地擴(kuò)大了可審核內(nèi)容的范圍,但是遺憾的是對SELECT操作的審核一直非常困難,而且SQL Server也缺乏一個統(tǒng)一的審核機(jī)制。
由于企業(yè)需要滿足越來越多的法規(guī)制度,而這些法規(guī)制度中不乏對審核和事件追溯的要求,因此SQL Server 2008提供了一個完整的審核機(jī)制。在這個審核系統(tǒng)中,我們可以輕松的選擇審核對象和審核事件,并選擇審核結(jié)果的存儲位置。完整的審核記錄和集中的記錄訪問,無疑是DBA非常開心的一件事情了。至于審核記錄干什么么?安全分析、決定回滾時間、性能評估,很多DBA的工作都需要阿。
o 商務(wù)智能套件
SQL Server 2005推出商務(wù)智能套件后就備受市場的追捧,而在SQL Server 2008中這個套件的三架馬車進(jìn)一步被增強(qiáng)了。比如分析服務(wù)中的塊計算邏輯改進(jìn)、設(shè)計界面改良、MOLAP支持回寫操作和數(shù)據(jù)挖掘算法改進(jìn),數(shù)據(jù)集成服務(wù)中提供的數(shù)據(jù)質(zhì)量分析任務(wù)、查找緩存技術(shù)等,報表服務(wù)新的報表設(shè)計界面和報表控件。這一系列的改進(jìn)都大大增強(qiáng)了SQL Server 2008作為商務(wù)智能平臺的能力。
同時SQL Server 2008對數(shù)據(jù)倉庫的支持也增強(qiáng)了許多,數(shù)據(jù)壓縮有助于減少數(shù)據(jù)倉庫的存儲消耗,對星型結(jié)構(gòu)查詢計劃的改進(jìn)、對分區(qū)表查詢的執(zhí)行計劃并行度改進(jìn)有助于減少數(shù)據(jù)倉庫中查詢的響應(yīng)時間,稀疏列和篩選索引可以幫助我們有效管理大維度表的性能,前面提過的資源調(diào)控器可以控制數(shù)據(jù)倉庫上多種應(yīng)用的性能問題。這一切都讓人恍生SQL Server 2008就是為商務(wù)智能而生的錯覺。
太多的新功能我們不能一一列舉,因此上面只是SQL Server 2008的冰山一角,也就是最為吸引人的那部分,而還有很多細(xì)節(jié)上的改進(jìn)有待于我們發(fā)現(xiàn)和體驗,例如T-SQL語法中的一些令人欣喜的改進(jìn),編輯器對自動語法的支持等等。
SQL Server 2008升級事項Q&A
那么SQL Server 2008就快來了,很多DBA都會有疑問。我們就挑一些問題和大家一起探討。
企業(yè)應(yīng)該如何面對這個產(chǎn)品呢?
我的建議是多多接觸,有能力的應(yīng)該盡量往SQL Server 2008遷移,特別是那些還運行在SQL Server 2000上的。因為SQL Server 2005和SQL Server 2005是完全支持SODA架構(gòu)的,利用SODA架構(gòu)我們可以規(guī)劃和實施生命力更強(qiáng)的應(yīng)用系統(tǒng)。
升級到SQL Server 2008企業(yè)能獲得什么好處?
升級到SQL Server 2008意味著我們能在應(yīng)用程序中使用許多新的功能,這些新功能可以為我們帶來更高的可靠性、安全性、擴(kuò)展性和靈活性。例如數(shù)據(jù)庫鏡像可以降低高可用解決方案的部署難度,數(shù)據(jù)壓縮可以減少存儲開銷,數(shù)據(jù)加密可以增強(qiáng)數(shù)據(jù)的安全性。同時SQL Server 7.0的主流支持已經(jīng)停止,而SQL Server 2000的支持也快要結(jié)束了,因此升級到新的版本也就意味著能繼續(xù)獲得微軟的技術(shù)支持。
那么遷移的過程會復(fù)雜么?
SQL Server 2005到SQL Server 2008的過程是相當(dāng)簡單的,幾乎可以說是無縫的。SQL Server 2000和7.0則會麻煩一些,主要是體現(xiàn)在DTS和分析服務(wù),還有SQL Server 2000的報表服務(wù),并且從SQL Server 2005開始有許多不規(guī)范的T-SQL語法都不被支持了。不過不用擔(dān)心,SQL Server 2008和SQL Server 2005一樣會提供一個升級助手,通過升級助手的掃描我們可以得到不兼容項目的清單以及相關(guān)的調(diào)整建議。從而升遷過程會變得相當(dāng)簡單。
企業(yè)可以通過什么方法升級到SQL Server 2008?
升級到SQL Server 2008的方法包括升級和遷移兩種策略,升級就是直接用SQL Server 2008的安裝程序覆蓋原有SQL Server實例,而遷移呢,就是新安裝SQL Server 2008的實例,然后將數(shù)據(jù)和其他信息從老的SQL Server實例復(fù)制到新的實例中。SQL Server 2008有很多工具和方法可以幫助我們將數(shù)據(jù)從原有實例復(fù)制過來,包括數(shù)據(jù)導(dǎo)入導(dǎo)出向?qū)?、?shù)據(jù)集成服務(wù)、數(shù)據(jù)庫復(fù)制向?qū)А⑿遁d/掛載等。
{{item.content}}