真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

后臺(tái)架構(gòu)設(shè)計(jì)—數(shù)據(jù)存儲(chǔ)層

數(shù)據(jù)存儲(chǔ)重要性:

創(chuàng)新互聯(lián)公司服務(wù)項(xiàng)目包括伊通網(wǎng)站建設(shè)、伊通網(wǎng)站制作、伊通網(wǎng)頁制作以及伊通網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,伊通網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到伊通省份的部分城市,未來相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!

數(shù)據(jù)是企業(yè)最重要的財(cái)產(chǎn);

數(shù)據(jù)可靠性是企業(yè)的命根,一定要保證。

單機(jī)存儲(chǔ)原理:

存儲(chǔ)引擎:存儲(chǔ)系統(tǒng)的發(fā)動(dòng)機(jī),它決定存儲(chǔ)系統(tǒng)的功能和性能;

引擎類型:哈希存儲(chǔ)引擎、B樹存儲(chǔ)引擎、LSM存儲(chǔ)引擎

哈希存儲(chǔ)引擎:基于哈希表結(jié)構(gòu) :數(shù)組+鏈表;支持CreateUpdateDelete隨機(jī)Read

B樹存儲(chǔ)引擎:基于B Tree實(shí)現(xiàn),支持單條記錄的CURD,支持順序查找。RDBMS使用較多。

LSM樹存儲(chǔ)引擎:對(duì)數(shù)據(jù)的修改增量保存在內(nèi)存,達(dá)到一定條件再批量更新到磁盤;優(yōu)勢(shì)在于批量寫入;劣勢(shì)在于讀取需合并磁盤和內(nèi)存;

避免內(nèi)存數(shù)據(jù)丟失:修改操作寫入到CommitLog日志。

數(shù)據(jù)模型:

文件:以目錄樹組織,如linux,mac,windows;

關(guān)系型:每個(gè)關(guān)系是一個(gè)表格,多行組成,每行多列;

鍵值(Key-Value):Memcached, Tokey, Redis;

列存儲(chǔ)型:Casadra, Hbase;

圖形數(shù)據(jù)庫:Neo4J, InfoGrid, Infinite Graph

文檔型:MongoDB, CouchDB

事務(wù)與并發(fā)控制:

事務(wù)4個(gè)基本屬性:ACID 原子性、一致性、隔離性、持久性

并發(fā)控制:

鎖粒度:Process->DB->Table->Row

提供Read并發(fā),Read不加鎖:寫時(shí)復(fù)制、MVCC

數(shù)據(jù)恢復(fù):通過操作日志

多機(jī)存儲(chǔ)原理:

單機(jī)存儲(chǔ)原理在多機(jī)存儲(chǔ)仍然可用;多級(jí)存儲(chǔ)基于單機(jī)存儲(chǔ);

數(shù)據(jù)分布:

分布在多個(gè)節(jié)點(diǎn),節(jié)點(diǎn)間負(fù)載均衡;

分布方式:

靜態(tài):取模、uid%32;

動(dòng)態(tài):一致性hash,數(shù)據(jù)飄移問題(A節(jié)點(diǎn)更新前出現(xiàn)故障,更新遷移到B節(jié)點(diǎn)后A節(jié)點(diǎn)又恢復(fù));

復(fù)制:

分布式存儲(chǔ)多個(gè)副本;保證高可靠和高可用;Commit Log。

故障檢測(cè):

心跳機(jī)制、數(shù)據(jù)遷移、故障恢復(fù);

FLP定理與設(shè)計(jì):

FLP Impossiblity(FLP不可能性):

在異步消息通信場(chǎng)景,即使只有一個(gè)進(jìn)程失敗,沒有任何方法能保證非失敗進(jìn)程達(dá)到一致性。

CAP定理與設(shè)計(jì):

CAP:一致性(Consistency)、可用性(Availabilty)、分區(qū)容忍性(Tolerance of network Partition)。

一致性和可用性需要折中權(quán)衡

分布式存儲(chǔ)系統(tǒng)需要能夠自動(dòng)容錯(cuò),也就是說分區(qū)容忍性需要保證。

2PC(Two Phase Commit)協(xié)議與設(shè)計(jì):

用于分布式事務(wù);

兩類節(jié)點(diǎn)組成:

協(xié)調(diào)者(1個(gè));

事務(wù)參與者(多個(gè));

分兩階段:

請(qǐng)求階段:協(xié)調(diào)者通知參與者準(zhǔn)備提交或取消事務(wù),所有參與者都需要表決同意或者不同意。

提交階段:

收到參與者所有決策后,協(xié)調(diào)者進(jìn)行決策(提交或取消);

通知參與者執(zhí)行操作,所有參與者都同意就提交,否則取消;

參與者收到協(xié)調(diào)者的通知后執(zhí)行操作。

2PC協(xié)議是阻塞式:

事務(wù)參與者可能發(fā)生故障

--設(shè)置超時(shí)時(shí)間;

協(xié)議者可能發(fā)生故障

--日志記錄、備用協(xié)調(diào)者

應(yīng)用:交易訂單 等;

Paxos協(xié)議與設(shè)計(jì):

作用:

解決節(jié)點(diǎn)間的一致性問題;

主節(jié)點(diǎn)宕掉,則選擇新節(jié)點(diǎn);

主節(jié)點(diǎn)常以操作日志的形式同步備節(jié)點(diǎn)。

分兩種角色:提議者(Prpposer)、接受者(Acceptor);

執(zhí)行步驟:

批準(zhǔn):Proposer發(fā)送accept消息給Accepter要求接受某個(gè)提議者;

確認(rèn):超一半的Accepter接受,則提議值生效,Proposer發(fā)送acknowledge消息通知所有的Accepter提議生效。

與2PC比較::

2PC協(xié)議保證多個(gè)數(shù)據(jù)分片上操作的原子性;

Paxos協(xié)議保證一個(gè)數(shù)據(jù)分片多個(gè)副本之間的數(shù)據(jù)一致性;

Paxos協(xié)議用法:

實(shí)現(xiàn)全局的鎖服務(wù)或者命名和配置服務(wù);

---Apache Zookeeper

將用戶數(shù)據(jù)復(fù)制到多個(gè)數(shù)據(jù)中心;

---Google Megastore

數(shù)據(jù)存儲(chǔ)層冗余:

多個(gè)副本,實(shí)現(xiàn)訪問的高可用性。

如何實(shí)現(xiàn):

數(shù)據(jù)復(fù)制:

基于日志;

Master-Slave:mysqlMongoDB

Replic Set:MongoDB

雙寫:

存儲(chǔ)層多主對(duì)等結(jié)構(gòu);比較靈活,但數(shù)據(jù)模塊層成本較高;

數(shù)據(jù)備份:

冷備份:

定期將數(shù)據(jù)復(fù)制到某個(gè)存儲(chǔ)介質(zhì),是傳統(tǒng)的數(shù)據(jù)保護(hù)手段;

優(yōu)點(diǎn):簡(jiǎn)單、廉價(jià),技術(shù)難度低;

缺點(diǎn):定期存在數(shù)據(jù)不一致;恢復(fù)數(shù)據(jù)時(shí)間長(zhǎng);

熱備份:

online備份;提供更好的高可用性;

異步熱備份:

從主存儲(chǔ)寫入即返回給應(yīng)用端,由存儲(chǔ)系統(tǒng)異步寫入其他副本;

同步熱備份:

多份數(shù)據(jù)副本寫入同步完成,無主從之分;

為提高性能,應(yīng)用程序并發(fā)寫入;

響應(yīng)延遲是最慢的那臺(tái)服務(wù)器;

數(shù)據(jù)存儲(chǔ)層失效轉(zhuǎn)移機(jī)制:

失效確認(rèn):是否宕機(jī)、心跳;

訪問轉(zhuǎn)移:訪問路由到非宕機(jī)機(jī)器;存儲(chǔ)數(shù)據(jù)完全一致;

數(shù)據(jù)恢復(fù):主從、日志;


網(wǎng)站題目:后臺(tái)架構(gòu)設(shè)計(jì)—數(shù)據(jù)存儲(chǔ)層
網(wǎng)站地址:http://weahome.cn/article/cjsjog.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部