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

歡迎訪問 生活随笔!

生活随笔

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

编程问答

DDIA - 读书笔记

發(fā)布時間:2024/3/13 编程问答 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 DDIA - 读书笔记 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

文章目錄

    • 前言
    • 第一部分 數(shù)據(jù)系統(tǒng)基礎(chǔ)
      • DDIA - 第1章 可靠、可擴(kuò)展與可維護(hù)的應(yīng)用系統(tǒng)
      • DDIA - 第2章 數(shù)據(jù)模型與查詢語言
      • DDIA - 第3章 數(shù)據(jù)存儲與檢索
      • DDIA - 第4章 數(shù)據(jù)編碼與演化
    • 第二部分 分布式數(shù)據(jù)系統(tǒng)
      • DDIA - 第5章 數(shù)據(jù)復(fù)制
      • DDIA - 第6章 數(shù)據(jù)分區(qū)
      • DDIA - 第7章 事務(wù)
      • DDIA - 第8章 分布式系統(tǒng)的挑戰(zhàn)
      • DDIA - 第9章 一致性與共識
    • 第三部分 派生數(shù)據(jù)
      • 記錄系統(tǒng)與派生數(shù)據(jù)系統(tǒng)

信息是激發(fā)創(chuàng)新的力量 DDIA(數(shù)據(jù)密集型應(yīng)用系統(tǒng)設(shè)計)
  • 深入探索常用分布式系統(tǒng)內(nèi)部機(jī)制,學(xué)習(xí)如何高效運用這些技術(shù)
  • 分析各種工具的優(yōu)勢和不足,幫助做出明智的設(shè)計決策
  • 解析一致性、擴(kuò)展性、容錯和復(fù)雜度之間的權(quán)衡利弊
  • 介紹分布式系統(tǒng)研究的最新進(jìn)展(現(xiàn)代數(shù)據(jù)庫的基石)
  • 解釋主流在線服務(wù)的基本架構(gòu)

????????數(shù)據(jù)密集與計算密集是當(dāng)今兩大典型負(fù)載類型,前者以大數(shù)據(jù)為代表,后者以深度學(xué)習(xí)和HPC(高性能計算)為主要代表。本書屬于大數(shù)據(jù)范疇,主要采用分布式系統(tǒng)來處理和存儲數(shù)據(jù)(涉及數(shù)據(jù)庫、Hadoop、NoSQL、流處理等),探討三個頂級工程挑戰(zhàn):系統(tǒng)的可靠性、可擴(kuò)展性與可維護(hù)性。

前言

????????圍繞著如何構(gòu)建高效存儲與數(shù)據(jù)處理這一核心主題,幫助大家更好地駕馭處理數(shù)據(jù)和存儲數(shù)據(jù)相關(guān)技術(shù)。 著重探討不同的設(shè)計理念以及如何權(quán)衡,這些通常才是系統(tǒng)的核心,也會例舉實踐中不同的系統(tǒng)產(chǎn)品最終采用了哪些不同的理念。本書主要關(guān)注數(shù)據(jù)處理架構(gòu)方面以及如何繼承到數(shù)據(jù)密集型應(yīng)用系統(tǒng)中。
????????數(shù)據(jù)密集型(Data-Intensive): 對于一個應(yīng)用系統(tǒng),如果“數(shù)據(jù)”是其成敗決定性因素,包括數(shù)據(jù)的規(guī)模、數(shù)據(jù)的復(fù)雜度或者數(shù)據(jù)產(chǎn)生與變化的速率等,我們就可以稱為“數(shù)據(jù)密集型應(yīng)用系統(tǒng)”
????????計算密集型(Compute-Intensive): CPU主頻往往是后者最大的制約瓶頸

第一部分 數(shù)據(jù)系統(tǒng)基礎(chǔ)

????????主要討論有關(guān)增強(qiáng)數(shù)據(jù)密集型應(yīng)用系統(tǒng)所需的若干基本原則。總結(jié)了適合所有數(shù)據(jù)系統(tǒng)的基本思想,既包括單機(jī)運行環(huán)境,也包括分布式集群環(huán)境。

DDIA - 第1章 可靠、可擴(kuò)展與可維護(hù)的應(yīng)用系統(tǒng)

DDIA - 第1章 可靠、可擴(kuò)展與可維護(hù)的應(yīng)用系統(tǒng)介紹相關(guān)術(shù)語與方法,這些術(shù)語等將貫穿于全書。例如重點關(guān)注的可靠性、可擴(kuò)展性與可維護(hù)性設(shè)計目標(biāo),以及達(dá)到這些目標(biāo)的基本方法。

DDIA - 第2章 數(shù)據(jù)模型與查詢語言

DDIA - 第2章 數(shù)據(jù)模型與查詢語言對比多種不同的數(shù)據(jù)模型與查詢語言,從開發(fā)者角度來看,這些是不同數(shù)據(jù)庫系統(tǒng)最顯著的區(qū)別,我們也會討論不同模型的具體適用場景。

DDIA - 第3章 數(shù)據(jù)存儲與檢索

DDIA - 第3章 數(shù)據(jù)存儲與檢索深入數(shù)據(jù)庫系統(tǒng)內(nèi)部的核心存儲引擎,詳細(xì)解析數(shù)據(jù)庫如何設(shè)計磁盤布局。針對不同的工作負(fù)載如何優(yōu)化其引擎,而正確的設(shè)計選型對系統(tǒng)將產(chǎn)生巨大的影響。

DDIA - 第4章 數(shù)據(jù)編碼與演化

DDIA - 第4章 數(shù)據(jù)編碼與演化比較不同的數(shù)據(jù)編碼格式和序列化技術(shù),特別是當(dāng)上層應(yīng)用需求多變而模型也需要靈活調(diào)整時,該如何最佳使用這些技術(shù)。

第二部分 分布式數(shù)據(jù)系統(tǒng)

????????我們將從單機(jī)的數(shù)據(jù)存儲轉(zhuǎn)向跨機(jī)器的分布式系統(tǒng),這是擴(kuò)展性的重要一步,但隨之而來的是各種挑戰(zhàn)。
????????主要出于以下目的,我們需要在多臺機(jī)器上分布數(shù)據(jù):

  • 擴(kuò)展性
    ????????當(dāng)數(shù)據(jù)量或者讀寫負(fù)載巨大,嚴(yán)重超出了單臺機(jī)器的處理上限,需要將負(fù)載分散到多臺機(jī)器上
  • 容錯與高可用性
    ????????當(dāng)單臺機(jī)器(或者多臺,以及網(wǎng)絡(luò)甚至整個數(shù)據(jù)中心)出現(xiàn)故障,還希望應(yīng)用系統(tǒng)可以繼續(xù)工作,這時需要采用多臺機(jī)器提供冗余。這樣某些組件失效之后,冗余組件可以迅速接管
  • 延遲考慮
    ????????如果客戶遍布世界各地,通常需要考慮在全球范圍內(nèi)部署服務(wù),以方便用戶就近訪問最近數(shù)據(jù)中心所提供的服務(wù),從而避免數(shù)據(jù)請求跨越了半個地球才能到達(dá)目標(biāo)

系統(tǒng)擴(kuò)展能力
????????共享內(nèi)存架構(gòu)(垂直擴(kuò)展)和共享磁盤架構(gòu)提升系統(tǒng)擴(kuò)展能力是很有限的,分別存在著各種難以解決的問題。
(1)無共享結(jié)構(gòu)(水平擴(kuò)展)
????????當(dāng)采用這種架構(gòu)時,運行數(shù)據(jù)庫軟件的機(jī)器或者虛擬機(jī)稱為節(jié)點。每個節(jié)點獨立使用本地的CPU,內(nèi)存和磁盤。節(jié)點之間的所有協(xié)調(diào)通信等任務(wù)全部運行在傳統(tǒng)網(wǎng)絡(luò)(以太網(wǎng))之上且核心邏輯主要依靠軟件來實現(xiàn)。無共享系統(tǒng)不需要專門的硬件,具有較高的性價比。
(2)復(fù)制與分區(qū)
????????將數(shù)據(jù)分布在多節(jié)點時有兩種常見的方式:

  • 復(fù)制
    ????????在多個節(jié)點上保存相同數(shù)據(jù)的副本,每個副本具體的存儲位置可能不盡相同。復(fù)制方法可以提供冗余:如果某些節(jié)點發(fā)生不可用,則可以通過其他節(jié)點繼續(xù)提供數(shù)據(jù)訪問服務(wù)。復(fù)制也可以幫助提高系統(tǒng)性能
  • 分區(qū)
    ????????將一個大塊頭的數(shù)據(jù)庫拆分成多個較小的子集即分區(qū),不同的分區(qū)分配給不同的節(jié)點(也稱為分片)

????????這些是不同的數(shù)據(jù)分布機(jī)制,然而它們經(jīng)常被放在一起組合使用。

DDIA - 第5章 數(shù)據(jù)復(fù)制

DDIA - 第5章 數(shù)據(jù)復(fù)制

DDIA - 第6章 數(shù)據(jù)分區(qū)

DDIA - 第6章 數(shù)據(jù)分區(qū)

DDIA - 第7章 事務(wù)

DDIA - 第7章 事務(wù)

DDIA - 第8章 分布式系統(tǒng)的挑戰(zhàn)

DDIA - 第8章 分布式系統(tǒng)的挑戰(zhàn)

DDIA - 第9章 一致性與共識

DDIA - 第9章 一致性與共識

第三部分 派生數(shù)據(jù)

????????主要針對產(chǎn)生派生數(shù)據(jù)的系統(tǒng),所謂派生數(shù)據(jù)主要指在異構(gòu)系統(tǒng)中,如果無法用一個數(shù)據(jù)源來解決所有問題,那么一種自然的方式就是集成多個不同的數(shù)據(jù)庫、緩存模塊以及索引模塊等。

記錄系統(tǒng)與派生數(shù)據(jù)系統(tǒng)

????????存儲與處理數(shù)據(jù)的系統(tǒng)按照高層次分類可以分為兩大類:

  • 記錄系統(tǒng)
    ????????一個記錄系統(tǒng)也被稱為真實數(shù)據(jù)系統(tǒng),擁有數(shù)據(jù)的權(quán)威版本
  • 派生數(shù)據(jù)系統(tǒng)
    ????????派生數(shù)據(jù)系統(tǒng)中的數(shù)據(jù)則是從另一個系統(tǒng)中獲取已有數(shù)據(jù)并以某種方式進(jìn)行轉(zhuǎn)換或處理的結(jié)果

????????大多數(shù)數(shù)據(jù)庫、存儲引擎和查詢語言本身并不屬于記錄系統(tǒng)和派生系統(tǒng)。數(shù)據(jù)庫只是一個工具:如何使用完全取決于用戶。即記錄系統(tǒng)和派生數(shù)據(jù)系統(tǒng)之間的區(qū)別并不在于工作本身,而是在于如何在應(yīng)用程序中使用它們。

????????通過弄清楚數(shù)據(jù)的來龍去脈,來幫助厘清復(fù)雜的系統(tǒng)架構(gòu)。

總結(jié)

以上是生活随笔為你收集整理的DDIA - 读书笔记的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

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