greenplum用了大半年了,要給部門其他同事做下分享,寫了個ppt,其中看到「 greenplum是一款典型的shared-nothing 分布式資料庫系統。」,看到shared-nothing架構,以前只從字面上知道就是不共享,但是對資料庫架構了解的不多,怕別人問起來就尷尬了,就補了下課,記錄下吧。
資料庫構架設計中主要有:shared everthting、shared disk、shared nothing等。
2.1 shared everthting
一般是單體主機,共享cpu/memory/io,單節點的sqlsever、mysql、oracle等關係型資料庫都是shared everthting,例項或者機器出故障了,整個服務就停用了,可用性差點。
2.2 shared disk
感覺這個概念就是針對oracle rac來的,簡單來說就是多個例項共享資料(磁碟),架構圖:
說明:應用例項可以有多個,可以是伺服器,也可以是乙個伺服器多個服務,簡單說這種情況下,例項只要不是全部掛了,就還能訪問,但是資料庫磁碟掛了,整個服務就不可用了。
2.3 shared nothing
大資料時代的到來,一般都是這個套路了,就是各玩各的(cpu、記憶體、儲存都不共享),最後彙總展示。
(2)說明
(a)namenode,名字節點,要管理元資料資訊(metadata),注意,只儲存元資料資訊。
(b) datanode,資料節點。用於儲存檔案塊。為了防止datanode掛掉造成的資料丟失,對於檔案塊要有備份,乙個檔案塊有三個副本。
hadoop預設是三個副本,這樣即使其中乙個datanode出故障了,也沒關係,還能正常提供服務。
2.3.2 言歸正傳,greenplum
(1)greenplum架構圖
(2)說明
(a)master主機負責:建立與客戶端的連線和管理;sql的解析並形成執行計畫;執行計畫向segment 的分發收集segment的執行結果;master不儲存業務資料,只儲存資料字典。
(b)segment主機負責:業務資料的儲存和訪問;使用者查詢sql的執行。
示例中假如有400萬資料,4個segment host各自儲存100萬資料,cpu、記憶體、資料都不共享,根據master執行計畫,返回資料到master節點,由master節點彙總返回client,另外greenplum是雙備份機制。
說明:其實這些都是概念性的東西,只是方便大家快速理解而已,不用太糾結,再說了現在mysql、oracle rac等也好多都集群部署了,有點混合的意思了。
資料庫架構簡要解析
greenplum用了大半年了,要給部門其他同事做下分享,寫了個ppt,其中看到 greenplum是一款典型的shared nothing 分布式資料庫系統。看到shared nothing架構,以前只從字面上知道就是不共享,但是對資料庫架構了解的不多,怕別人問起來就尷尬了,就補了下課,記錄下吧。...
資料庫簡要查詢
01 dql 查詢語句 select 資料 欄位名1,欄位名2,欄位名3 from 資料 02 代表所有 表示字串 null值與數字引數運算,結果null 字串拼接用 虛表用 daul 03 distinct 查詢的結果集中的資料要保證兩條資料的所有字段值全部相等才能去重 04 取別名 select...
wshop微信商城資料庫結構簡要解析
首先表全部以 模組名 業務表明來區分 act開頭的是原先系統的業務流程表名稱 cms開頭的是內容管理模組 qrtz是定時器相關表結構 report是報表系統 sys是系統資料庫結構表 在這裡我著重把ws 的表結構做下說明 ws actiity 是活動的相關表 ws ad 廣告表 ws address...