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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

大数据技术原理与应用学习笔记(五)

發(fā)布時(shí)間:2023/12/10 编程问答 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 大数据技术原理与应用学习笔记(五) 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

大數(shù)據(jù)技術(shù)原理與應(yīng)用學(xué)習(xí)筆記(五)

  • 本系列歷史文章
  • NoSQL數(shù)據(jù)庫(kù)
    • NoSQL概述(Not Only SQL)
      • NoSQL特點(diǎn)
      • MySQL集群方式的缺陷
      • 傳統(tǒng)關(guān)系型數(shù)據(jù)庫(kù)缺陷
      • NoSQL興起的原因
    • NoSQL與關(guān)系型數(shù)據(jù)庫(kù)的比較
    • NoSQL的四大類型
      • 鍵值數(shù)據(jù)庫(kù)——鍵值對(duì)
      • 列族數(shù)據(jù)庫(kù)——列族
      • 文檔數(shù)據(jù)庫(kù)——文檔
      • 圖數(shù)據(jù)庫(kù)——圖
    • NoSQL的理論基石
      • CAP理論
    • 從NoSQL到NewSQL數(shù)據(jù)庫(kù)
    • MongoDB——(C++、分布式、開源)
    • 補(bǔ)充

本系列歷史文章

大數(shù)據(jù)技術(shù)原理與應(yīng)用學(xué)習(xí)筆記(一)
大數(shù)據(jù)技術(shù)原理與應(yīng)用學(xué)習(xí)筆記(二)
大數(shù)據(jù)技術(shù)原理與應(yīng)用學(xué)習(xí)筆記(三)
大數(shù)據(jù)技術(shù)原理與應(yīng)用學(xué)習(xí)筆記(四)

NoSQL數(shù)據(jù)庫(kù)

NoSQL概述(Not Only SQL)

NoSQL特點(diǎn)

  • 靈活的擴(kuò)展性
  • 靈活的數(shù)據(jù)模型
  • 和云計(jì)算緊密結(jié)合

MySQL集群方式的缺陷

  • 復(fù)雜性
  • 延遲性
  • 擴(kuò)容問題

傳統(tǒng)關(guān)系型數(shù)據(jù)庫(kù)缺陷

  • 無(wú)法滿足海量數(shù)據(jù)的管理要求
  • 無(wú)法滿足數(shù)據(jù)高并發(fā)需求
  • 無(wú)法滿足高擴(kuò)展性和高可用性要求

NoSQL興起的原因

  • 關(guān)系型數(shù)據(jù)庫(kù)無(wú)法滿足Web 2.0需求
  • 數(shù)據(jù)模型的局限性
  • Web 2.0關(guān)系型數(shù)據(jù)庫(kù)中許多特性沒有發(fā)揮

NoSQL與關(guān)系型數(shù)據(jù)庫(kù)的比較

  • 數(shù)據(jù)庫(kù)原理方面,關(guān)系數(shù)據(jù)庫(kù)有完備的關(guān)系代數(shù)理論作為基礎(chǔ),而NoSQL缺乏統(tǒng)一的理論基礎(chǔ);
  • 數(shù)據(jù)規(guī)模方面,關(guān)系型數(shù)據(jù)庫(kù)很難實(shí)現(xiàn)橫向擴(kuò)展,縱向擴(kuò)展非常有限,而NoSQL具有非常好的水平可擴(kuò)展性;
  • 數(shù)據(jù)庫(kù)模式方面,關(guān)系型數(shù)據(jù)庫(kù)定義了嚴(yán)格的數(shù)據(jù)庫(kù)模式,而且要嚴(yán)格遵守,而NoSQL的數(shù)據(jù)模型非常靈活;
  • 在查詢效率方面,關(guān)系型數(shù)據(jù)庫(kù)適當(dāng)量級(jí)查詢效率較高,當(dāng)量級(jí)較大時(shí),效率會(huì)下降,而NoSQL在未構(gòu)建面向復(fù)雜查詢的索引查詢性能差;
  • 在事務(wù)一致性方面,關(guān)系型數(shù)據(jù)庫(kù)遵循ACID事務(wù)模型可以保證事務(wù)強(qiáng)一致性;
  • 在數(shù)據(jù)完整性方面,關(guān)系型數(shù)據(jù)庫(kù)具有保證完整性的完備機(jī)制,而NoSQL不能實(shí)現(xiàn)完整性約束;
  • 在可用性方面,關(guān)系型數(shù)據(jù)庫(kù)保證了嚴(yán)格的一致性,所以其可用性就削弱,而NoSQL具有非常好的可用性,響應(yīng)快;
  • 在標(biāo)準(zhǔn)化方面,關(guān)系型數(shù)據(jù)庫(kù)遵循SQL標(biāo)準(zhǔn),而NoSQL暫未形成通用的行業(yè)標(biāo)準(zhǔn);
  • 在技術(shù)支持方面,關(guān)系型數(shù)據(jù)庫(kù)已有商業(yè)版關(guān)系數(shù)據(jù)庫(kù),擁有強(qiáng)大的技術(shù)支持,而NoSQL仍處于初期階段,大多為開源產(chǎn)品;
  • 在可維護(hù)性方面,關(guān)系型數(shù)據(jù)庫(kù)需要管理員維護(hù),而NoSQL還沒有成熟的基礎(chǔ),且實(shí)踐維護(hù)較為復(fù)雜。

NoSQL的四大類型

NoSQL典型數(shù)據(jù)庫(kù)通常包括鍵值數(shù)據(jù)庫(kù)、列族數(shù)據(jù)庫(kù)、文檔數(shù)據(jù)庫(kù)和圖數(shù)據(jù)庫(kù)。

鍵值數(shù)據(jù)庫(kù)——鍵值對(duì)

列族數(shù)據(jù)庫(kù)——列族

文檔數(shù)據(jù)庫(kù)——文檔

圖數(shù)據(jù)庫(kù)——圖

NoSQL的理論基石

CAP理論

C: 一致性(任意讀操作總能讀到之前寫操作的結(jié)果)
A: 可用性(快速獲取數(shù)據(jù),在確定時(shí)間內(nèi)返回結(jié)果)
P: 分區(qū)容忍性(當(dāng)出現(xiàn)網(wǎng)絡(luò)分區(qū)(一部分節(jié)點(diǎn)無(wú)法與其他節(jié)點(diǎn)通信時(shí))也能正常運(yùn)行)
(注:3個(gè)條件實(shí)現(xiàn)時(shí)最多實(shí)現(xiàn)2個(gè)。)
如:
CA(放棄P): 把所有與事務(wù)相關(guān)的放到同一臺(tái)機(jī)上。(如:MySQL)
CP(放棄A): 受影響服務(wù)器需等待數(shù)據(jù)一致。(如:Neo4j,HBase)
AP(放棄C): 允許系統(tǒng)返回不一致的數(shù)據(jù)。(如:CouchDB,Cassandra)

BASE與ACID
BASE的意義:

  • Basically Available:基本可用(允許分區(qū)失敗)
  • Soft-State: 軟狀態(tài)(可有一段時(shí)間不同步(滯后性))
  • Eventual consistency:最終一致性(可有不一致,但最終一定一致)
    與BASE對(duì)應(yīng)的ACID
    ACID的意義:
  • Atomicity:原子性(事物必須是原子工作單元)
  • Consistency: 一致性(所有數(shù)據(jù)保持一致)
  • Isolation:隔離性(并發(fā)事務(wù)間修改隔離)
  • Durability:持久性(事務(wù)完成后,對(duì)系統(tǒng)的影響是永久性的)

設(shè)數(shù)據(jù)冗余份數(shù)為N,更新數(shù)據(jù)時(shí)需保證寫完成的節(jié)點(diǎn)數(shù)W,讀取時(shí)要讀的節(jié)點(diǎn)數(shù)R,
滿足強(qiáng)一致性的要求:W + R > N;
滿足弱一致性的要求:W + R ≤ N;

從NoSQL到NewSQL數(shù)據(jù)庫(kù)

最主要的是了解應(yīng)用場(chǎng)景:
分析型應(yīng)用:NewSQL
事務(wù)型應(yīng)用:OldSQL
互聯(lián)網(wǎng)應(yīng)用:NoSQL

MongoDB——(C++、分布式、開源)

這部分請(qǐng)參考廈大數(shù)據(jù)庫(kù)博客:Ubuntu下MongoDB安裝與使用教程

補(bǔ)充

關(guān)系型數(shù)據(jù)庫(kù)與NoSQL數(shù)據(jù)庫(kù)都起著不同的作用,彼此不可互相取代

項(xiàng)目?jī)?yōu)勢(shì)劣勢(shì)
關(guān)系型數(shù)據(jù)庫(kù)以完善的關(guān)系代數(shù)理論作為基礎(chǔ),有嚴(yán)格標(biāo)準(zhǔn),支持事務(wù)ACID四性,借助索引機(jī)制可實(shí)現(xiàn)高效查詢,技術(shù)成熟,有專業(yè)公司的技術(shù)支持。可擴(kuò)展性交差,無(wú)法較好支持海量數(shù)據(jù)存儲(chǔ),數(shù)據(jù)模型過于死板,事務(wù)機(jī)制影響了系統(tǒng)性能等。
NoSQL數(shù)據(jù)庫(kù)支持超大規(guī)模數(shù)據(jù)存儲(chǔ),數(shù)據(jù)模型靈活,強(qiáng)大的橫向擴(kuò)展能力缺乏數(shù)學(xué)理論基礎(chǔ),復(fù)雜查詢性能不高,大都不能實(shí)現(xiàn)事務(wù)一致性,很難實(shí)現(xiàn)數(shù)據(jù)完整性,技術(shù)尚不成熟,缺缺乏專業(yè)團(tuán)隊(duì)技術(shù)支持,維護(hù)較困難等。

總結(jié)

以上是生活随笔為你收集整理的大数据技术原理与应用学习笔记(五)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

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