日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

什么是 NoSQL 数据库、NoSQL 与 SQL 的区别

發(fā)布時間:2023/12/18 数据库 49 豆豆
生活随笔 收集整理的這篇文章主要介紹了 什么是 NoSQL 数据库、NoSQL 与 SQL 的区别 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

前些天發(fā)現(xiàn)了一個巨牛的人工智能學(xué)習(xí)網(wǎng)站,通俗易懂,風(fēng)趣幽默,忍不住分享一下給大家。點擊跳轉(zhuǎn)到教程。

NoSQL 數(shù)據(jù)庫是針對可擴展性能和無架構(gòu)數(shù)據(jù)模型進行了優(yōu)化的非關(guān)系數(shù)據(jù)庫。

NoSQL 數(shù)據(jù)庫也因其易于開發(fā)、延遲低且具有彈性而得到廣泛認可。

此類數(shù)據(jù)庫可使用各種數(shù)據(jù)模型,包括列式、文檔、圖形和內(nèi)存鍵值存儲。

?

?

NoSQL 數(shù)據(jù)庫如何運作?

NoSQL 數(shù)據(jù)庫系統(tǒng)可使用各種模型進行數(shù)據(jù)管理,例如內(nèi)存鍵值存儲、圖形數(shù)據(jù)模型和文檔存儲。

此類數(shù)據(jù)庫針對需要大數(shù)據(jù)量、低延遲和靈活數(shù)據(jù)模型的應(yīng)用程序進行了優(yōu)化,

這是通過放松傳統(tǒng)關(guān)系數(shù)據(jù)庫的一些數(shù)據(jù)一致性限制實現(xiàn)的。

?

為何使用 NoSQL 數(shù)據(jù)庫?

NoSQL 數(shù)據(jù)庫非常適合許多大數(shù)據(jù)、移動和 Web 應(yīng)用程序,

因為傳統(tǒng)關(guān)系數(shù)據(jù)庫的可擴展性和響應(yīng)能力無法滿足其需求。

由于數(shù)據(jù)結(jié)構(gòu)更簡單且可水平擴展,NoSQL 數(shù)據(jù)庫通常比關(guān)系數(shù)據(jù)庫響應(yīng)速度更快且更易擴展。

?

SQL 與 NoSQL 數(shù)據(jù)庫比較

關(guān)系數(shù)據(jù)庫管理系統(tǒng) (RDBMS) 和非關(guān)系 (NoSQL) 數(shù)據(jù)庫各有優(yōu)劣。

在 RDBMS 中,您可以靈活查詢數(shù)據(jù),但查詢成本相對較高,并且在高流量的情況下無法有效擴展。

在 NoSQL 數(shù)據(jù)庫中,您只能通過幾種方式有效查詢數(shù)據(jù),否則查詢成本高且速度慢。

?

?

?關(guān)系數(shù)據(jù)庫NoSQL 數(shù)據(jù)庫
數(shù)據(jù)模型關(guān)系模型可將數(shù)據(jù)標準化為由行和列組成的表。采用一種架構(gòu)來嚴格定義表、行、列、索引、各個表之間的關(guān)系及其他數(shù)據(jù)庫元素。NoSQL 數(shù)據(jù)庫一般不會實施架構(gòu)。一般使用分區(qū)鍵來檢索值、列集或半結(jié)構(gòu)化 JSON、XML 或其他包含相關(guān)項目屬性的文檔。
ACID 屬性傳統(tǒng)的 RDBMS 支持關(guān)系數(shù)據(jù)庫的 ACID 屬性:原子性、一致性、隔離性和持久性。原子性表示“全有或全無”,即完全執(zhí)行或完全不執(zhí)行某項事務(wù)。一致性表示事務(wù)提交之后,數(shù)據(jù)必須符合數(shù)據(jù)庫架構(gòu)。隔離性要求并發(fā)事務(wù)應(yīng)分別執(zhí)行,互不干擾。持久性即能夠從意外系統(tǒng)故障或斷電情況中恢復(fù)到上一個已知狀態(tài)。為了獲得更為靈活且可水平擴展的數(shù)據(jù)模型,NoSQL 數(shù)據(jù)庫通常會放棄傳統(tǒng) RDBMS 的部分 ACID 屬性。憑借這些特性,當傳統(tǒng)的 RDBMS 遇到架構(gòu)方面的挑戰(zhàn)時,NoSQL 數(shù)據(jù)庫便成了最佳選擇,可用來克服一系列問題,包括性能瓶頸、可擴展性、運營復(fù)雜性和不斷增加的管理和支持成本。
性能性能一般取決于磁盤子系統(tǒng)。要獲得最佳性能,就需要優(yōu)化查詢、索引和表結(jié)構(gòu)。性能通常由底層硬件集群大小、網(wǎng)絡(luò)延遲以及調(diào)用應(yīng)用程序來決定。
擴展進行縱向擴展最簡單的方式是利用運行更快的硬件。您需要追加投資才能獲得跨分布式系統(tǒng)的關(guān)系表。旨在利用低成本硬件的分布式群集進行橫向擴展,從而在不增加延遲的前提下提高吞吐量。
API存儲和檢索數(shù)據(jù)的請求由符合結(jié)構(gòu)化查詢語言 (SQL) 的查詢來傳達。這些查詢由 RDBMS 解析和執(zhí)行。借助基于對象的 API,應(yīng)用程序開發(fā)人員可以輕松存儲和檢索內(nèi)存數(shù)據(jù)結(jié)構(gòu)。通過分區(qū)鍵,應(yīng)用程序可以查找鍵值對、列集或包含序列化應(yīng)用程序?qū)ο蠛蛯傩缘陌虢Y(jié)構(gòu)化文檔。
工具SQL 數(shù)據(jù)庫一般會提供一組豐富的工具,用于簡化數(shù)據(jù)庫驅(qū)動型應(yīng)用程序的開發(fā)流程。而 NoSQL 數(shù)據(jù)庫一般會提供多種工具來管理集群和擴展。應(yīng)用程序是底層數(shù)據(jù)的主要接口。

?

?



NoSQL 數(shù)據(jù)庫的不同類型

有四種常見的 NoSQL 數(shù)據(jù)庫類型:列式、文檔、圖形和內(nèi)存鍵值。

通常,這些數(shù)據(jù)庫在存儲、訪問和結(jié)構(gòu)化數(shù)據(jù)的方式上有所差異,但都針對不同的使用案例和應(yīng)用程序進行了優(yōu)化。?
?

  • 列式數(shù)據(jù)庫針對讀取和寫入數(shù)據(jù)列(而不是數(shù)據(jù)行)進行了優(yōu)化。適用于數(shù)據(jù)庫表的列式存儲是分析查詢性能的一大要素,因為它極大地降低了整體磁盤 I/O 要求,并減少了您需要從磁盤加載的數(shù)據(jù)量。
  • 文檔數(shù)據(jù)庫旨在將半結(jié)構(gòu)化數(shù)據(jù)存儲為文檔,通常采用 JSON 或 XML 格式。與傳統(tǒng)關(guān)系數(shù)據(jù)庫不同的是,每個 NoSQL 文檔的架構(gòu)是不同的,可讓您更加靈活地整理和存儲應(yīng)用程序數(shù)據(jù)并減少可選值所需的存儲。
  • 圖形數(shù)據(jù)庫可存儲頂點以及稱為邊緣的直接鏈路。圖形數(shù)據(jù)庫可以在 SQL 和 NoSQL 數(shù)據(jù)庫上構(gòu)建。頂點和邊緣可以擁有各自的相關(guān)屬性。
  • 內(nèi)存鍵值存儲是針對讀取密集型應(yīng)用程序工作負載(例如社交網(wǎng)絡(luò)、游戲、媒體共享和 Q&A 門戶)或計算密集型工作負載(例如推薦引擎)進行了優(yōu)化的 NoSQL 數(shù)據(jù)庫。內(nèi)存緩存可將重要數(shù)據(jù)存儲在內(nèi)存中以實現(xiàn)低延遲訪問,從而提高應(yīng)用程序性能。
  • ?

    ?

    ?

    SQL 與 NoSQL 術(shù)語比較

    SQLMongoDB (NoSQL)DynamoDB (NoSQL)Cassandra (NoSQL)Couchbase (NoSQL)
    集合數(shù)據(jù)存儲桶
    文檔項目文檔
    字段屬性字段
    主鍵對象 ID主鍵主鍵文檔 ID
    索引索引二級索引索引索引
    視圖視圖全局二級索引具體化視圖視圖
    嵌套表或?qū)ο?/td>嵌入文檔映射映射映射
    數(shù)組數(shù)組列表列表列表

    ?

    轉(zhuǎn)自:

    https://aws.amazon.com/cn/nosql/?nc1=f_cc

    ?

    ?

    ?

    ?

    ?

    ?

    ?

    ?

    ?

    ?

    ?

    ?

    ?

    ?

    ?

    總結(jié)

    以上是生活随笔為你收集整理的什么是 NoSQL 数据库、NoSQL 与 SQL 的区别的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。