av激情亚洲男人的天堂国语,日韩欧美精品一中文字幕,无码av一区二区三区无码,国产又色又爽又刺激的a片,国产又色又爽又刺激的a片

SQL數(shù)據(jù)庫即將萬劫不復(fù)?霸王也有別姬時(shí)

對(duì)于NoSQL的興起,數(shù)據(jù)庫頻道之前曾報(bào)道過《云計(jì)算時(shí)代NoSQL當(dāng)?shù)?關(guān)系數(shù)據(jù)庫日薄西山》,我們認(rèn)為這是數(shù)據(jù)庫技術(shù)進(jìn)步的體現(xiàn)。無論多么輝煌的數(shù)據(jù)庫技術(shù),也有被淘汰的時(shí)候,我們不免要經(jīng)歷一次“霸王別姬”。

專注于為中小企業(yè)提供成都網(wǎng)站建設(shè)、做網(wǎng)站服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)懷安免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動(dòng)了上1000+企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。

SQL 的發(fā)展起始于 E.F.Codd 博士1970年六月發(fā)表于計(jì)算機(jī)協(xié)會(huì)的“通信”上的一篇論文, “大型共享數(shù)據(jù)庫的關(guān)系模型“。當(dāng)時(shí)他和他的在IBM工作的同事 Donald Chamberlin 和 Raymond Boyce正在研究一種查詢語言(最初叫做SQUARE, Specifying Queries As RelationalExpressions的首字母縮寫),并于1974年以論文”SEQUEL:A Structured English Query Language“將此成就推向頂峰。從此以后,SQL就成了關(guān)系數(shù)據(jù)庫系統(tǒng)的最主要的語言。近些年,軟件開發(fā)業(yè)內(nèi)出現(xiàn)了一些體系框架和架構(gòu),主要目的是試圖隱藏(或完全放棄)直接使用SQL和關(guān)系數(shù)據(jù)庫,讓開發(fā)人員能夠在應(yīng)用開發(fā)中專注于用戶界面,業(yè)務(wù)邏輯和平臺(tái)支持上。同時(shí)出現(xiàn)了一批被認(rèn)為是關(guān)系型數(shù)替代品,稱之為”NoSQL”的數(shù)據(jù)庫。難道我們能夠成為 SQL和關(guān)系型數(shù)據(jù)庫終結(jié)的見證人嗎?

在一個(gè)由Mike Riley主持的十二月 DDJ podcast 訪談中,我被問到:“隨著ORMs(Object Relational Mapping對(duì)象關(guān)系映射)的流行,有些軟件開發(fā)者們認(rèn)為SQL已經(jīng)失去其價(jià)值了。你對(duì)這種觀點(diǎn)有什么看法?”我整個(gè)新年假期都在想這個(gè)問題,思考這個(gè)問題所隱含的意義已及ORM的未來,我花一段時(shí)間研究了一下像 Ruby on Rails Active Record 和 Hibernate 這樣的框架。這些框架仍然需要開發(fā)人員掌握關(guān)系數(shù)據(jù)的設(shè)計(jì)、開發(fā)和維護(hù)等知識(shí)。 Microsoft所開發(fā)的LINQ(.NET Language Integrated Query)也只是減少了編程語言和數(shù)據(jù)庫語言之間的不兼容問題。

“NoSQL運(yùn)動(dòng)”和分布式數(shù)據(jù)存儲(chǔ)(Cloud based data stores)都是致力于徹底的將開發(fā)人員和SQL語言和關(guān)系數(shù)據(jù)庫之間的依存斬?cái)唷R恍┏绦騿T認(rèn)為 NoSQL 運(yùn)動(dòng)是一種全新的感念。面向?qū)ο笫綌?shù)據(jù)庫(Object databases)最早出現(xiàn)于19世紀(jì)80年代, Ray Ozzie 于19世紀(jì)90年代最早將它商用于Lotus Notes的文檔數(shù)據(jù)存儲(chǔ)業(yè)務(wù)。

Charlie Caro, 資深軟件工程師,在美國 Embarcadero 開發(fā) InterBase SQL 數(shù)據(jù)庫引擎,他告訴我:“在以前,人們普遍認(rèn)為,不對(duì)數(shù)據(jù)的并發(fā)操作進(jìn)行控制的數(shù)據(jù)庫基本不可能被大家廣泛接受。但Ozzie認(rèn)識(shí)到,分布式、可復(fù)制性和易于安裝的特征所帶來的好處遠(yuǎn)勝于在管理文檔數(shù)據(jù)和消息時(shí)很少能遇到的并發(fā)更新沖突控制所帶來的好處。而且,如果文檔數(shù)據(jù)如果需要確保被正確的修改、不能丟失數(shù)據(jù),我們可以把配置切換到并發(fā)控制狀態(tài)上,這是可選擇的。但缺省狀態(tài)是不考慮更新沖突控制的。”

NoSQL, 根據(jù)WikiPedia上的解釋,是 “一種泛稱(umbrella term),指那些非關(guān)系性的、定義不是很明確的數(shù)據(jù)存儲(chǔ)倉庫?!斑@個(gè)術(shù)語最早是 Rackspace 公司 的員工 Eric Evans 發(fā)明的。在他上年十月發(fā)表的博客里出現(xiàn)了NoSQL (現(xiàn)在普遍認(rèn)為是 Not Only SQL 的意思) 這個(gè)詞。這篇博客里真正的閃光點(diǎn)是”我們之所以要尋找一個(gè)其它類型的數(shù)據(jù)庫的根本原因是想解決關(guān)系型數(shù)據(jù)庫存在的各種弊端?!癆dam Keys 在他的博客The Real Adam blog post提供了另一個(gè)相似的術(shù)語:”Post-Relational”。一些 NoSQL數(shù)據(jù)庫還把消除那種關(guān)系型數(shù)據(jù)庫對(duì)計(jì)算機(jī)資源、內(nèi)存占用的問題作為一個(gè)目標(biāo)。NoSQL的其他目標(biāo)還包括:弱化與編程語言的關(guān)系,使用Web技術(shù)和RPC調(diào)用方式可訪問,以及可切換的數(shù)據(jù)查詢方式。

在最近的一篇博客“關(guān)于NoSQL的討論其實(shí)與SQL無關(guān)”里 Michael Stonebraker 教授將 SQL 和NoSQL 數(shù)據(jù)庫進(jìn)行了對(duì)比。SQL 和 NoSQL 數(shù)據(jù)庫可以通過下面的幾個(gè)特性和性能進(jìn)行部分或全面比較 (注意:應(yīng)該有更多的特征可以添加到下面的列表里。歡迎在評(píng)論里追加你認(rèn)為能夠區(qū)別這兩種數(shù)據(jù)庫的特征):

橫向和縱向擴(kuò)展能力 – 關(guān)系型數(shù)據(jù)庫(傳統(tǒng)的數(shù)據(jù)庫)通常部署在一臺(tái)服務(wù)器上,通過增加處理器、內(nèi)存和硬盤來進(jìn)行升級(jí)。部署在多臺(tái)服務(wù)器上的關(guān)系型數(shù)據(jù)庫通常是依賴相互復(fù)制來保持?jǐn)?shù)據(jù)同步。NoSQL 數(shù)據(jù)庫可以部署在單服務(wù)器上,但更多的是部署成云狀分布式 (NoSQL:分布式和可擴(kuò)展的非關(guān)系型數(shù)據(jù)庫系統(tǒng))。

列,key/value存儲(chǔ),數(shù)組(Tuples)存儲(chǔ) – 關(guān)系型數(shù)據(jù)庫通常是有表或視圖里的字段構(gòu)成(固定的結(jié)構(gòu),用各種操作相互關(guān)聯(lián))。NoSQL 數(shù)據(jù)庫通常存儲(chǔ)的是一對(duì)鍵值或 數(shù)組式(Tuples) (結(jié)構(gòu)不固定,只是一個(gè)有順序的數(shù)據(jù)隊(duì)列)。 數(shù)據(jù)的內(nèi)存和硬盤使用 – 關(guān)系型數(shù)據(jù)庫通常是駐留在一個(gè)硬盤內(nèi)或一個(gè)網(wǎng)絡(luò)存儲(chǔ)空間里。SQL查詢或存儲(chǔ)過程操作會(huì)把數(shù)據(jù)集提取到內(nèi)存空間里。一些 (并不是全部) NoSQL 數(shù)據(jù)庫可以直接在硬盤上操作,也可以通過內(nèi)存來加快速度。

面向文檔型(Document-Oriented), 面向集合型(Collection-Oriented), 面向列型(Column-Oriented);

面向?qū)ο笮停∣bject-Oriented), 面向有序集合型(Set-Oriented), 面向行型(Row-Oriented)。

面向文檔型數(shù)據(jù)庫存儲(chǔ)的是文檔、屬性和XML。面向集合型的數(shù)據(jù)集提供了更適合面向?qū)ο缶幊陶Z言的特性。關(guān)系型數(shù)據(jù)庫的特性是用表,行,列(面向列型)來組織數(shù)據(jù)。SQL查詢操作通常返回的是指向包含特定列的某行或某些行的集合的指針。面向?qū)ο蟮臄?shù)據(jù)庫之所以出現(xiàn)是由于面向?qū)ο蟮木幊痰牧餍?,但目前為止(以及將來很多年里)關(guān)系型數(shù)據(jù)庫仍是數(shù)據(jù)存儲(chǔ)模式里占有霸主地位。面向?qū)ο笮蛿?shù)據(jù)庫也是 NoSQL 數(shù)據(jù)庫嗎? 對(duì)象關(guān)系映射(ORM)框架的興起將面向?qū)ο缶幊毯痛蠖鄶?shù)關(guān)系型數(shù)據(jù)緊緊的綁到了一起。 NoSQL 數(shù)據(jù)庫里的數(shù)據(jù)通常是存儲(chǔ)成對(duì)象、key/value、或數(shù)組(tuples)形式。 NoSQL 數(shù)據(jù)庫的查詢操作通常由編程代碼或一個(gè)接口完成。

在一次郵件交流里,Charlie Caro 對(duì)我說了下面的話:”如果 Facebook 需要去管理 100,000,000個(gè)用戶的個(gè)人信息,一個(gè)分布式的、不依賴于環(huán)境的,key-value形式的存儲(chǔ)模式是最適合不過了。在這樣大數(shù)量的用戶里查詢會(huì)沒有問題,但只要一個(gè)用戶的更新操作就可能讓傳統(tǒng)的數(shù)據(jù)庫過載宕機(jī)。多用戶讀數(shù)據(jù)時(shí)一個(gè)用戶更新數(shù)據(jù),這需要并發(fā)控制。在多數(shù)情況下,NoSQL方案之所以能吸引它的用戶群的原因是它的易于安裝和使用的特征,SQL數(shù)據(jù)庫需要較多的運(yùn)行條件(schema 等),但正是這些schema方案給了并行關(guān)系型數(shù)據(jù)系統(tǒng)的高性能。易使用的好處更多的是體現(xiàn)在編程開發(fā)的時(shí)候。今天的許多程序員都更傾向于使用腳本語言,而不是相同功能的更安全的靜態(tài)類型檢查的編譯型語言。腳本型語言只是容錯(cuò)性強(qiáng)和易于上手,有些軟件能把這些腳本程序編譯成.NET/Java字節(jié)碼來提高運(yùn)行性能?!?我和他都認(rèn)為,所有的這一切都是為了讓我們?cè)诠ぷ髦杏懈玫墓ぞ呤褂?,而且從來都是這樣!當(dāng)有螺絲刀時(shí)誰還用錘子去釘螺絲釘。

在“SQL數(shù)據(jù)庫的終結(jié)– 第二篇(共三篇)”中,我們以同樣的視角來看一看目前已經(jīng)出現(xiàn)的一些開源的或非開源的NoSQL數(shù)據(jù)庫。之后在”SQL 數(shù)據(jù)庫的終結(jié) – 第三篇” 中,我將會(huì)告訴大家一些因特網(wǎng)上關(guān)于NoSQL的資料,過去和將要發(fā)生的事件,以及一些相關(guān)指導(dǎo)。

數(shù)年以后,我估計(jì)我們大多數(shù)還是要依賴于關(guān)系數(shù)據(jù)庫和SQL。我當(dāng)然有愿望,我將會(huì)不斷的研究尋找更好的方式去弱化和封裝數(shù)據(jù)訪問操作。一直以來,任何工程決策都是跟用戶和業(yè)務(wù)需求相適應(yīng)的。對(duì)于以后的軟件工程來說,我相信,我們一定會(huì)找到一個(gè)合適的非關(guān)系型數(shù)據(jù)存儲(chǔ)產(chǎn)品。你是否正在使用非關(guān)系型數(shù)據(jù)庫呢?你是否已經(jīng)放棄了SQL和關(guān)系型數(shù)據(jù)庫呢?你是否正在把你的數(shù)據(jù)轉(zhuǎn)移到一個(gè)公共的或私有的云數(shù)據(jù)庫里呢?請(qǐng)發(fā)表評(píng)論。

編程就是人生!

相關(guān)閱讀

NoSQL,意即反SQL運(yùn)動(dòng),是一項(xiàng)全新的數(shù)據(jù)庫革命性運(yùn)動(dòng),早期就有人提出,發(fā)展至2009年趨勢(shì)越發(fā)高漲。NoSQL的擁護(hù)者們提倡運(yùn)用非關(guān)系型的數(shù)據(jù)存儲(chǔ),相對(duì)于目前鋪天蓋地的關(guān)系型數(shù)據(jù)庫運(yùn)用,這一概念無疑是一種全新的思維的注入。

現(xiàn)今的計(jì)算機(jī)體系結(jié)構(gòu)在數(shù)據(jù)存儲(chǔ)方面要求具備龐大的水平擴(kuò)展性,而NoSQL致力于改變這一現(xiàn)狀。目前Google的 BigTable 和Amazon 的Dynamo使用的就是NoSQL型數(shù)據(jù)庫。
NoSQL項(xiàng)目的名字上看不出什么相同之處,但是,它們通常在某些方面相同:它們可以處理超大量的數(shù)據(jù)。

這場(chǎng)革命目前仍然需要等待。的確,NoSQL對(duì)大型企業(yè)來說還不是主流,但是,一兩年之后很可能就會(huì)變個(gè)樣子。在NoSQL運(yùn)動(dòng)的***一次聚會(huì)中,來自世界各地的150人擠滿了CBS Interactive的一間會(huì)議室。分享他們?nèi)绾瓮品徛嘿F的關(guān)系數(shù)據(jù)庫的暴政,怎樣使用更有效和更便宜的方法來管理數(shù)據(jù)。

“關(guān)系型數(shù)據(jù)庫給你強(qiáng)加了太多東西。它們要你強(qiáng)行修改對(duì)象數(shù)據(jù),以滿足RDBMS (relational database management system,關(guān)系型數(shù)據(jù)庫管理系統(tǒng))的需要,”在NoSQL擁護(hù)者們看來,基于NoSQL的替代方案“只是給你所需要的”。

鏈接:http://news.cnblogs.com/n/59905/

【更多關(guān)于數(shù)據(jù)庫發(fā)展的趨勢(shì)性報(bào)道】

  1. 云計(jì)算使關(guān)系數(shù)據(jù)庫逐漸落伍
  2. 2009年云數(shù)據(jù)庫的開發(fā)和應(yīng)用前景
  3. 關(guān)系數(shù)據(jù)庫的末日是否已經(jīng)來臨
  4. 超越關(guān)系型數(shù)據(jù)庫 pureXML技術(shù)應(yīng)用及展望
  5. 新興數(shù)據(jù)庫打破整個(gè)舊規(guī)則
  6. 探尋關(guān)系數(shù)據(jù)庫和ORM的***替代者

本文題目:SQL數(shù)據(jù)庫即將萬劫不復(fù)?霸王也有別姬時(shí)
當(dāng)前URL:http://uogjgqi.cn/article/djpgecp.html
掃二維碼與項(xiàng)目經(jīng)理溝通

我們?cè)谖⑿派?4小時(shí)期待你的聲音

解答本文疑問/技術(shù)咨詢/運(yùn)營咨詢/技術(shù)建議/互聯(lián)網(wǎng)交流