日本搞逼视频_黄色一级片免费在线观看_色99久久_性明星video另类hd_欧美77_综合在线视频

國內(nèi)最全IT社區(qū)平臺 聯(lián)系我們 | 收藏本站
阿里云優(yōu)惠2
您當前位置:首頁 > 互聯(lián)網(wǎng) > SQL&NoSQL之辯,究竟誰更適海量數(shù)據(jù)處理

SQL&NoSQL之辯,究竟誰更適海量數(shù)據(jù)處理

來源:程序員人生   發(fā)布時間:2014-09-24 20:43:11 閱讀次數(shù):2612次

【編者按】大數(shù)據(jù)應用程序究竟是選擇SQL還是NoSQL?VoltDB公司首席技術官Ryan Betts和Couchbase公司首席執(zhí)行官Bob Wiederhold分別提出了不同的意見,同時借助多項論據(jù)來支持自己的說法,讓我們來看看他們是如何證明的。


免費訂閱“CSDN大數(shù)據(jù)”微信公眾號,實時了解最新的大數(shù)據(jù)進展!

CSDN大數(shù)據(jù),專注大數(shù)據(jù)資訊、技術和經(jīng)驗的分享和討論,提供Hadoop、Spark、Imapala、Storm、HBase、MongoDB、Solr、機器學習、智能算法等相關大數(shù)據(jù)觀點,大數(shù)據(jù)技術,大數(shù)據(jù)平臺,大數(shù)據(jù)實踐,大數(shù)據(jù)產(chǎn)業(yè)資訊等服務。


以下為原文:



執(zhí)行大數(shù)據(jù)【注】項目的企業(yè)面對的關鍵決策之一是使用哪個數(shù)據(jù)庫,SQL還是NoSQL?SQL有著驕人的業(yè)績,龐大的安裝基礎;而NoSQL正在獲得可觀的收益,且有很多支持者。我們來看看兩位專家對這個問題的看法。

專家

  • VoltDB公司首席技術官Ryan Betts表示,SQL已經(jīng)贏得了大型企業(yè)的廣泛部署,大數(shù)據(jù)是它可以支持的另一個領域。
  • Couchbase公司首席執(zhí)行官Bob Wiederhold表示,NoSQL是可行的選擇,并且從很多方面來看,它是大數(shù)據(jù)的最佳選擇,特別是涉及到可擴展性時。

SQL經(jīng)歷時間的考驗,并仍然在蓬勃發(fā)展

VoltDB公司首席技術官Ryan Betts

結(jié)構(gòu)化查詢語言(SQL)是經(jīng)過時間考驗的勝利者,它已經(jīng)主宰了幾十年,目前大數(shù)據(jù)公司和組織(例如谷歌、Facebook、Cloudera和Apache)正在積極投資于SQL。

在成為主導技術(例如SQL)后,有時候我們很容易忘記其優(yōu)越性。SQL的獨特優(yōu)勢包括:

  1. SQL能夠加強與數(shù)據(jù)的交互,并允許對單個數(shù)據(jù)庫設計提出問題。這是很關鍵的特征,因為無法交互的數(shù)據(jù)基本上是沒用的,并且,增強的交互性能夠帶來新的見解、新的問題和更有意義的未來交互。
  2. SQL是標準化的,使用戶能夠跨系統(tǒng)運用他們的知識,并對第三方附件和工具提供支持。
  3. SQL能夠擴展,并且是多功能和經(jīng)過時間驗證的,這能夠解決從快寫為主導的傳輸?shù)綊呙杳芗蜕钊敕治龅葐栴}。
  4. SQL對數(shù)據(jù)呈現(xiàn)和存儲采用正交形式,一些SQL系統(tǒng)支持JSON和其他結(jié)構(gòu)化對象格式,比NoSQL具有更好的性能和更多功能。

雖然NoSQL的出現(xiàn)帶來了一些影響,但SQL仍然主導著市場,并在大數(shù)據(jù)領域贏得了很多投資和廣泛部署。

NoSQL的說法很含糊,對于本次討論,我借用Rick Cattell對NoSQL的定義,即提供簡單操作(例如密鑰/數(shù)值存儲)或簡單記錄和索引,并專注于這些簡單操作的橫向可擴展性的系統(tǒng)。

很顯然,現(xiàn)在很多新的數(shù)據(jù)庫并不是都一樣,認識每種數(shù)據(jù)庫背后的原理以及潛在問題是成功的關鍵。NoSQL的主要特點使其更適合于特定的問題。例如,圖形數(shù)據(jù)庫更適合于數(shù)據(jù)通過關系組織的情況,而專門的文本搜索系統(tǒng)更適合于需要實時搜索的情況。

在這里,讓我們看看SQL系統(tǒng)的主要優(yōu)勢和差異化功能:

  • SQL可實現(xiàn)交互性。 SQL是一種聲明性查詢語言。用戶說出他們想要什么(例如,顯示過去五年三月份期間頂級客戶的地理位置),數(shù)據(jù)庫內(nèi)部就會構(gòu)件算法并提取請求的結(jié)果。相比之下,NoSQL編程創(chuàng)新MapReduce是一種程序性查詢技術。在用戶提出請求時,MapReduce要求用戶不僅說出自己想要什么,而且要求他們陳述如何產(chǎn)生答案。

這聽起來像一個無趣的技術差異,但這很關鍵,原因在于:首先,聲明性SQL查詢更容易通過圖形化工具以及點擊報告構(gòu)建器來構(gòu)建。這讓分析師、操作員、管理者和其他不具備軟件編程能力的員工進行數(shù)據(jù)庫查詢;其次,數(shù)據(jù)庫引擎可以利用內(nèi)部信息來選擇最有效的算法。改變數(shù)據(jù)庫的物理布局或數(shù)據(jù)庫,最佳算法仍然能夠計算出來。而在程序性系統(tǒng)中,編程人員需要重新訪問和重新編程算法,這是非常昂貴且容易出錯的過程。

市場理解這個關鍵區(qū)別。在2010年,谷歌宣布部署SQL來補充MapReduce,主要受內(nèi)部用戶需求所驅(qū)動。最近,F(xiàn)acebook發(fā)布了Presto(一種SQL部署)來查詢其PB級HDFS集群。根據(jù)Facebook表示:“隨著我們的倉庫增長到PB級,以及我們的需求變化,我們清楚地意識到,我們需要一個提供低延時查詢的互動系統(tǒng)。”此外,Cloudera也正在構(gòu)建Impala―另一個基于HDFS的SQL部署。

  • SQL是標準化的。 雖然供應商有時候會添加自己的語言到SQL界面,但SQL的核心是標準化的,還有其他規(guī)格(例如ODBC和JDBC)提供廣泛可用的穩(wěn)定界面到SQL存儲。這帶來了一個管理和操作工具生態(tài)系統(tǒng),可以在SQL系統(tǒng)之上設計、監(jiān)控、檢查、探索和構(gòu)建應用程序。

SQL用戶和程序員可用跨多個后端系統(tǒng)重復使用其API和UI知識,減少了應用程序的開發(fā)時間。標準化還允許聲明性第三方提取、轉(zhuǎn)換、加載(ETL)工具,使企業(yè)可以在數(shù)據(jù)庫之間以及跨系統(tǒng)傳輸數(shù)據(jù)。

  • SQL可擴展。 認為SQL必須犧牲以獲得可擴展性的看法,完全是錯誤的。如前所述,F(xiàn)acebook創(chuàng)建了一個SQL界面來查詢PB級數(shù)據(jù)。SQL能夠非常有效地運行極快的ACID傳輸。SQL對數(shù)據(jù)存儲和索引提供的抽象【注】化允許跨各種問題和數(shù)據(jù)集大小的一致使用,讓SQL可以跨集群復制數(shù)據(jù)存儲有效地運行。使用SQL作為界面獨立于構(gòu)建云、規(guī)模或HA系統(tǒng),SQL中并沒有什么在阻止和限制容錯、高可用性和復制。事實上,所有現(xiàn)代SQL系統(tǒng)支持云友好型橫向可擴展性、復制和容錯性。
  • SQL支持JSON。幾年前,很多SQL系統(tǒng)增加了XML文檔支持。現(xiàn)在,隨著JSON成為一種流行的數(shù)據(jù)交換格式,SQL供應商也紛紛加入了JSON型的支持。基于現(xiàn)在靈活的編程過程和web基礎設施的正常運行時間要求,我們很需要結(jié)構(gòu)化數(shù)據(jù)類型的支持。Oracle 12c、PostgreSQL 9.2、VoltDB和其他支持JSON的數(shù)據(jù)庫,通常具有優(yōu)于“原生”JSON的性能。

SQL將繼續(xù)贏得市場份額,并會繼續(xù)看到新的投資和部署。NoSQL數(shù)據(jù)庫提供專有查詢語言或簡單的鍵值語義,而沒有更深層次的技術差異化。現(xiàn)代SQL系統(tǒng)提供可擴展性的同時,還支持更豐富的查詢語義,并有龐大的用戶安裝基礎,廣泛的生態(tài)系統(tǒng)整合和深度企業(yè)部署。

NoSQL更適合大數(shù)據(jù)應用程序


Couchbase公司首席執(zhí)行官Bob Wiederhold

NoSQL越來越多地被認為是關系型數(shù)據(jù)庫的可行替代品,特別是對于大數(shù)據(jù)應用程序。此外,無模式數(shù)據(jù)模型通常更適合于現(xiàn)在捕捉和處理的數(shù)據(jù)種類和類型。

當我們談論NoSQL領域的大數(shù)據(jù)時,我們指的是從操作數(shù)據(jù)庫讀取和寫入。不要將操作數(shù)據(jù)庫與分析數(shù)據(jù)庫混淆,這通常會查看大量數(shù)據(jù),并從這些數(shù)據(jù)獲取可視性。

雖然操作數(shù)據(jù)庫的大數(shù)據(jù)看起來不具有可分析性,但操作數(shù)據(jù)庫通常會存儲超大量用戶的大型數(shù)據(jù)集,這些用戶經(jīng)常需要訪問數(shù)據(jù)來實時執(zhí)行交易。這種數(shù)據(jù)庫的操作規(guī)模也解釋了NoSQL的關鍵特性,也就是為什么NoSQL是大數(shù)據(jù)應用程序的關鍵的原因。

NoSQL是可擴展性的關鍵

每次技術行業(yè)經(jīng)歷硬件發(fā)展的根本性轉(zhuǎn)變時,都會出現(xiàn)一個拐點。在數(shù)據(jù)庫領域,從縱向擴展到橫向擴展的轉(zhuǎn)變推動了NoSQL的發(fā)展。關系型數(shù)據(jù)庫(包括來自甲骨文和IBM的數(shù)據(jù)庫)是縱向擴展。也就是說,它們是集中式、共享一切的技術,只能通過增加更多昂貴的硬件來擴展。

而NoSQL數(shù)據(jù)庫是分布式橫向擴展技術。它們使用了分布式節(jié)點集(稱為集群)來提供高度彈性擴展功能,讓用戶可以添加節(jié)點來動態(tài)處理負載。

分布式橫向擴展的做法通常要比縱向做法更加便宜。商業(yè)關系型數(shù)據(jù)庫的授權(quán)費用也讓人望而卻步,因為他們的價格是按每臺服務器來計算。另一方面,NoSQL數(shù)據(jù)庫通常是開源技術,按照運行的服務器集群收費,而且價格相對便宜。

NoSQL是靈活性的關鍵

關系型數(shù)據(jù)庫和NoSQL數(shù)據(jù)模型有很大的不同。關系型模式獲取數(shù)據(jù),并將數(shù)據(jù)分配到很多相互關聯(lián)的表中,這些表通過外鍵相互應用。

當用戶需要對數(shù)據(jù)集運行查詢時,所需信息需要從多個表中收集(通常涉及數(shù)百個企業(yè)應用程序),并結(jié)合這些信息,再提供給應用程序。同樣地,當寫入數(shù)據(jù)時,需要在多個表協(xié)調(diào)和執(zhí)行寫入。當數(shù)據(jù)相對較少,并且,數(shù)據(jù)以較慢速度流入數(shù)據(jù)庫時,關系型數(shù)據(jù)庫通常能夠捕捉和存儲信息。然而,現(xiàn)在的應用程序通常需要快速寫入(和讀取)海量數(shù)據(jù)。

NoSQL數(shù)據(jù)庫采用非常不同的模式。在其核心,NoSQL數(shù)據(jù)庫其實是“NoREL”,或者說非關系型,這意味著它們沒有依賴于表以及表之間的聯(lián)系,以存儲和組織信息。例如,以文檔為導向的NoSQL數(shù)據(jù)庫獲取你想要存儲的數(shù)據(jù),并采用JSON格式整合到文檔中。每個JSON文檔可以被你的應用程序視為一個對象。JSON文檔可能會提取跨越25個表的數(shù)據(jù),將數(shù)據(jù)集成到一個文檔中。

聚合這些信息可能會導致信息重復,但由于存儲已不再是一個成本問題,數(shù)據(jù)模型靈活性、發(fā)布所產(chǎn)生文檔的簡便性以及讀取和寫入性能提高,讓這成為不錯的選擇。

NoSQL是大數(shù)據(jù)應用程序的關鍵

通過第三方(包括社交媒體網(wǎng)站),數(shù)據(jù)正變得越來越容易捕捉和訪問。這些數(shù)據(jù)包括:個人用戶信息、地理位置數(shù)據(jù)、用戶生產(chǎn)的內(nèi)容、機器記錄數(shù)據(jù)和傳感器產(chǎn)生的數(shù)據(jù)。企業(yè)還可以依賴于大數(shù)據(jù)來推動其關鍵任務型應用程序。同時,企業(yè)正在轉(zhuǎn)向到NoSQL數(shù)據(jù)庫,因為這種數(shù)據(jù)庫非常適合現(xiàn)在新型的數(shù)據(jù)類型。

開發(fā)人員想要一個靈活的數(shù)據(jù)庫,可以很容易適應新的數(shù)據(jù)類型,并且,不會受第三方數(shù)據(jù)供應商的內(nèi)容結(jié)構(gòu)變化的影響。大多數(shù)新數(shù)據(jù)是非結(jié)構(gòu)化和半結(jié)構(gòu)化,因此,開發(fā)人員也需要能夠有效存儲這些數(shù)據(jù)的數(shù)據(jù)庫。然而,關系型數(shù)據(jù)庫采用的嚴格定義的基于模式的做法讓其不可能快速整合新數(shù)據(jù)類型,并且很不適合于非結(jié)構(gòu)化和半結(jié)構(gòu)化數(shù)據(jù)。

總體來說,隨著web和移動應用程序的增加、新的趨勢、網(wǎng)上消費者行為的轉(zhuǎn)變以及新的數(shù)據(jù)類型的出現(xiàn),行業(yè)需要能夠提供可擴展的靈活的數(shù)據(jù)庫技術來管理和訪問數(shù)據(jù)。NoSQL技術是有效滿足這些需求的唯一可行解決方案。

原文鏈接:大數(shù)據(jù)應用程序最佳選擇:是SQL還是NoSQL?(責編/仲浩)

生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對您的學習有所幫助,可以手機掃描二維碼進行捐贈
程序員人生
------分隔線----------------------------
分享到:
------分隔線----------------------------
關閉
程序員人生
主站蜘蛛池模板: wwwww免费网站上线 | 国产亚洲精品久久久久久牛牛 | 激情视频国产 | 国产精品成人在线 | 亚洲日本欧美日韩高观看 | 国产精品久久久久久久岛一牛影视 | ...99久久国产成人免费精品 | 免费a级毛片, | 久国产精品韩国三级视频 | 午夜国产 | 久久久久国产视频 | 久久性色 | 日本一区二区三区久久久 | 黄色片免费在线观看 | 欧美一区二区三区在线播放 | 成人综合久久 | 国产 欧美 日韩 一区 | 欧美一区二区三区喷汁尤物 | 日韩黄色一级电影 | 亚洲精品综合一区二区 | 爱情岛亚洲论坛福利站 | 91免费福利视频 | 精品一区二区三区视频 | 91福利国产在线观看菠萝蜜 | 第一福利在线 | 成人在线视频一区二区 | 一级特黄录像免费观看 | 国产热re99久久6国产精品 | 五月婷婷天 | 精品国产精品 | 亚洲欧美日韩天堂 | 九一网站在线观看 | 国产精品每日更新 | 成人免费视频网站 | 日韩小视频 | 久久精品一区二区国产 | 91亚洲国产成人久久精品网站 | 精品国产鲁一鲁一区二区张丽 | 亚洲高清在线视频 | 欧美福利一区二区三区 | 中文字幕国产在线视频 |