亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

從各個(gè)方面產(chǎn)品對(duì)比SYBASE & ORACLE

瀏覽:140日期:2023-11-07 15:54:03
數(shù)據(jù)庫(kù)市場(chǎng)份額比較 Sybase公司成立于1986年,立足于在開放系統(tǒng)平臺(tái)上研制具有Client/Server體系結(jié)構(gòu)的數(shù)據(jù)庫(kù)系統(tǒng)軟件產(chǎn)品。 當(dāng)時(shí)的Sybase公司由于有效地汲取了其它RDBMS設(shè)計(jì)過程中的先進(jìn)技術(shù)和概念,以滿足聯(lián)機(jī)事務(wù)處理(OLTP)應(yīng)用的高性能要求為目標(biāo),同時(shí)加強(qiáng)聯(lián)網(wǎng)對(duì)異構(gòu)數(shù)據(jù)源的開放互聯(lián),使Sybase取得了很大成功,非凡是Sybase有效的拓展市場(chǎng)行動(dòng),使Sybase曾一度成為世界數(shù)據(jù)庫(kù)市場(chǎng)增長(zhǎng)最快的產(chǎn)品。然而,由于產(chǎn)品本身的技術(shù)問題,不能提供對(duì)大型多處理器系統(tǒng)的支持,使得Sybase的市場(chǎng)份額急劇下降,并出現(xiàn)連續(xù)的虧損。1997年虧損額為5540萬(wàn)美元,1998年僅第一季度就虧損了8120萬(wàn)美元。1999年初,Sybase裁員又600人,將近其全體員工的10%。2001年第一季度沒有虧損,但令人擔(dān)心的是比2000年同期許可證(license)收入下降了10.7%。 早在1997年,聞名的市場(chǎng)分析公司Gartner Group就已將Sybase從”Big 5” DBMS市場(chǎng)領(lǐng)先者的名單中刪除。根據(jù)Gartner/Dataquest近期發(fā)布的2001年度數(shù)據(jù)庫(kù)市場(chǎng)份額統(tǒng)計(jì)報(bào)告, 在Gartner/Dataquest報(bào)告中Oracle依然在主流操作系統(tǒng)Unix和Linux, Windows NT/2000/XP上的關(guān)系數(shù)據(jù)庫(kù)市場(chǎng)上占據(jù)絕對(duì)的領(lǐng)先地位,在UNIX上占63%, Windows+Unix上占49.9%。在關(guān)系型數(shù)據(jù)庫(kù)市場(chǎng)(包括AS/400,Mainframe),Oracle以39.8%仍然處于領(lǐng)先地位。根據(jù)最新的FactPoint的調(diào)查,Oracle數(shù)據(jù)庫(kù)依然是Fortune 100公司的首選數(shù)據(jù)庫(kù),其中51%的Fortune 100公司選用Oracle Database作為構(gòu)建企業(yè)的傳統(tǒng)應(yīng)用和電子商務(wù)平臺(tái)。FactPoint Group報(bào)告的調(diào)查結(jié)果:1、 Oracle仍然是Fortune 100公司的首選數(shù)據(jù)庫(kù)平臺(tái),Oracle的數(shù)據(jù)庫(kù)市場(chǎng)份額遠(yuǎn)遠(yuǎn)超過其它競(jìng)爭(zhēng)對(duì)手,其市場(chǎng)份額是第二名的2.5倍。2、 51%的Fortune 100公司選用Oracle數(shù)據(jù)庫(kù)來構(gòu)建企業(yè)的傳統(tǒng)應(yīng)用和電子商務(wù)應(yīng)用平臺(tái)。3、 Fortune 100所選用的主流應(yīng)用軟件絕大多數(shù)選用Oracle數(shù)據(jù)庫(kù)平臺(tái),其中:100%的Oracle 應(yīng)用產(chǎn)品;76%的SAP; 72%的PeopleSoft; 81%的Siebel; 73%的i2都選用Oracle數(shù)據(jù)庫(kù)平臺(tái)。4、 Oracle數(shù)據(jù)庫(kù)產(chǎn)品滲透到Furtune100公司的各個(gè)業(yè)務(wù)領(lǐng)域, 其中75%的財(cái)務(wù)應(yīng)用, 72%的人力資源應(yīng)用, 68%的客戶關(guān)系治理應(yīng)用和72%的供給鏈治理應(yīng)用都采用Oracle數(shù)據(jù)庫(kù)平臺(tái)。5、 Oracle數(shù)據(jù)庫(kù)被Furtune100的客戶評(píng)選為技術(shù)最好和與主流應(yīng)用軟件集成最好的數(shù)據(jù)庫(kù)平臺(tái)。FactPoint Group調(diào)查涉及了與Fortune100公司的IT經(jīng)理們的400次會(huì)談,其調(diào)查結(jié)果根據(jù)Fortune 100公司的數(shù)據(jù)庫(kù)產(chǎn)品的使用狀況,真實(shí)體現(xiàn)了當(dāng)今企業(yè)中數(shù)據(jù)庫(kù)部署與使用的狀況,根據(jù)FactPoint Group的調(diào)查Oracle數(shù)據(jù)庫(kù)技?jí)喝盒郏匀槐3至似髽I(yè)數(shù)據(jù)庫(kù)市場(chǎng)份額的領(lǐng)頭羊地位。ORACLE 與 SYBASE 技術(shù)先進(jìn)性的比較Oracle數(shù)據(jù)庫(kù)與Sybase數(shù)據(jù)庫(kù)相比,無(wú)論從體系架構(gòu)、并行支持、完整性控制等各方面均有很大的優(yōu)勢(shì)。1、體系結(jié)構(gòu)的比較Oracle采用多線索多進(jìn)程體系結(jié)構(gòu),直接在內(nèi)核中支持分布式數(shù)據(jù)庫(kù)操作、多線索處理、并行處理以及聯(lián)機(jī)事務(wù)處理等 。Oracle企業(yè)級(jí)服務(wù)器從結(jié)構(gòu)上說,同時(shí)支持集中式多用戶環(huán)境、Client/Server、分布式處理和Internet計(jì)算結(jié)構(gòu);從技術(shù)上說,為應(yīng)用程序及系統(tǒng)開發(fā)人員實(shí)現(xiàn)了透明的網(wǎng)絡(luò)環(huán)境、混合網(wǎng)絡(luò)結(jié)構(gòu)以及分布式數(shù)據(jù)治理等Sybase采用單進(jìn)程多線索體系結(jié)構(gòu),其核心是SQL Server(現(xiàn)在為與Microsoft SQL Server區(qū)別,改名為Adaptive Server Enterprise),在Client/ Server體系結(jié)構(gòu)的基礎(chǔ)上,架構(gòu)了復(fù)制服務(wù)器(Replication Server)和多功能通用網(wǎng)關(guān)(Omni SQL Gateway,現(xiàn)在叫Enterprise CONNECT)等部件,從而形成了軟件產(chǎn)品系列。2、多線索多進(jìn)程與單進(jìn)程多線索的比較Oracle和Sybase都采用多線索。采用多線索的模式,能用較少的線索治理大量的用戶進(jìn)程;并且,線索進(jìn)程是動(dòng)態(tài)可調(diào)整的,當(dāng)用戶數(shù)增加時(shí), 線索進(jìn)程也會(huì)階段性地自動(dòng)增加;當(dāng)用戶數(shù)減少時(shí),線索進(jìn)程也會(huì)自動(dòng)減少。多線 索結(jié)構(gòu),大大降低了Oracle和Sybase對(duì)系統(tǒng)資源的占用,提高了系統(tǒng)資源的利用率。對(duì)于Oracle的體系結(jié)構(gòu),在集中式多用戶環(huán)境下,每個(gè)用戶單獨(dú)占用一個(gè)服務(wù)器進(jìn)程;在Client/Server 和Internet方式下可以采用多個(gè)用戶共享進(jìn)程,以多線索方式執(zhí)行用戶的請(qǐng)求。另外,針對(duì)非凡級(jí)別的用戶,可以單獨(dú)占用一個(gè) 服務(wù)器進(jìn)程,實(shí)現(xiàn)最優(yōu)級(jí)別的用戶請(qǐng)求。Oracle的服務(wù)器進(jìn)程是用來同時(shí)處理 數(shù)據(jù)庫(kù)請(qǐng)求的,它們從請(qǐng)求隊(duì)列中拿出申請(qǐng),進(jìn)行語(yǔ)法分析、權(quán)限檢查以及一系列的內(nèi)部操作,并協(xié)調(diào)Oracle其他后臺(tái)進(jìn)程,以共同完成申請(qǐng)的處理,并把操 作結(jié)果返回到回答隊(duì)列。Oracle多服務(wù)器進(jìn)程結(jié)構(gòu),能實(shí)現(xiàn)數(shù)據(jù)庫(kù)事務(wù)的并行 處理,提高并發(fā)事務(wù)處理的響應(yīng)速度。并且多服務(wù)器結(jié)構(gòu)具有非常靈活的擴(kuò)充 性,當(dāng)硬件平臺(tái)處理能力提高時(shí),服務(wù)器進(jìn)程的個(gè)數(shù)也能隨之增加,數(shù)據(jù)庫(kù)性 能也隨之提高。多服務(wù)器結(jié)構(gòu),避免了單服務(wù)器結(jié)構(gòu)中很輕易造成的服務(wù)器進(jìn) 程瓶頸現(xiàn)象,也避免了因此而引起的單服務(wù)器進(jìn)程死鎖的現(xiàn)象。Sybase采用單進(jìn)程多線索方式,用戶請(qǐng)求都由一個(gè)進(jìn)程來進(jìn) 行總的調(diào)度和治理。在單服務(wù)器并采用單一的Client/Server模式下其對(duì)數(shù)據(jù)庫(kù)的治理比較簡(jiǎn)單,內(nèi)存資源占用較少,在并發(fā)用戶數(shù)較少的情況下,其對(duì)系統(tǒng)資源的利用率比采用多進(jìn)程方式要高;但同時(shí),當(dāng)并發(fā)用戶數(shù)達(dá)到一定的數(shù)量時(shí),會(huì)引起系統(tǒng)處理性能大大下降,和服務(wù)器進(jìn)程瓶頸及死鎖等現(xiàn)象;同時(shí)系統(tǒng)的可擴(kuò)展余地非常狹窄。3、系統(tǒng)集成度Oracle服務(wù)器上的Oracle多線索多進(jìn)程結(jié)構(gòu)以及并行查詢,分布式數(shù)據(jù)庫(kù)、高級(jí)復(fù)制等功能都是 直接在Oracle核心中實(shí)現(xiàn)的,無(wú)需添加額外的服務(wù)器,不要求額外的系統(tǒng)配置 ,也不會(huì)帶來額外的的系統(tǒng)治理負(fù)擔(dān),更不會(huì)產(chǎn)生由API帶來編程的變化。Sybase由實(shí)現(xiàn)不同功能的不同服務(wù)器組成(ASE, Replication Server, Enterprise Connect, IQ等) ,眾多的服務(wù)器要 求能協(xié)調(diào)一致地工作,同時(shí)又要滿足高可靠性和高可用性的要求。這不僅對(duì)硬件設(shè)備提出了很高的要求,對(duì)系統(tǒng)治理來講也提出了極高的要求。Sybase對(duì)用戶是不透明的,許多操作需要編程人員來治理和操縱,而且后來引入的應(yīng)用程 序接口(API) CT- Lib與以前版本(DB-Lib)不兼容,大大加重了編程人員的負(fù)擔(dān),延長(zhǎng)了開發(fā)周期。4、聯(lián)機(jī)事務(wù)處理聯(lián)機(jī)事務(wù)處理是比較非凡的一類應(yīng)用,一般體現(xiàn)為同時(shí)工作的用戶數(shù)較 多,對(duì)數(shù)據(jù)的操作申請(qǐng)比較簡(jiǎn)單,但要求比較快的響應(yīng)時(shí)間。針對(duì)這類應(yīng)用, 計(jì)算機(jī)系統(tǒng)必須提供一個(gè)能支持大量同時(shí)工作的用戶,并提供比較大的系統(tǒng)吞吐量來消化用戶的大量申請(qǐng)。具體來說,就是要有較好的用戶治理手段、有效的內(nèi)存緩沖區(qū)治理、優(yōu)化的I/0進(jìn)程控制、有效的系統(tǒng)封鎖處理、快速的網(wǎng)絡(luò)治理功能等等。因此,為了在聯(lián)機(jī)事務(wù)處理應(yīng)用中達(dá)到較好的性能,應(yīng)以適用于聯(lián)機(jī)事務(wù)處理的硬件平臺(tái)、操作系統(tǒng)、網(wǎng)絡(luò)環(huán)境為基礎(chǔ),配合數(shù)據(jù)庫(kù)處理,才能實(shí)現(xiàn)理想的聯(lián)機(jī)事務(wù)處理。Oracle的多線索技術(shù)在相同硬件環(huán)境下,所支持的用戶數(shù)是其他數(shù)據(jù)庫(kù) 系統(tǒng)的5至10倍。Oracle的多進(jìn)程技術(shù)從根本上加快每一個(gè)用戶申請(qǐng)的處理速度,非凡是在大量申請(qǐng)需要處理的情況下,它能保持內(nèi)存中請(qǐng)求隊(duì)列在大部分時(shí)間處于隊(duì)列空的狀態(tài)。更為靈活的是,Oracle多進(jìn)程的數(shù)量是動(dòng)態(tài)可調(diào)整的,使用相應(yīng)的系統(tǒng)參數(shù),可以控制服務(wù)器進(jìn)程個(gè)數(shù)、當(dāng)應(yīng)用環(huán)境、工作量、硬件環(huán)境等發(fā)生變化時(shí),可以構(gòu)造不同的Oracle服務(wù)器進(jìn)程,使用戶的申請(qǐng)?jiān)谌魏螘r(shí)候都能保持較快的處理效率。數(shù)據(jù)庫(kù)共享緩存治理,是影響聯(lián)機(jī)事務(wù)處理性能的一個(gè)要害因素,能充分且有效地利用高速緩存,就能大大減少許多重復(fù)操作,大大減少不必要的I/O,從而提高語(yǔ)句的執(zhí)行速度。Oracle有一套十分有效的內(nèi)存高速緩存治理的技術(shù),編譯后的SQL語(yǔ)句共享緩沖區(qū)、預(yù)讀入技術(shù)、日志記錄緩存等。 在多用戶并發(fā)工作的情況下,寫/寫沖突及讀/寫沖突是主要的影響實(shí)時(shí)操作效果的因素,是聯(lián)機(jī)事務(wù)需要解決的主要問題。Oracle采用行級(jí)封鎖來解決寫/寫沖突,當(dāng)用戶要對(duì)一張表進(jìn)行修改或更新操作時(shí),會(huì)自動(dòng)鎖定要修改的記錄“行”,而不是整張表。當(dāng)其他用戶同時(shí)也要修改同一張表時(shí),也鎖定各自需要修改的記錄“行”,只有在兩個(gè)或多個(gè)用戶需要修改同一記錄行時(shí),才會(huì)出現(xiàn)排隊(duì)等待鎖資源釋放的現(xiàn)象。這種行級(jí)封鎖大大降低了沖突的機(jī)率,與頁(yè)級(jí)鎖或表級(jí)鎖相比,大大提高了系統(tǒng)的吞吐量。Oracle采用讀一致快照技術(shù)來解決讀/寫沖突,而不是采用傳統(tǒng)的讀鎖方式。當(dāng)一用戶對(duì)某一記錄進(jìn)行修改時(shí),系統(tǒng)會(huì)自動(dòng)生成一個(gè)該記錄的拷貝, 稱為讀一致性快照。而另一用戶同時(shí)要讀取這一記錄行時(shí),讀操作將讀取讀一致快照的內(nèi)容,而不用加讀鎖。因此讀操作將不被寫操作所阻塞;同樣,寫操作也同樣不會(huì)被讀操作所阻塞。可見Oracle的行級(jí)封鎖及讀一致性快照技術(shù),使得在大量用戶并發(fā)工作的聯(lián)機(jī)事務(wù)處理環(huán)境下,用戶發(fā)生沖突而排隊(duì)等候的現(xiàn)象減少到了最低,大大提高了系統(tǒng)的吞吐量,提高實(shí)時(shí)響應(yīng)的速度。另外,Oracle還有靈活的查詢優(yōu)化機(jī)制,確保查詢操作的快速完成, 如基于成本的智能優(yōu)化、哈希方法、分布式查詢優(yōu)化等,都能以不同的使用方法,為不同層次的用戶自動(dòng)提供最佳的優(yōu)化方案, 而無(wú)需用戶編程指明。為了能提高事務(wù)的吞吐量和低的響應(yīng)時(shí)間,Sybase主要采用了支持存儲(chǔ)過程(Stored Procedure)、Log成組提交以及基于成本的優(yōu)化等技術(shù)。其設(shè)計(jì)思想分別和Oracle中數(shù)據(jù)庫(kù)共享緩存治理以及查詢優(yōu)化機(jī)制相似,從功能處理上沒有Oracle的全面和有效。長(zhǎng)期以來,Sybase采用頁(yè)級(jí)封鎖機(jī)制來解決寫/寫沖突,使用戶的并發(fā)事務(wù)受到很大限制,集中體現(xiàn)在用戶的并發(fā)事務(wù)達(dá)到一定數(shù)量時(shí),系統(tǒng)實(shí)現(xiàn)上輕易陷入癱瘓的狀態(tài)。在ASE的新版本中才引入行級(jí)鎖,然而,Sybase的行級(jí)鎖并不徹底,它采用可升級(jí)的行級(jí)鎖,可升級(jí)的行級(jí)鎖隨著系統(tǒng)活動(dòng)級(jí)別的增加,為治理內(nèi)存的使用,會(huì)升級(jí)原有鎖的級(jí)別——當(dāng)系統(tǒng)并發(fā)訪問較多時(shí),會(huì)引起行級(jí)鎖升級(jí)為頁(yè)級(jí)鎖。所以系統(tǒng)對(duì)大量并發(fā)的控制并沒有實(shí)質(zhì)的改善。例如,用戶A在修改某個(gè)客戶信息,將可能影響用戶B修改其它客戶信息。不必要的資源競(jìng)爭(zhēng) ,較低的系統(tǒng)并發(fā)性,對(duì)要害業(yè)務(wù)的OLTP系統(tǒng)是無(wú)法忍受的。由于缺少讀一致性的多版本模式,Sybase不能提供一致性和并發(fā)性兼得的解決方案。為了使讀操作不阻塞寫操作,Sybase使用臟讀(Dirty Read)技術(shù)。雖然提高了性能和并發(fā)性,但帶來了讀到的數(shù)據(jù)可能與數(shù)據(jù)庫(kù)中的數(shù)據(jù)不一致的結(jié)果。另一方面,假如要保證讀一致性,Sybase采用加讀鎖技術(shù),而用戶A的讀鎖不能與用戶B的寫鎖同時(shí)加在同一個(gè)數(shù)據(jù)塊上,因此,用戶A必須等待,直到用戶B的事務(wù)處理結(jié)束,釋放寫鎖后,才能繼續(xù)進(jìn)行讀操作。或者用戶B必須等待用戶A讀操作完成后才能進(jìn)行寫操作。讀和寫操作互相阻塞,大大增加了死鎖的可能。5、硬件平臺(tái)及操作系統(tǒng)的適用性O(shè)racle能支持幾乎所有常見的硬件平臺(tái)及操作系統(tǒng),這種支持不是簡(jiǎn)單 的內(nèi)核移植,而是針對(duì)不同的硬件平臺(tái)及操作系統(tǒng),充分利用不同硬件平臺(tái)以及操作系統(tǒng)的優(yōu)勢(shì),并在數(shù)據(jù)處理方面加以發(fā)揮。根據(jù)近年來美國(guó)TPC組織提供的測(cè)試報(bào)告,Oracle在目前國(guó)際上流行的絕大多數(shù)硬件平臺(tái)上均獲得了最高的TPC-C測(cè)試值。其中最新的測(cè)試值為824,164 tpmC。這些創(chuàng)記錄的結(jié)果,在數(shù)據(jù)庫(kù)市場(chǎng)中尚無(wú)其他數(shù)據(jù)庫(kù)產(chǎn)品能望其項(xiàng)背。另?yè)?jù)美國(guó)聞名的<>對(duì)幾家主要數(shù)據(jù)庫(kù)廠家的測(cè)試結(jié)果,Oracle在數(shù)據(jù)庫(kù)的數(shù)據(jù)裝載、數(shù)據(jù)查詢、數(shù)據(jù)庫(kù)讀/寫操作等方面,都獲得絕對(duì)優(yōu)勢(shì),并連續(xù)幾年占據(jù)評(píng)選的第一名。現(xiàn)在絕大多數(shù)硬件公司都以O(shè)racle為數(shù)據(jù)庫(kù)基礎(chǔ)平臺(tái)進(jìn)行測(cè)試,也說明Oracle的確讓不同的硬件平臺(tái)發(fā)揮出其最佳的效能。Sybase支撐的硬件平臺(tái)及操作系統(tǒng)則比較有限,缺乏對(duì)MPP系統(tǒng)的支持。其最高的TPC-C測(cè)試值僅為60,366tpmC.6、并行處理Oracle的體系結(jié)構(gòu)不僅能大大加快系統(tǒng)的處理速度,增大系統(tǒng)的吞吐量 ,還能充分利用計(jì)算機(jī)硬件資源。以對(duì)稱多處理SMP結(jié)構(gòu)中,Oracle的多服務(wù)器進(jìn)程能均衡地分散在多個(gè)CPU上,使SMP中的多個(gè)CPU同時(shí)處理請(qǐng)求隊(duì)列中的用戶請(qǐng)求,從而達(dá)到利用所有CPU同時(shí)工作,并且均分負(fù)載的目的。Oracle的并行查詢功能將SQL的查詢語(yǔ)句,索引建立語(yǔ)句,數(shù)據(jù)加載,備份/恢復(fù)以及用戶程序進(jìn)行分解,分配給多個(gè)CPU同時(shí)工作以實(shí)現(xiàn)語(yǔ)句級(jí)的并行處理,并且均分負(fù)載的,以上的并行處理過程,對(duì)用戶來說是透明的,完全集成在數(shù)據(jù)庫(kù)內(nèi)核中完成;支持應(yīng)用程序及數(shù)據(jù)庫(kù)的性能縮放,即CPU個(gè)數(shù)增加時(shí),數(shù)據(jù)庫(kù)的處理速度和應(yīng)用程序的執(zhí)行速度能隨之增加,反之亦然,均不需要修改程序或重構(gòu)數(shù)據(jù)庫(kù)系統(tǒng)。通過數(shù)據(jù)分區(qū)技術(shù),Oracle還可以支持并行的DML操作(插入、刪除、修改)。在松散藕合型的Cluster及海量并行處理結(jié)構(gòu)中,Oracle并行服務(wù)器(Real Application Cluster,以前稱為OPS)能充分發(fā)揮松散藕合型計(jì)算機(jī)結(jié)構(gòu)的特點(diǎn)。Oracle公司在1989年率先推出Parallel Server選件,以支持這種體系結(jié)構(gòu)(Oracle6.2版)。隨著Cluster技術(shù)自身的成熟,以及Oracle對(duì)這一技術(shù)的經(jīng)驗(yàn),Oracle Parallel Server目前已能支持幾乎所有的Cluster群機(jī)系統(tǒng)。在share-nothing或shared-disk模式的群機(jī)系統(tǒng)上,Oracle Parallel Server均可以實(shí)現(xiàn)多節(jié)點(diǎn)共享數(shù)據(jù)庫(kù),并自動(dòng)并行處理及均分負(fù)載,在數(shù)據(jù)庫(kù)故障時(shí)進(jìn)行容錯(cuò)和無(wú)斷點(diǎn)恢復(fù)處理。Oracle并行服務(wù)器利用共享磁盤的技術(shù),數(shù)據(jù)庫(kù)駐留在共享磁盤中,松散耦合中的所有計(jì)算機(jī)均能同時(shí)對(duì)同一份數(shù)據(jù)庫(kù)映像進(jìn)行存儲(chǔ)。另外,Oracle與松散耦合型計(jì)算機(jī)結(jié)構(gòu)相結(jié)合,還能大大提高系統(tǒng)的可靠性及容錯(cuò)能力,當(dāng)某一臺(tái)計(jì)算機(jī)出現(xiàn)故障時(shí),由于數(shù)據(jù)庫(kù)是同一份共享的映像,所以不需要系統(tǒng)的重新恢復(fù),從而繼續(xù)整個(gè)系統(tǒng)的運(yùn)行,達(dá)到不間斷運(yùn)行的效果。Oracle9i最新的并行服務(wù)器技術(shù) Real Application Clusters設(shè)計(jì)了快捷高效的共享集群高速緩存,從而提供了透明的應(yīng)用程序可擴(kuò)展性。Real Application Clusters是五年多研發(fā)工作的結(jié)晶,其中包含了13項(xiàng)獨(dú)家專利和18項(xiàng)已申報(bào)的專利請(qǐng)求。Real Application Clusters獨(dú)特之處在于:a)“開箱即用”,提供接近線性的可伸縮性b)與應(yīng)用程序的良好兼容性,無(wú)需重新設(shè)計(jì)c)快速增長(zhǎng)的集群,可快速增添節(jié)點(diǎn)和磁盤Oracle Real Application Cluster能支持的節(jié)點(diǎn)數(shù)目受操作系統(tǒng)的約束,一般最大可以達(dá)256個(gè)。為了能充分發(fā)揮對(duì)稱多處理機(jī)SMP中多CPU硬件平臺(tái)的高性能,Sybase采用了虛擬服務(wù)器體系結(jié)構(gòu)(VSA),用單一的進(jìn)程來模擬多進(jìn)程處理,當(dāng)多個(gè)CPU同分片的進(jìn)程處于協(xié)調(diào)一致時(shí),可以利用多個(gè)CPU的高性能;但同時(shí),假如不處于協(xié)調(diào)一致時(shí),也會(huì)成為服務(wù)器進(jìn)程瓶頸。Sybase不能支持Cluster系統(tǒng)的可伸縮性。Sybase Adaptive Server Enterprise只能提供在Cluster系統(tǒng)上的切換功能,提高系統(tǒng)的可用性。Sybase最近公布它的Companion Server Option可以支持Cluster系統(tǒng)的并行處理。但事實(shí)是怎樣的呢?Companion Server Option只能支持2個(gè)節(jié)點(diǎn)的Cluster系統(tǒng), 包含一個(gè)Primary Database節(jié)點(diǎn)和一個(gè)Proxy Database節(jié)點(diǎn)。雖然用戶可以通過Proxy Database節(jié)點(diǎn)訪問數(shù)據(jù)庫(kù),但Proxy Database上只有數(shù)據(jù)字典是直接訪問的,其對(duì)數(shù)據(jù)的訪問是通過對(duì)Primary Database的遠(yuǎn)過程調(diào)用實(shí)現(xiàn),所以最終仍然都需經(jīng)過主數(shù)據(jù)庫(kù)(Primary Database)節(jié)點(diǎn)。Primary Database的負(fù)載并沒有減輕。所以這種配置不能真正提高系統(tǒng)的可伸縮性。7、數(shù)據(jù)分區(qū)技術(shù)Oracle從Oracle8開始引入 了數(shù)據(jù)分區(qū)(Partitioning),這項(xiàng)技術(shù)對(duì)大規(guī)模數(shù)據(jù)庫(kù)(VLDB), 并行處理和數(shù)據(jù)倉(cāng)庫(kù)都有重大的意義。Oracle數(shù)據(jù)分區(qū)選件將大表和索引分成可以治理的小塊,從而避免了對(duì)每個(gè)大表只能作為一個(gè)單獨(dú)的對(duì)象進(jìn)行治理。分區(qū)(partitioning)是一種“分而置之”的技術(shù),它為大量數(shù)據(jù)提供了可伸縮的性能。分區(qū)通過將操作分配給更小的存儲(chǔ)單元,減少了需要進(jìn)行治理操作的時(shí)間,并通過增強(qiáng)的并行處理提高了性能,通過包含故障的影響還增加了可用性。它支持靈活的按不同要害字進(jìn)行分區(qū)的能力。分區(qū)使治理員更輕易治理大數(shù)據(jù)量的表。治理員可以指定每個(gè)分區(qū)的存儲(chǔ)屬性,分區(qū)在宿主文件系統(tǒng)中的放置情況,這樣便增加了對(duì)超大型數(shù)據(jù)庫(kù)的控制粒度。分區(qū)可以被單獨(dú)地卸出或裝入,備份,恢復(fù),導(dǎo)出和導(dǎo)入,以及加載;因此減少了需要進(jìn)行治理操作的時(shí)間。可以對(duì)分區(qū)實(shí)施靈活的增刪改等治理工作。對(duì)表分區(qū)還可以創(chuàng)建單獨(dú)的索引分區(qū),從而限制了需要進(jìn)行索引維護(hù)操作的時(shí)間。此外,還提供了種類繁多的局部和全局的索引技術(shù)。分區(qū)技術(shù)還提高了數(shù)據(jù)的可用性。當(dāng)部分?jǐn)?shù)據(jù)由于故障或其它原因不可用時(shí),其它分區(qū)內(nèi)的數(shù)據(jù)可用不收影響繼續(xù)使用。分區(qū)對(duì)應(yīng)用是透明的,可以通過標(biāo)準(zhǔn)的SQL語(yǔ)句對(duì)分區(qū)表進(jìn)行操作。Oracle 的優(yōu)化器在訪問數(shù)據(jù)時(shí)會(huì)分析數(shù)據(jù)的分區(qū)情況,在進(jìn)行查詢時(shí),那些不包含任何查詢數(shù)據(jù)的分區(qū)將被忽略,從而大大提高系統(tǒng)的性能。有了分區(qū)以后可以將對(duì)數(shù)據(jù)表的操作,例如DML操作,在多個(gè)分區(qū)上實(shí)現(xiàn)并行,且分區(qū)間的并行可做到均衡負(fù)載,從而提高系統(tǒng)的性能。Oracle支持的分區(qū)包括:a) Range Partitioning—對(duì)指定要害字按取值范圍分區(qū),Oracle自動(dòng)將記錄插入相應(yīng)的分區(qū)。b) Hash Partitioning—基于Hash算法,使用者只需要指定用作Hash 分區(qū)的要害字和分區(qū)數(shù)量,Oracle 把每條記錄均勻插入各個(gè)分區(qū)。c) Composite Partitioning—是Range Partitioning和Hash Partitioning的組合,使用者可以指定先按某個(gè)要害字做Range Partitioning,然后再按另外一些要害字做Hash Partitioning。從而提供更好的并行處理能力。d) List Partitioning—當(dāng)指定要害字的取值可以列表時(shí),可以使用這種分區(qū)。Oracle自動(dòng)將記錄插入相應(yīng)的分區(qū)。Sybase也宣稱有數(shù)據(jù)分區(qū)的功能。但Sybase的分區(qū)與Oracle, IBM, Informix等數(shù)據(jù)庫(kù)的分區(qū)定義有本質(zhì)的不同。實(shí)際上,Sybase的分區(qū)稱為頁(yè)鏈更為合適。在Sybase中,表的存儲(chǔ)是以頁(yè)為單位的,頁(yè)間以指針連接構(gòu)成頁(yè)鏈。而將一個(gè)表分區(qū)實(shí)際就是為一個(gè)表建多個(gè)頁(yè)鏈。在Oracle中早就實(shí)現(xiàn)了這種技術(shù)(一個(gè)表建多個(gè)Free List)。這種“分區(qū)”雖然可以提高查詢的并行度,但它沒有常規(guī)意義上的分區(qū)所帶來的易于治理和隔離故障的好處。在并行方面,它也不能象Hash分區(qū)那樣使數(shù)據(jù)均勻地分布,所以I/O在各個(gè)數(shù)據(jù)庫(kù)設(shè)備不能均勻地分布,并行操作仍然存在瓶頸。Sybase的所謂“分區(qū)”并不是數(shù)據(jù)庫(kù)行業(yè)里公認(rèn)的分區(qū),既不能按鍵值范圍分區(qū),也不能通過Hash函數(shù)分區(qū),只是為表的插入增加多個(gè)插入點(diǎn),彌補(bǔ)其頁(yè)級(jí)鎖在OLTP環(huán)境下難以支持大量并發(fā)操作的缺陷。8、數(shù)據(jù)庫(kù)高可靠性O(shè)racle有一套較完整的容錯(cuò)機(jī)制來保證系統(tǒng)的可靠性,它支持聯(lián)機(jī)備份與恢復(fù)。Oracle聯(lián)機(jī)方式的備份,是由一個(gè)獨(dú)立的后臺(tái)進(jìn)程完成的,由于該后臺(tái)進(jìn)程與負(fù)責(zé)數(shù)據(jù)庫(kù)日常工作的其它進(jìn)程處于并行工作方式因此,聯(lián)機(jī)備 份能保證在做備份時(shí),不影響前臺(tái)交易進(jìn)行的速度,并且該后臺(tái)進(jìn)程能保證對(duì) 整個(gè)數(shù)據(jù)庫(kù)做出完整的備份。Oracle的聯(lián)機(jī)恢復(fù)方式,是以不影響其他用戶的交易為前提的。當(dāng)局部發(fā)生故障時(shí),進(jìn)行局部修復(fù),不影響同一數(shù)據(jù)庫(kù)中其 他用戶的交易,更不影響網(wǎng)絡(luò)中其他節(jié)點(diǎn)的日常工作。另外,Oracle的恢復(fù)功能,還能將整個(gè)數(shù)據(jù)庫(kù)恢復(fù)到某一時(shí)間,還原數(shù)據(jù)庫(kù)的某一歷史狀態(tài)。Oracle Real Application Cluster使系統(tǒng)的可靠性有更顯著的提高。由于是共享磁盤的結(jié)構(gòu),除非Cluster中所有節(jié)點(diǎn)都停機(jī),才會(huì)使系統(tǒng)不能被訪問。當(dāng)任一個(gè)節(jié)點(diǎn)發(fā)生故障時(shí),RAC的其它各個(gè)節(jié)點(diǎn)都已隨時(shí)預(yù)備好接管它的連接用戶,而無(wú)需重新啟動(dòng)進(jìn)程。Oracle 還提供了透明的應(yīng)用切換,使客戶端應(yīng)用可以被迅速切換到有效節(jié)點(diǎn)上,而無(wú)需重新連接數(shù)據(jù)庫(kù)。Sybase沒有獨(dú)立的后臺(tái)進(jìn)程可供單獨(dú)工作,所以,在Adaptive Server Enterprise中內(nèi)構(gòu) 了一個(gè)備份服務(wù)器(Backup Server)以實(shí)現(xiàn)數(shù)據(jù)庫(kù)的聯(lián)機(jī)備份,但由于與其他用戶 共享進(jìn)程,在一定程度是影響了其他用戶的工作效率,而且還不能確保得到完整的數(shù)據(jù)備份。此外,由于Sybase缺乏對(duì)數(shù)據(jù)庫(kù)的一致性作持續(xù)檢查的機(jī)制,有可能造成實(shí)際上已分配給某表的存儲(chǔ)空間仍然被標(biāo)示為“未使用空間”,一旦被重復(fù)分配,就會(huì)造成數(shù)據(jù)庫(kù)損壞(corruption)。按照Sybase的用戶服務(wù)合同,在進(jìn)行備份保存之前,為了檢測(cè)數(shù)據(jù)庫(kù)一致性問題需要運(yùn)行DBCC。在DBCC操作過程中,數(shù)據(jù)庫(kù)必須保持脫機(jī)狀態(tài)。DBCC必須經(jīng)常地運(yùn)行,以保證數(shù)據(jù)庫(kù)的一致性。尤其備份之前一定要運(yùn)行。但DBCC需要脫機(jī)運(yùn)行,數(shù)據(jù)庫(kù)需處在單用戶方式下,而且運(yùn)行很慢。這給一些需要高可用性(24x7)或?qū)嵤¬LDB(大規(guī)模數(shù)據(jù)庫(kù))的用戶帶來了嚴(yán)重的影響。除了聯(lián)機(jī)備份/恢復(fù)的手段外,Oracle和Sybase還有一定的容錯(cuò)能力,實(shí)現(xiàn)基于軟件的數(shù)據(jù)庫(kù)鏡像及日志文件的鏡像功能,不依靠于計(jì)算機(jī)硬件平臺(tái),即使在硬件平臺(tái)不提供容錯(cuò)功能的時(shí)候,也能為數(shù)據(jù)庫(kù)實(shí)現(xiàn)容錯(cuò)的保護(hù)。9、分布式處理技術(shù)分布式環(huán)境下的各節(jié)點(diǎn)必須具有很好的自治能力,以防止某一個(gè)點(diǎn)或服務(wù)器故障而影響其它服務(wù)器正常工作。Oracle和Sybase都具有這種自治能力。Oracle分布式數(shù)據(jù)庫(kù)從Client/Server出發(fā),經(jīng)過內(nèi)核的重新改造,技術(shù) 上又邁進(jìn)一大步,成功地支持超越 Client/Server的大規(guī)模分布式處理。Oracle分布式數(shù)據(jù)庫(kù)不僅支持Client/Server的通訊模式,還有極具特色的服務(wù)器與服務(wù)器間的透明通訊。這種服務(wù)器自動(dòng)通訊的方式,使得物理上存放在多個(gè)計(jì)算機(jī)上的數(shù)據(jù),對(duì)應(yīng)用程序及開發(fā)人員來說,就如同所有的數(shù)據(jù)僅存放在一臺(tái)服務(wù)器上一樣,這就是所謂的“一個(gè)邏輯數(shù)據(jù) 庫(kù)整體”的含義。Oracle具有極強(qiáng)的分布式處理能力。如透明的分布式查詢、透明的分布式修改和分布式數(shù)據(jù)復(fù)制。透明的分布式查詢由數(shù)據(jù)庫(kù)同義詞及數(shù)據(jù)庫(kù)鏈路(Database Link) 支持,能實(shí)現(xiàn)數(shù)據(jù)庫(kù)的自動(dòng)尋址,用戶勿需關(guān)心數(shù)據(jù)的物理存放位置。透明的分布式更新是通過自動(dòng)的兩階段提交技術(shù)實(shí)現(xiàn)的。Oracle自動(dòng)協(xié)調(diào)各服務(wù)器事務(wù),操作要么一起成功,要么一起失敗,以保護(hù)分布式環(huán)境下的數(shù)據(jù)在任一時(shí)刻都于一致的狀態(tài)。分布式數(shù)據(jù)復(fù)制技術(shù)有實(shí)時(shí)復(fù)制(Real-time Replication)、存儲(chǔ)轉(zhuǎn)發(fā)復(fù)制(Stored-and-forward Replication)、以及基于時(shí)間的復(fù)制(Time-based Replication)等三種方式。如實(shí)時(shí)復(fù)制,根據(jù)應(yīng)用實(shí)際需要,在本地服務(wù)器上生成一個(gè)數(shù)據(jù)庫(kù)觸發(fā)器(Database trigger),一旦本地?cái)?shù)據(jù)庫(kù)有數(shù)據(jù)操作,立即將所需復(fù)制數(shù)據(jù)一次復(fù)制到多個(gè)分布式節(jié)點(diǎn)上,而且是與本地操作同步執(zhí)行。存儲(chǔ)轉(zhuǎn)發(fā)復(fù)制,由Oracle提供的復(fù)制日志實(shí)現(xiàn),即把所有需要復(fù)制的數(shù)據(jù)記錄在日志中,若日志記錄中的數(shù)據(jù)量達(dá)到一定的程度時(shí),Oracle自動(dòng)將日志記錄復(fù)制到各目的地上。基于時(shí)間的復(fù)制,由Oracle數(shù)據(jù)庫(kù)參數(shù)實(shí)現(xiàn),由該參數(shù)決定數(shù)據(jù)刷新的時(shí)間或間隔,Oracle會(huì)自動(dòng)按此間隔時(shí)間定期將遠(yuǎn)地節(jié)點(diǎn)的相差數(shù)據(jù)傳適到本地快照表中,并且自動(dòng)刷新,本地用戶可以利用此快照表數(shù)據(jù),并結(jié)合本地?cái)?shù)據(jù)進(jìn)行復(fù)雜的分布式查詢。以上三種方法復(fù)制的數(shù)據(jù),在使用方法上,均可做為本地?cái)?shù)據(jù)來使用。 可對(duì)其進(jìn)行查詢,修改等。對(duì)復(fù)制數(shù)據(jù)的修改,可以進(jìn)一步廣播到其他復(fù)制版及原版上,這就是所謂的數(shù)據(jù)N-向復(fù)制。對(duì)于N-向復(fù)制,Oracle有一些自動(dòng)實(shí)現(xiàn)的沖突檢測(cè)和解決技術(shù),保護(hù)N-向數(shù)據(jù)復(fù)制時(shí)的分布數(shù)據(jù)一致性。Oracle的兩階段提交加上復(fù)制技術(shù),為分布式環(huán)境下不同的應(yīng)用需求提供了靈活的選擇。例如,對(duì)于聯(lián)機(jī)事務(wù)處理的分布環(huán)境,可以選用兩階段提 交或?qū)崟r(shí)復(fù)制技術(shù),以保證分布式數(shù)據(jù)的實(shí)時(shí)的一致性。對(duì)于實(shí)時(shí)要求不太嚴(yán)格的環(huán)境,可以使用另外兩種復(fù)制技術(shù),甚至在同一種系統(tǒng)中某些數(shù)據(jù)操作可選用實(shí)時(shí)的方法,某些數(shù)據(jù)操作可以選用異步的方法。Oracle以完整而且靈活的分布式處理技術(shù),來滿足不同應(yīng)用環(huán)境的需要。除此這外,Oracle還有分布式環(huán)境下的自動(dòng)查詢優(yōu)化,分布式死鎖檢測(cè)和自動(dòng)解鎖、分布式環(huán)境下的數(shù)據(jù)庫(kù)治理、分布式數(shù)據(jù)庫(kù)全局命名機(jī)制等。 所有這些功能,均從更大范圍實(shí)現(xiàn)了數(shù)據(jù)庫(kù)的分布式處理。在Sybase中, Adaptive Server Enterprise是RDBMS的核心,主要是為Client/Server結(jié)構(gòu)設(shè)計(jì)的 ,為了適應(yīng)分布式數(shù)據(jù)庫(kù)系統(tǒng)環(huán)境,另外提供了復(fù)制服務(wù)(Replication Server)和 多功能通用網(wǎng)關(guān)(Enterprise Connect)。其中,復(fù)制服務(wù)器(Replication Server)從功能處理上同Oracle中的存儲(chǔ)轉(zhuǎn)發(fā)復(fù)制(Stored-and-forward Replication)類似,它提供分布式條件下的異步復(fù)制,它通過不斷地將主表上的更新傳遞到復(fù)制的備份上,當(dāng)系統(tǒng)的局部出現(xiàn)故障時(shí),不致影響整個(gè)系統(tǒng)。一旦網(wǎng)絡(luò)上故障排除,這種服務(wù)器將可以以同步方式恢復(fù)分布式數(shù)據(jù)庫(kù)。但復(fù)制服務(wù)器本身成為一個(gè)單故障點(diǎn),假如它出了問題,整個(gè)系統(tǒng)的所有復(fù)制均無(wú)法進(jìn)行。多功能通用網(wǎng)關(guān)(Enterprise Connect)解決地點(diǎn)的透明性和數(shù)據(jù)庫(kù)的透明性。這兩個(gè)產(chǎn)品并不集成在數(shù)據(jù)庫(kù)核心中,需額外的許可證費(fèi)用。Sybase不具備自動(dòng)的服務(wù)器與服務(wù)器之間自動(dòng)協(xié)調(diào)和兩階段提交技術(shù) ,分布式條件下的查詢和更新必須由ASE和多功能通用網(wǎng)關(guān)以及復(fù)制服務(wù)器共同協(xié)調(diào)實(shí)現(xiàn)。所以,Sybase提供給用戶大量的編程庫(kù),用戶可通過編程實(shí)現(xiàn)分布式處理。Sybase強(qiáng)調(diào)其靈活性,強(qiáng)調(diào)用戶能做任何事情,但這是與高集成性 的發(fā)展趁勢(shì)背道而馳的,用戶需要做大量的編程工作,這也是Sybase不足之處。10、數(shù)據(jù)完整性控制Oracle具有一套完整的數(shù)據(jù)庫(kù)完整性控制機(jī)制,這些控制也是直接嵌入Oracle核心中實(shí)現(xiàn)的。如:實(shí)體完整性約束、自動(dòng)對(duì)表中字段的取值進(jìn)行正確與否的判定、自動(dòng)的引用完整性約束、可自動(dòng)對(duì)多張表進(jìn)行相互制約的控 制等。實(shí)體完整性以及引用完整性均為申明式的,就是說,只要簡(jiǎn)單地建立或修改表的定義完整性規(guī)則,以后Oracle DBMS會(huì)自動(dòng)實(shí)施這些約束。這樣把應(yīng)用開發(fā)和維護(hù)成本降到了最低(因?yàn)闆]有代碼),也改善了應(yīng)用可靠性(由DBMS 來確保實(shí)施),并且降低實(shí)施開銷(Oracle優(yōu)化約束實(shí)施操作)。另外,Oracle還提供用PL/SQL書寫的存儲(chǔ)過程的觸發(fā)器,在多個(gè)層次上實(shí)施很復(fù)雜的商業(yè)規(guī)則。存儲(chǔ)過程及觸發(fā)器可以包含一條或多條SQL語(yǔ)句, 也可以包含多個(gè)PL/SQL程序塊,它們經(jīng)編譯后存儲(chǔ)在Oracle中。存儲(chǔ)過程 可以被其他Oracle工具調(diào)用,并支持遠(yuǎn)程客戶的調(diào)用,這就是遠(yuǎn)過程調(diào)用。觸發(fā)器則會(huì)在每次對(duì)數(shù)據(jù)進(jìn)行插入、更新、刪除時(shí),自動(dòng)被觸發(fā)。Oracle觸發(fā)器有很強(qiáng)的功能,如每當(dāng)一種特定部件的庫(kù)存下降超過一定界限時(shí),一個(gè)觸發(fā)器可以自動(dòng)生成一個(gè)新的定單,觸發(fā)器可用于維護(hù)導(dǎo)出數(shù)據(jù),執(zhí)行基于內(nèi)容的審計(jì),以及執(zhí)行同步的表副本復(fù)制。觸發(fā)器可在觸發(fā)語(yǔ)句之前或之后執(zhí)行(或稱事前觸發(fā)及事后觸發(fā));既可以是由一條語(yǔ)句也可以是由每一行觸發(fā)執(zhí)行。Oracle強(qiáng)有力的觸發(fā)器嚴(yán)格遵從ANSI SQL中的標(biāo)準(zhǔn)定義。在Sybase中,由Adaptive Server集中實(shí)現(xiàn)數(shù)據(jù)完整性控制。支持申明 定義完整性約束。用Datatype、Default、Rule等來提供字段完整性及字段與表的關(guān)系,用觸發(fā)器實(shí)現(xiàn)參照完整性。Sybase中的數(shù)據(jù)完整性控制相對(duì)Oracle來說顯得非常有限。實(shí)體完整性提供的功能顯得非常不足,往往需要用戶在程序中加入很多有關(guān)實(shí)體完整性的控制代碼,執(zhí)行效率不高,系統(tǒng)可適應(yīng)性不好,如加或減一個(gè)實(shí)體約束往往需要修應(yīng)用程序。其觸發(fā)器實(shí)現(xiàn)的是事后回退方式,假如一個(gè)事務(wù)引進(jìn)一連串的事務(wù)回退,勢(shì)必降低事務(wù)的處理能力。11、數(shù)據(jù)庫(kù)安全控制Oracle的安全控制機(jī)制,是由系統(tǒng)權(quán)限、數(shù)據(jù)權(quán)限、角色權(quán)限這三級(jí)體系結(jié)構(gòu)組成的。所謂系統(tǒng)權(quán)限,是指對(duì)數(shù)據(jù)庫(kù)系統(tǒng)及數(shù)據(jù)結(jié)構(gòu)的操作權(quán),例如 :創(chuàng)建/刪除數(shù)據(jù)鏈路、同義詞、審計(jì)、索引、存儲(chǔ)過程、觸發(fā)器等等。所謂數(shù)據(jù)權(quán)限,是指用戶對(duì)數(shù)據(jù)的操作權(quán),如查詢、更新、完整性約束、運(yùn)行存儲(chǔ)過程等等。所謂角色權(quán)限,是把幾個(gè)相關(guān)的權(quán)限組織成角色,角色之間可以進(jìn)一步組合而成為多層次的樹型結(jié)構(gòu),這是Oracle把現(xiàn)實(shí)世界中的行政治理方式融入RDBMS中。角色權(quán)限除了限制操作權(quán)、控制權(quán)外,還能限制執(zhí)行某些應(yīng)用程序的權(quán)限。這樣安全控制體系,使得整個(gè)系統(tǒng)的治理人員及程序開發(fā)人員能控制系統(tǒng)命令的運(yùn)行、數(shù)據(jù)的操作以及應(yīng)用程度的執(zhí)行。這一安全體系已通過了美國(guó)計(jì)算機(jī)(NCSC)C2級(jí)標(biāo)準(zhǔn)的測(cè)試。實(shí)際上,對(duì)命令運(yùn)行權(quán)及應(yīng)用執(zhí)行權(quán)的控制,已超出了C2級(jí)標(biāo)準(zhǔn)。在一些安全級(jí)別達(dá)到B1級(jí)標(biāo)準(zhǔn)的操作系統(tǒng)平臺(tái)上, Oracle還有以B1級(jí)標(biāo)準(zhǔn)建立的Oracle產(chǎn)品,B1級(jí)產(chǎn)品的主要特點(diǎn)是除了以對(duì)象名(表名、列名、索引等)為基礎(chǔ)來限制存取的離散型安全治理外,還有以數(shù)據(jù)安全程度為基礎(chǔ)來限制存取的強(qiáng)制型安全治理。Oracle還提供了虛擬私有數(shù)據(jù)庫(kù)(Virtual Private Database), 實(shí)現(xiàn)了行級(jí)加密。不同的用戶訪問同一張表將是不同的數(shù)據(jù)集,再也無(wú)需在應(yīng)用里作任何控制。另外,Oracle可按系統(tǒng)和用戶的要求,可對(duì)表及視圖進(jìn)行各種審計(jì),完成對(duì)數(shù)據(jù)庫(kù)系統(tǒng)的審計(jì)追蹤,如:什么用戶參與了哪些操作,操作的對(duì)象,操作數(shù)據(jù)的記錄及操作成功與否等。以此可以檢測(cè)異常或可疑用戶的操作,以及未授權(quán)的訪問。除了保障數(shù)據(jù)庫(kù)一級(jí)的安全性外,Oracle公司還提供了安全的網(wǎng)絡(luò)服務(wù)。通過Oracle安全網(wǎng)絡(luò)服務(wù),在網(wǎng)絡(luò)上傳遞的SQL語(yǔ)句、查詢結(jié)果、存儲(chǔ)過程調(diào)用、數(shù)據(jù)復(fù)制、用戶口令等所有信息,都可以經(jīng)RC4或DES加密傳遞,使數(shù)據(jù)在傳送過程中,不被泄密。同時(shí),Oracle公司的安全網(wǎng)絡(luò)服務(wù)還支持帶有序列號(hào)的校驗(yàn)和算法(MD5),保證數(shù)據(jù)在傳送過程中不被非法修改;數(shù)據(jù)包不被重發(fā),漏發(fā)。Oracle的安全網(wǎng)絡(luò)服務(wù)是通過純軟件的方式實(shí)現(xiàn),具有成本低、硬件無(wú)關(guān)、協(xié)議無(wú)關(guān)的特點(diǎn)。Oracle公司是唯一一家提供安全網(wǎng)絡(luò)服務(wù)的數(shù)據(jù)庫(kù)公司。Sybase對(duì)數(shù)據(jù)庫(kù)的安全性控制是比較初級(jí)的。其主要特性有 :明確的登錄識(shí)別、加密的口令和口令的截止日期、命名的系統(tǒng)治理員以及系統(tǒng)是否登錄成功、用戶在數(shù)據(jù)庫(kù)中的活動(dòng)等等。Sybase的安全控制定位于NCSC的C2級(jí)安全標(biāo)準(zhǔn)。12、數(shù)據(jù)倉(cāng)庫(kù)的支持對(duì)數(shù)據(jù)倉(cāng)庫(kù)的支持是Oracle數(shù)據(jù)庫(kù)的傳統(tǒng)的應(yīng)用領(lǐng)域,也有許多成功的范例。數(shù)據(jù)倉(cāng)庫(kù)應(yīng)用一般體現(xiàn)為操作比較復(fù)雜,涉及到的數(shù)據(jù)量比較大,但并發(fā)工作的程度不太多,對(duì)速度的要求也不太強(qiáng)烈,這類應(yīng)用除了要求數(shù)據(jù)庫(kù)系統(tǒng)有較強(qiáng)的數(shù)據(jù)治理手段,如:完整性控制、安全性控制、 可靠性保障等之外,還非凡要求數(shù)據(jù)庫(kù)系統(tǒng)能支持大數(shù)據(jù)量,支持有效的語(yǔ)句優(yōu)化,強(qiáng)有力的統(tǒng)計(jì)功能以及較強(qiáng)的批處理能力等,在分布式環(huán)境的應(yīng)用中,還要求數(shù)據(jù)庫(kù)能支持較強(qiáng)的穿透查詢(透明查詢)等。Oracle對(duì)數(shù)據(jù)庫(kù)對(duì)于數(shù)據(jù)完整性控制、安全性、可靠性等,均有較完善的技術(shù)。分布式透明查詢,表和索引的分區(qū)也是Oracle的優(yōu)點(diǎn),針對(duì)決策支持系統(tǒng),Oracle還有許多相適應(yīng)的機(jī)制,保證決策支持系統(tǒng)的成功及效率。Oracle能支持大型及超大型數(shù)據(jù)庫(kù)系統(tǒng),在應(yīng)用實(shí)例中,Oracle支持的最大數(shù)據(jù)庫(kù)為幾十個(gè)TB。從技術(shù)的角度上著,Oracle所支持的數(shù)據(jù)庫(kù)最大容量的限制為512PB(1PB=1024TB),所以實(shí)際上只取決于硬盤空間。當(dāng)數(shù)據(jù)庫(kù)需要擴(kuò)充時(shí),Oracle只需要一條命令就可擴(kuò)充數(shù)據(jù)庫(kù),而不需要引起整個(gè)數(shù)據(jù)庫(kù)的重構(gòu)。另外,Oracle還提供了豐富的數(shù)據(jù)分區(qū)技術(shù),使對(duì)大量歷史數(shù)據(jù)的治理更加方便,處理更有效率。對(duì)于超大規(guī)模數(shù) 據(jù)量的支持,以及有效的數(shù)據(jù)分區(qū)手段,為決策支持應(yīng)用系統(tǒng)奠定了堅(jiān)實(shí)的基 礎(chǔ)。決策支持系統(tǒng)一般會(huì)涉及到許多不同要求的統(tǒng)計(jì)以及科學(xué)計(jì)算等,Oracle提供的SQL語(yǔ)句,在滿足了SQL評(píng)議的標(biāo)準(zhǔn)要求之外,還有豐富的函數(shù)及計(jì)算功能,如單值函數(shù)(數(shù)字型、字符型等等)、強(qiáng)有力的集合運(yùn)算、日期函數(shù) ,Cube和Rollup, Rank (Top-N ), Rate, Sample(取樣)等等,這些函數(shù)的靈活運(yùn)用,不僅能大大簡(jiǎn)化應(yīng)用程序的編程,并且可以直接在Oracle的內(nèi)存緩沖區(qū)直接計(jì)算,減少了大量數(shù)據(jù)在數(shù)據(jù)庫(kù)及應(yīng)用程序之間的交換,加快運(yùn)行的效率。另外,Oracle還有靈活的查詢優(yōu)化機(jī)制,確保查詢操作的快速完成。對(duì)涉及到較大的數(shù)據(jù)量,可能需要較長(zhǎng)時(shí)間來處理的查詢語(yǔ)句,Oracle能自動(dòng)將其分解成幾個(gè)部分,利用Oracle核心的多線索多進(jìn)程結(jié)構(gòu),進(jìn)行多線索的并行處理。同時(shí),對(duì)于大數(shù)據(jù)量的I/O操作,Oracle也能充分利用并行的I/O處理,把較浪費(fèi)時(shí)間的I/O,操作利用并行的方式降低系統(tǒng)等待的時(shí)間。Oracle已申請(qǐng)專利的位圖索引,星型并行查詢技術(shù)尤其適用于數(shù)據(jù)倉(cāng)庫(kù)的查詢。Oracle還具有支持極強(qiáng)的批處理能力,如數(shù)據(jù)庫(kù)核心中的SQL*Loader,提高了數(shù)據(jù)庫(kù)批量加截的速度,SQL*Plus也具有極強(qiáng)的處理能力,能以批處理方式進(jìn)行數(shù)據(jù)訪問,及數(shù)據(jù)更新。Sybase支持大型及超大型數(shù)據(jù)庫(kù)的能力很差,完整性約束依靠事后觸發(fā)回退、復(fù)制服務(wù)器、多功能通用網(wǎng)關(guān)以及用戶編程一起協(xié)調(diào)實(shí)現(xiàn);分布式處理?xiàng)l件下的查詢和修改均不是以自動(dòng)透明方式進(jìn)行,復(fù)制無(wú)法利用兩階段提交技術(shù),只能采用異步方式;查詢 優(yōu)化單一,語(yǔ)句的分解優(yōu)化過重依靠于用戶來提高性能;并行處理能力以及批處理能力都很弱。從這些數(shù)據(jù)倉(cāng)庫(kù)應(yīng)用的要害技術(shù)來說,可以說Sybase ASE的數(shù)據(jù)倉(cāng)庫(kù)支持能力是非常差的。所以Sybase購(gòu)買了一個(gè)產(chǎn)品來彌補(bǔ)這方面的缺陷,并改名為Sybase IQ. 但這個(gè)產(chǎn)品與Sybase ASE并不兼容,不能象訪問ASE一樣通過T-SQL訪問。它通過建立基于位的索引加快查詢。但它只能用于查詢,而且當(dāng)數(shù)據(jù)量超過GB級(jí)以后性能會(huì)有明顯的下降。并發(fā)訪問的用戶很有限,因?yàn)槊總€(gè)連接都會(huì)消耗大量?jī)?nèi)存。所以Sybase IQ的可伸縮性較差,不適用于大規(guī)模的數(shù)據(jù)倉(cāng)庫(kù)。
主站蜘蛛池模板: 在线xxxx| 久久综合狠狠综合久久综合88 | 国产精品久久国产精品99 gif | 二区在线视频 | 久久视频在线播放视频99re6 | 日韩黄色 | 日韩在线观看中文字幕 | 国产男女乱淫真视频全程播放 | 国产区二区 | 成人社区网站 | 麻豆国产精品一二三在线观看 | 欧美限制级在线 | 国产精品第4页 | 欧美三级成人 | 人人狠狠综合久久亚洲88 | 欧美日韩在线观看一区 | 一区二区三区免费视频 www | 一级做a爰片性色毛片2021 | 国产白领丝袜办公室在线视频 | 国产各种盗摄视频 | 亚洲欧美日韩成人一区在线 | 国产91香蕉视频 | 免费a级片在线观看 | 国产精品高清久久久久久久 | 色成人亚洲 | 91在线播放免费不卡无毒 | 国产精品天天看特色大片不卡 | 一区二区免费视频观看 | www.青青草 | 久久精品视香蕉蕉er大臿蕉 | 亚洲国产精品久久综合 | 免费看影片的网站入口 | 九九视频只有精品 | 亚洲欧美第一页 | 国产一区91| 国产乱码在线精品可播放 | 2022国产成人精彩在线视频 | 大学生毛片a左线播放 | 久久精品网站免费观看 | 国产自愉怕一区二区三区 | 香蕉视频在线网站 |