NoSQL 數(shù)據(jù)庫因其功能性、易于開發(fā)性和可擴展性而廣受認可,它們越來越多地用于大數(shù)據(jù)和實時 Web 應用程序,在本文中,我們通過示例討論 NoSQL、何時使用 NoSQL 與 SQL 及其用例。
十余年的岱岳網(wǎng)站建設經(jīng)驗,針對設計、前端、開發(fā)、售后、文案、推廣等六對一服務,響應快,48小時及時工作處理。成都全網(wǎng)營銷推廣的優(yōu)勢是能夠根據(jù)用戶設備顯示端的尺寸不同,自動調整岱岳建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設計,從而大程度地提升瀏覽體驗。創(chuàng)新互聯(lián)建站從事“岱岳網(wǎng)站設計”,“岱岳網(wǎng)站推廣”以來,每個客戶項目都認真落實執(zhí)行。
NoSQL是一種下一代數(shù)據(jù)庫管理系統(tǒng) (DBMS)。NoSQL 數(shù)據(jù)庫具有靈活的模式,可用于構建具有大量數(shù)據(jù)和高負載的現(xiàn)代應用程序。
“NoSQL”一詞最初是由 Carlo Strozzi 在 1998 年創(chuàng)造的,盡管自 1960 年代后期以來就已經(jīng)存在類似的數(shù)據(jù)庫。然而,NoSQL 的發(fā)展始于 2009 年初,并且發(fā)展迅速。
在處理大量數(shù)據(jù)時,任何關系數(shù)據(jù)庫管理系統(tǒng) (RDBMS) 的響應時間都會變慢。為了解決這個問題,我們可以通過升級現(xiàn)有硬件來“擴大”信息系統(tǒng),這非常昂貴。但是,NoSQL 可以更好地橫向擴展并且更具成本效益。
NoSQL 對于非結構化或非常大的數(shù)據(jù)對象(例如聊天日志數(shù)據(jù)、視頻或圖像)非常有用,這就是為什么 NoSQL 在微軟、谷歌、亞馬遜、Meta (Facebook) 等互聯(lián)網(wǎng)巨頭中特別受歡迎的原因。
一些流行的 NoSQL 數(shù)據(jù)庫包括:
隨著企業(yè)更快地積累更大的數(shù)據(jù)集,結構化數(shù)據(jù)和關系模式并不總是適合。有必要使用非結構化數(shù)據(jù)和大型對象來更好地捕獲這些信息。
傳統(tǒng)的 RDBMS 使用 SQL(結構化查詢語言)語法來存儲和檢索結構化數(shù)據(jù),相反,NoSQL 數(shù)據(jù)庫包含廣泛的功能,可以存儲和檢索結構化、半結構化、非結構化和多態(tài)數(shù)據(jù)。
有時,NoSQL 也被稱為“ 不僅僅是 SQL ”,強調它可能支持類似 SQL 的語言或與 SQL 數(shù)據(jù)庫并列。SQL 和 NoSQL DBMS 之間的一個區(qū)別是 JOIN 功能。SQL 數(shù)據(jù)庫使用 JOIN 子句來組合來自兩個或多個表的行,因為 NoSQL 數(shù)據(jù)庫本質上不是表格的,所以這個功能并不總是可行或相關的。
但是,一些 NoSQL DBMS 可以執(zhí)行類似于 JOIN的操作——就像 MongoDB 一樣。這并不意味著不再需要 SQL DBMS,相反,NoSQL 和 SQL 數(shù)據(jù)庫傾向于以不同的方式解決類似的問題。
一般來說,在以下情況下,NoSQL 比 SQL 更可?。?/p>
許多行業(yè)都在采用 NoSQL,取代關系數(shù)據(jù)庫,從而為某些業(yè)務應用程序提供更高的靈活性和可擴展性,下面給出了 NoSQL 數(shù)據(jù)庫的一些企業(yè)用例。
內容管理是一組用于收集、管理、傳遞、檢索和發(fā)布任何格式的信息的過程,包括文本、圖像、音頻和視頻。NoSQL 數(shù)據(jù)庫可以通過其靈活和開放的數(shù)據(jù)模型為存儲多媒體內容提供更好的選擇。
例如,福布斯在短短幾個月內就構建了一個基于 MongoDB 的定制內容管理系統(tǒng),以更低的成本為他們提供了更大的敏捷性。
大數(shù)據(jù)是指太大而無法通過傳統(tǒng)處理系統(tǒng)處理的數(shù)據(jù)集,實時存儲和檢索大數(shù)據(jù)的系統(tǒng)在分析 歷史 數(shù)據(jù)的同時使用流處理來攝取新數(shù)據(jù),這是一系列非常適合 NoSQL 數(shù)據(jù)庫的功能。
Zoom使用 DynamoDB(按需模式)使其數(shù)據(jù)能夠在沒有性能問題的情況下進行擴展,即使該服務在 COVID-19 大流行的早期使用量激增。
物聯(lián)網(wǎng)設備具有連接到互聯(lián)網(wǎng)或通信網(wǎng)絡的嵌入式軟件和傳感器,能夠在無需人工干預的情況下收集和共享數(shù)據(jù)。隨著數(shù)十億臺設備生成數(shù)不清的數(shù)據(jù),IoT NoSQL 數(shù)據(jù)庫為 IoT 服務提供商提供了可擴展性和更靈活的架構。
Freshub就是這樣的一項服務,它從 MySQL 切換到 MongoDB,以更好地處理其大型、動態(tài)、非統(tǒng)一的數(shù)據(jù)集。
擁有數(shù)十億智能手機用戶,可擴展性正成為在移動設備上提供服務的企業(yè)面臨的最大挑戰(zhàn)。具有更靈活數(shù)據(jù)模型的 NoSQL DBMS 通常是完美的解決方案。
例如,The Weather Channel使用 MongoDB 數(shù)據(jù)庫每分鐘處理數(shù)百萬個請求,同時還處理用戶數(shù)據(jù)并提供天氣更新。
nosql是not only sql的意思。是近今年新發(fā)展起來的存儲系統(tǒng)。當前使用最多的是key-value模型,用于處理超大規(guī)模的數(shù)據(jù)。
以下是摘自百度百科中的一部分
NoSQL 是非關系型數(shù)據(jù)存儲的廣義定義。它打破了長久以來關系型數(shù)據(jù)庫與ACID理論大一統(tǒng)的局面。NoSQL 數(shù)據(jù)存儲不需要固定的表結構,通常也不存在連接操作。在大數(shù)據(jù)存取上具備關系型數(shù)據(jù)庫無法比擬的性能優(yōu)勢。該術語在 2009 年初得到了廣泛認同。
當今的應用體系結構需要數(shù)據(jù)存儲在橫向伸縮性上能夠滿足需求。而 NoSQL 存儲就是為了實現(xiàn)這個需求。Google 的BigTable與Amazon的Dynamo是非常成功的商業(yè) NoSQL 實現(xiàn)。一些開源的 NoSQL 體系,如Facebook 的Cassandra, Apache 的HBase,也得到了廣泛認同。從這些NoSQL項目的名字上看不出什么相同之處:Hadoop、Voldemort、Dynomite,還有其它很多。
NoSQL與關系型數(shù)據(jù)庫設計理念比較
關系型數(shù)據(jù)庫中的表都是存儲一些格式化的數(shù)據(jù)結構,每個元組字段的組成都一樣,即使不是每個元組都需要所有的字段,但數(shù)據(jù)庫會為每個元組分配所有的字段,這樣的結構可以便于表與表之間進行連接等操作,但從另一個角度來說它也是關系型數(shù)據(jù)庫性能瓶頸的一個因素。而非關系型數(shù)據(jù)庫以鍵值對存儲,它的結構不固定,每一個元組可以有不一樣的字段,每個元組可以根據(jù)需要增加一些自己的鍵值對,這樣就不會局限于固定的結構,可以減少一些時間和空間的開銷。
a. SQL數(shù)據(jù)存在特定結構的表中;而NoSQL則更加靈活和可擴展,存儲方式可以省是JSON文檔、哈希表或者其他方式。
b. 在SQL中,必須定義好表和字段結構后才能添加數(shù)據(jù),例如定義表的主鍵(primary key),索引(index),觸發(fā)器(trigger),存儲過程(stored procedure)等。表結構可以在被定義之后更新,但是如果有比較大的結構變更的話就會變得比較復雜。在NoSQL中,數(shù)據(jù)可以在任何時候任何地方添加,不需要先定義表。
c. SQL中如果需要增加外部關聯(lián)數(shù)據(jù)的話,規(guī)范化做法是在原表中增加一個外鍵,關聯(lián)外部數(shù)據(jù)表。而在NoSQL中除了這種規(guī)范化的外部數(shù)據(jù)表做法以外,我們還能用如下的非規(guī)范化方式把外部數(shù)據(jù)直
接放到原數(shù)據(jù)集中,以提高查詢效率。缺點也比較明顯,更新審核人數(shù)據(jù)的時候將會比較麻煩。
d. SQL 中可以使用JOIN表鏈接方式將多個關系數(shù)據(jù)表中的數(shù)據(jù)用一條簡單的查詢語句查詢出來。NoSQL暫未提供類似JOIN的查詢方式對多個數(shù)據(jù)集中的數(shù)據(jù)做查詢。所以大部分NoSQL使用非規(guī)范化的數(shù)據(jù)存儲方式存儲數(shù)據(jù)。
e. SQL中不允許刪除已經(jīng)被使用的外部數(shù)據(jù),而NoSQL中則沒有這種強耦合的概念,可以隨時刪除任何數(shù)據(jù)。
f. SQL中如果多張表數(shù)據(jù)需要同批次被更新,即如果其中一張表更新失敗的話其他表也不能更新成功。這種場景可以通過事務來控制,可以在所有命令完成后再統(tǒng)一提交事務。而NoSQL中沒有事務這個概念,每一個數(shù)據(jù)集的操作都是原子級的。
g. 在相同水平的系統(tǒng)設計的前提下,因為NoSQL中省略了JOIN查詢的消耗,故理論上性能上是優(yōu)于SQL的。
本文名稱:nosql數(shù)據(jù)處理方式,nosql技術
轉載來源:http://aaarwkj.com/article28/dsisjjp.html
成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內鏈、域名注冊、企業(yè)網(wǎng)站制作、軟件開發(fā)、自適應網(wǎng)站、建站公司
聲明:本網(wǎng)站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經(jīng)允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)