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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

FusionStorage原理及组件,Java面试回忆录

發布時間:2023/12/20 java 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 FusionStorage原理及组件,Java面试回忆录 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前言

設計模式是我們編程道路上繞不開的一環,用好了設計模式能夠讓代碼擁有良好的維護性、可讀性以及擴展性,它仿佛就是“優雅”的代名詞,各個框架和庫也都能見到它的身影。

正是因為它有種種好處,所以很多人在開發時總想將某個設計模式用到項目中來,然而往往會用得比較別扭。其中一部分原因是業務需求并不太符合所用的設計模式,還有一部分原因就是在Web項目中我們對象都是交由Spring框架的Ioc容器來管理,很多設計模式無法直接套用。那么在真正的項目開發中,我們就需要對設計模式做一個靈活的變通,讓其能夠和框架結合,在實際開發中發揮出真正的優勢。

容災又分為異地容災和同城容災

FS作為生產存儲支持ebakcup或者第三方備份管理軟件的備份

FS的高級特性


雙活

hyper metro

遠程復制(異步)

hyper replication

可以實現存儲層容災

三、FS的DHT算法

==========

DHT(分布式哈希表,Distrubuted Hash Table

111? 698d51a19d8a121ce581499d7b701668

112? 7f6ffaa6bb0b408017b62254211691b5

將十進制的數,轉化為2的128次方的數,就可以實現平均切隨機

一個存儲池對應一個DHT環(邏輯)

讀寫流程:

1.scsi流交給vbs—>vbs轉換scsi流為key-value

2.對key值進行—>hash尋址

目的:將主機下發的IO平均且隨機的落到存儲池各個OSD對應硬盤上

也就是為了實現****IO 的負載均衡

3.經過hash得到一個2的32次方的數值—>模運算–>得到patition

目的:縮減表的尺度,加速查找DHT

4.查詢由MDC維護的映射表記錄的是patition和osd的關系patition—>得到osd

目的:解決壞盤或者擴容場景,準確定位patition對應的osd位置

5.osd做key-value到iscsi流的轉化,做磁盤的讀寫操作

四、存儲池和卷

=======

存儲池是由一組服務器本地硬盤構成,硬盤類型相同、容量相同、參數相同等限制(參考產品文檔)

主存類型:SATA機械? SAS機械?? SAS-SSD?? SATA-SSD? NVME SSD盤、SSD卡

一塊硬盤只能屬于一個存儲池

一個存儲池可以劃多個卷(劃卷依賴vbs)

一個卷只能屬于一個存儲,不能跨存儲池

卷可以通過scsi掛載給vbs或者iscsi映射給業務主機使用

一個主機可以使用多個卷,多個卷可以來自不同存儲池

五、FS的可靠性和安全級別

=============

可靠性


副本機制:

2副本–50%?? 3副本–33.3%

EC機制: M=2,3,4? N最大22

EC(Erusure code)算法,分布式raid算法,可以跨界點raid

N+M?? 壞M塊硬盤或者M個節點數據不丟失,業務不中斷

N是數據分片

M是校驗分片

N+M:B?? 壞M塊硬盤或者B=1個節點數據不丟失,業務不中斷

22+2保護? 高達91%空間利用率

安全級別


FSM配置界面創建存儲池僅支持服務器級和機柜級

服務器級安全:數據副本或者EC的數據分片一定不會放在同一個服務器節點內

機柜級安全:數據副本或者EC的數據分片一定不會放在同一個機柜內

機房級安全:數據副本或者EC的數據分片一定不會放在同一個機房內

不同的存儲池可配置不同的數據保護方式和安全級別

六、VBS結構

=======

scsi:將內核態VSC模塊的scsi流引入VBS用戶態

============================

VBP:scsi流轉換成key-value

client:key–hash—mod–patition–查io-view–主OSD 走存儲網絡平面將io流轉發至主OSD

VBM:卷和快照生命周期管理操作? 創建卷、掛載卷、卸載卷、查詢卷、刪除卷、創建快照、刪除快照、基于快照創建卷等

hearbeat:心跳模塊? 通過存儲平面與MDC交互心跳包? 使MDC維持VBS view狀態視圖

七、OSD結構

=======

RSM:復制協議實現。

SNAP:實現卷與快照的IO功能、磁盤空間的管理。

CACHE:實現cache功能。

AIO:實現異步IO下發到底層SMIO模塊和通過調用SMIO接口來監控介質故障。

SMIO:下發到IO到實際的物理介質、監控物理介質故障、獲取磁盤信息。

八、FS的IO流程

=========

1)寫IO


APP–》OS–》scsi/iscsi—》VSC內核模塊接收—》scsi initiator–》scsi target—》VBP(LUN ID/LBA ID/length–>key data–>value)

—》client(key–hash–mod–patition–查io view–主OSD)—》主OSD(key–hash–mod–patition–查patition view–備OSD)–》主OSD一方面下發寫IO到本端cache,一方面通過RSM復制IO到備OSD—》主備OSD同步寫cache成功–》由主OSD返回VBS寫成功(回寫),VBS返回APP寫成功。

2)讀IO


APP–OS–scsi/iscsi—VSC內核模塊接收—scsi initiator–scsi target—VBP(LUN ID/LBA ID/length–>key data–>value)—client(key–hash–mod–patition–查io view–主OSD)—主OSD

1、主OSD正常,先讀cache,如果cache讀命中,返回讀成功,如果未讀命中,主OSD向主存disk查詢讀數據。

2、主OSD異常,MDC會檢測硬盤異常觸發退盤,修改視圖(OSD view? IO view? Patition view),指導VBS引流到備OSD(新主OSD讀數據),先讀cache,如果cache讀命中,返回度成功,如果未讀命中,主OSD向主存disk查詢讀數據。

九、ZK的作用

=======

Zookeeper(簡稱ZK)分布式服務框架主要用來解決分布式應用中經常遇到的,如:統一命名服務、狀態同步服務、集群管理、分布式應用配置項的管理等,ZK主要工作包括三項:

MDC主備管理:


MDC采用一主兩備部署模式;在MDC模塊進程啟動后,各個MDC進程會向ZK注冊選主,先注冊的為主MDC;運行過程中,ZK記錄MDC主備信息,并通過心跳機制監控MDC主備健康狀況,一旦主MDC進程故障,會觸發MDC重先選主。

數據存儲


《一線大廠Java面試真題解析+Java核心總結學習筆記+最新全套講解視頻+實戰項目源碼》開源

Java優秀開源項目:

  • ali1024.coding.net/public/P7/Java/git

最后

針對最近很多人都在面試,我這邊也整理了相當多的面試專題資料,也有其他大廠的面經。希望可以幫助到大家。

下面的面試題答案都整理成文檔筆記。也還整理了一些面試資料&最新2021收集的一些大廠的面試真題(都整理成文檔,小部分截圖)

最新整理電子書

數據存儲


《一線大廠Java面試真題解析+Java核心總結學習筆記+最新全套講解視頻+實戰項目源碼》開源

Java優秀開源項目:

  • ali1024.coding.net/public/P7/Java/git

最后

針對最近很多人都在面試,我這邊也整理了相當多的面試專題資料,也有其他大廠的面經。希望可以幫助到大家。

下面的面試題答案都整理成文檔筆記。也還整理了一些面試資料&最新2021收集的一些大廠的面試真題(都整理成文檔,小部分截圖)

[外鏈圖片轉存中…(img-jQtXcXnW-1649342846889)]

最新整理電子書

[外鏈圖片轉存中…(img-8wBNwgat-1649342846890)]

總結

以上是生活随笔為你收集整理的FusionStorage原理及组件,Java面试回忆录的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。