一区二区久久-一区二区三区www-一区二区三区久久-一区二区三区久久精品-麻豆国产一区二区在线观看-麻豆国产视频

SQL數(shù)據(jù)庫(kù)的終結(jié)?

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

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

  “NoSQL 運(yùn)動(dòng)”和 分布式數(shù)據(jù)存儲(chǔ)(Cloud based data stores) 都是致力于徹底的將開(kāi)發(fā)人員和SQL語(yǔ)言和關(guān)系數(shù)據(jù)庫(kù)之間的依存斬?cái)唷R恍┏绦騿T認(rèn)為 NoSQL 運(yùn)動(dòng)是一種全新的感念。 面向?qū)ο笫綌?shù)據(jù)庫(kù)(Object databases) 最早出現(xiàn)于19世紀(jì)80年代, Ray Ozzie 于19世紀(jì)90年代最早將它商用于Lotus Notes的文檔數(shù)據(jù)存儲(chǔ)業(yè)務(wù)。
  Charlie Caro,資深軟件工程師,在美國(guó) Embarcadero 開(kāi)發(fā) InterBase SQL 數(shù)據(jù)庫(kù) 引擎,他告訴我:“在以前,人們普遍認(rèn)為,不對(duì)數(shù)據(jù)的并發(fā)操作進(jìn)行控制的數(shù)據(jù)庫(kù)基本不可能被大家廣泛接受。但 Ozzie 認(rèn)識(shí)到,分布式、可復(fù)制性和易于安裝的特征所帶來(lái)的好處遠(yuǎn)勝于在管理文檔數(shù)據(jù)和消息說(shuō)很少能遇到的并發(fā)更新沖突控制所帶來(lái)的好處。而且,如果文檔數(shù)據(jù)如果需要確保被正確的修改、不能丟失數(shù)據(jù),我們可以把配置切換到并發(fā)控制狀態(tài)上,這是可選擇的。但缺省狀態(tài)是不考慮更新沖突控制的。”

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

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

  • 橫向和縱向擴(kuò)展能力–關(guān)系型數(shù)據(jù)庫(kù)(傳統(tǒng)的數(shù)據(jù)庫(kù))通常部署在一臺(tái)服務(wù)器上,通過(guò)增加處理器、內(nèi)存和硬盤來(lái)進(jìn)行升級(jí)。部署在多臺(tái)服務(wù)器上的關(guān)系型數(shù)據(jù)庫(kù)通常是依賴相互復(fù)制來(lái)保持?jǐn)?shù)據(jù)同步。 NoSQL 數(shù)據(jù)庫(kù)可以部署在單服務(wù)器上,但更多的是部署成云狀分布式(NoSQL:分布式和可擴(kuò)展的非關(guān)系型數(shù)據(jù)庫(kù)系統(tǒng))。
  • 列,key/value存儲(chǔ),數(shù)組(Tuples)存儲(chǔ)–關(guān)系型數(shù)據(jù)庫(kù)通常是有表或視圖里的字段構(gòu)成(固定的結(jié)構(gòu),用各種操作相互關(guān)聯(lián))。 NoSQL 數(shù)據(jù)庫(kù)通常存儲(chǔ)的是一對(duì)鍵值或 數(shù)組式(Tuples) (結(jié)構(gòu)不固定,只是一個(gè)有順序的數(shù)據(jù)隊(duì)列)。
  • 數(shù)據(jù)的內(nèi)存和硬盤使用–關(guān)系型數(shù)據(jù)庫(kù)通常是駐留在一個(gè)硬盤內(nèi)或一個(gè)網(wǎng)絡(luò)存儲(chǔ)空間里。SQL查詢或存儲(chǔ)過(guò)程操作會(huì)把數(shù)據(jù)集提取到內(nèi)存空間里。一些(并不是全部) NoSQL 數(shù)據(jù)庫(kù)可以直接在硬盤上操作,也可以通過(guò)內(nèi)存來(lái)加快速度。
  • 面向文檔型(Document-Oriented),面向集合型(Collection-Oriented),面向列型(Column-Oriented),
    面向?qū)ο笮停∣bject-Oriented),面向有序集合型(Set-Oriented),面向行型(Row-Oriented)– 面向文檔型
    數(shù)據(jù)庫(kù) 存儲(chǔ)的是文檔、屬性和XML。面向集合型的數(shù)據(jù)集提供了更適合面向?qū)ο缶幊陶Z(yǔ)言的特性。關(guān)系型數(shù)據(jù)庫(kù)的特性是用表,行,列(面向列型)來(lái)組織數(shù)據(jù)。 SQL 查詢操作通常返回的是指向包含特定列的某行或某些行的集合的指針。面向?qū)ο蟮臄?shù)據(jù)庫(kù)之所以出現(xiàn)是由于面向?qū)ο蟮木幊痰牧餍校壳盀橹梗ㄒ约皩?lái)很多年里)關(guān)系型數(shù)據(jù)庫(kù)仍是數(shù)據(jù)存儲(chǔ)模式里占有霸主地位。面向?qū)ο笮蛿?shù)據(jù)庫(kù)也是 NoSQL 數(shù)據(jù)庫(kù)嗎? 對(duì)象關(guān)系映射(ORM)框架的興起將面向?qū)ο缶幊毯痛蠖鄶?shù)關(guān)系型數(shù)據(jù)緊緊的綁到了一起。 NoSQL 數(shù)據(jù)庫(kù)里的數(shù)據(jù)通常是存儲(chǔ)成對(duì)象、key/value、或數(shù)組(tuples)形式。 NoSQL 數(shù)據(jù)庫(kù)的查詢操作通常由編程代碼或一個(gè)接口完成。

  在一次郵件交流里,Charlie Caro 對(duì)我說(shuō)了下面的話:”如果 Facebook 需要去管理 100,000,000 個(gè)用戶的個(gè)人信息,一個(gè)分布式的、不依賴于環(huán)境的,、key-value 形式的存儲(chǔ)模式是最適合不過(guò)了。在這樣大數(shù)量的用戶里查詢會(huì)沒(méi)有問(wèn)題,但只要一個(gè)用戶的更新操作就可能讓傳統(tǒng)的數(shù)據(jù)庫(kù)過(guò)載宕機(jī)。

  多用戶讀數(shù)據(jù)時(shí)一個(gè)用戶更新數(shù)據(jù),這需要并發(fā)控制。在多數(shù)情況下, NoSQL 方案之所以能吸引它的用戶群的原因是它的易于安裝和使用的特征, SQL 數(shù)據(jù)庫(kù)需要較多的運(yùn)行條件(schema 等),但正是這些schema方案給了并行關(guān)系型數(shù)據(jù)系統(tǒng)的高性能。易使用的好處更多的是體現(xiàn)在編程開(kāi)發(fā)的時(shí)候。今天的許多程序員都更傾向于使用腳本語(yǔ)言,而不是相同功能的更安全的靜態(tài)類型檢查的編譯型語(yǔ)言。腳本型語(yǔ)言只是容錯(cuò)性強(qiáng)和易于上手,有些軟件能把這些腳本程序編譯成.NET/Java 字節(jié)碼來(lái)提高運(yùn)行性能。”我和他都認(rèn)為,所有的這一切都是為了讓我們?cè)诠ぷ髦杏懈玫墓ぞ呤褂茫覐膩?lái)都是這樣!當(dāng)有螺絲刀時(shí)誰(shuí)還用錘子去釘螺絲釘。

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

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

  【英文出處】:Link

it知識(shí)庫(kù)SQL數(shù)據(jù)庫(kù)的終結(jié)?,轉(zhuǎn)載需保留來(lái)源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請(qǐng)第一時(shí)間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 亚洲手机国产精品 | 韩国免费特一级毛片 | 91在线视频免费观看 | 99视频精品免视3 | 成人在线视频免费观看 | 激情在线小说图片视频区 | 欧美天天色 | 视频区小说区图片区激情 | 激情五月视频 | 91视频网页| 亚洲国产二区三区久久 | 国产亚洲高清在线精品99 | 啪啪91视频 | 精品国产96亚洲一区二区三区 | 99国产国人青青视频在线观看 | 97青草香蕉依人在线播放 | 四虎永久免费在线观看 | 久久中文字幕网 | 欧美亚洲综合一区 | 亚洲精品网站在线 | 91精品久久久久久久99蜜桃 | 成人春色在线观看免费网站 | 中文字幕精品一区 | 青青自拍视频一区二区三区 | 亚洲欧美日韩视频一区 | 国产色婷婷精品免费视频 | 天天色综合图片 | 欧美xxxx做受欧美人妖 | 久视频在线观看 | 婷婷丁香在线观看 | 亚洲一区二区三区免费观看 | 男人女人做刺激视频免费 | 亚洲区小说区图片区qvod伊 | 色婷婷色综合缴情在线 | 亚洲精品国产成人专区 | 久久久99精品久久久久久 | 亚洲免费黄色 | 在线日本妇人成熟免费观看 | 一区二区播放 | 国产精品亚洲视频 | 亚洲综合一区二区不卡 |