HOME 首頁(yè)
SERVICE 服務(wù)產(chǎn)品
XINMEITI 新媒體代運(yùn)營(yíng)
CASE 服務(wù)案例
NEWS 熱點(diǎn)資訊
ABOUT 關(guān)于我們
CONTACT 聯(lián)系我們
創(chuàng)意嶺
讓品牌有溫度、有情感
專注品牌策劃15年

    存儲(chǔ)快照原理(存儲(chǔ)快照原理是什么)

    發(fā)布時(shí)間:2023-04-10 16:18:14     稿源: 創(chuàng)意嶺    閱讀: 93        

    大家好!今天讓創(chuàng)意嶺的小編來大家介紹下關(guān)于存儲(chǔ)快照原理的問題,以下是小編對(duì)此問題的歸納整理,讓我們一起來看看吧。

    開始之前先推薦一個(gè)非常厲害的Ai人工智能工具,一鍵生成原創(chuàng)文章、方案、文案、工作計(jì)劃、工作報(bào)告、論文、代碼、作文、做題和對(duì)話答疑等等

    只需要輸入關(guān)鍵詞,就能返回你想要的內(nèi)容,越精準(zhǔn),寫出的就越詳細(xì),有微信小程序端、在線網(wǎng)頁(yè)版、PC客戶端

    官網(wǎng):https://ai.de1919.com。

    創(chuàng)意嶺作為行業(yè)內(nèi)優(yōu)秀的企業(yè),服務(wù)客戶遍布全球各地,如需了解SEO相關(guān)業(yè)務(wù)請(qǐng)撥打電話175-8598-2043,或添加微信:1454722008

    本文目錄:

    存儲(chǔ)快照原理(存儲(chǔ)快照原理是什么)

    一、git的工作原理

            git的工作總共分四層,其中三層是在自己本地也就是說git倉(cāng)庫(kù),包括了工作目錄、暫存區(qū)和本地倉(cāng)庫(kù)。工作目錄就是我們執(zhí)行命令git init時(shí)所在的地方,也就是我們執(zhí)行一切文件操作的地方;暫存區(qū)和本地倉(cāng)庫(kù)都是在.git目錄下,因?yàn)樗鼈冎皇怯脕泶鏀?shù)據(jù)的。遠(yuǎn)程倉(cāng)庫(kù)在中心服務(wù)器,也就是我們做好工作之后推送到遠(yuǎn)程倉(cāng)庫(kù),或者從遠(yuǎn)程倉(cāng)庫(kù)更新下來最新代碼到本地。Git所存儲(chǔ)的都是一系列的文件快照,然后git 來跟蹤這些文件快照,發(fā)現(xiàn)哪個(gè)文件快照有變化他就會(huì)提示你需要添加到暫存區(qū)或是提交到本地倉(cāng)庫(kù)來保證你的工作目錄是干凈的。

             這個(gè)要怎么理解呢?git中的文件有兩種狀態(tài),一種是被跟蹤的,也就是提交到本地倉(cāng)庫(kù)的文件,因?yàn)楸镜貍}(cāng)庫(kù)要保管它們當(dāng)然要跟蹤他們,對(duì)他們負(fù)責(zé),還有一種就是未被跟蹤的。那么當(dāng)我們添加新的文件時(shí),他不是被跟蹤的,因?yàn)楸镜貍}(cāng)庫(kù)里面沒有這個(gè)文件,他是外來的,本地倉(cāng)庫(kù)目前還不需要對(duì)他們負(fù)責(zé)。但是如果是對(duì)倉(cāng)庫(kù)已經(jīng)存在的文件進(jìn)行修改,那么這些文件就是被跟蹤的文件,就可以通過git status查看他們的狀態(tài)來進(jìn)行相應(yīng)的操作。當(dāng)然我們也可以生成一個(gè).gitignore文件,里面指定要忽略的文件類型,然后這些文件就不會(huì)被跟蹤,不管怎么改變他們,git status都不會(huì)提示你需要做什么操作。

            所以當(dāng)我們?cè)诠ぷ髂夸浿羞M(jìn)行文件操作后,要先添加到暫存區(qū),然后再將暫存區(qū)中剛添加的文件快照提交到本地倉(cāng)庫(kù),然后再將本地倉(cāng)庫(kù)的最新狀態(tài)文件快照推送到遠(yuǎn)程倉(cāng)庫(kù)。這個(gè)文件快照其實(shí)就是各個(gè)文件在被添加到暫存區(qū)時(shí)的狀態(tài),就和照相的一樣,留下每個(gè)不同時(shí)刻的快照,方便以后查詢,而git存儲(chǔ)的就是這些一系列的快照。說到這個(gè)快照就要說說git的對(duì)象了。

    Git對(duì)象

         在.git-》Objects文件夾是一個(gè)個(gè)的git對(duì)象,是38位的哈希值,這樣就意味著沒有兩個(gè)相同的對(duì)象名。

             從根本上講,git是一套內(nèi)容尋址的文件系統(tǒng),它存儲(chǔ)的也是key-value鍵值對(duì),然后根據(jù)key值來查找value的,說到尋址就會(huì)想到指針吧,不錯(cuò),git也是根據(jù)指針來尋址的,這些指針就存儲(chǔ)在git的對(duì)象中。Git一共有四種對(duì)象,commit對(duì)象,tree對(duì)象和blob對(duì)象和tag對(duì)象,這里可以理解tag是commit的別名,下面便是這三個(gè)對(duì)象:

           每個(gè)目錄都創(chuàng)建了“tree”對(duì)象, 每個(gè)文件都創(chuàng)建了一個(gè)對(duì)應(yīng)的“blob”對(duì)象。最后有一個(gè)“commit”對(duì)象來指向根“tree”對(duì)象,這樣我們就可以追蹤項(xiàng)目每一項(xiàng)提交內(nèi)容。

         

          這個(gè)blob對(duì)象對(duì)應(yīng)的就是文件快照中那些發(fā)生變化的文件內(nèi)容,而

          tree對(duì)象則記錄了文件快照中各個(gè)目錄和文件的結(jié)構(gòu)關(guān)系,它指向了被跟蹤的快照,

          commit對(duì)象則記錄了每次提交到本地倉(cāng)庫(kù)的文件快照,

          從在開發(fā)過程中,我們會(huì)提交很多次文件快照,那么第一次提交的內(nèi)容會(huì)用一個(gè)commit來記錄,這個(gè)commit 沒有指針指向上一個(gè)commit對(duì)象,因?yàn)闆]有上一個(gè)commit,他是第一個(gè),當(dāng)?shù)诙翁峤粫r(shí),又會(huì)有另外一個(gè)commit對(duì)象來記錄,那么這次commit對(duì)象中就會(huì)有一個(gè)指針指向上一次提交后的commit對(duì)象,經(jīng)過很多次提交后就會(huì)有很多的commit對(duì)象,它們組成了一個(gè)鏈表,當(dāng)我們要恢復(fù)哪個(gè)版本的時(shí)候,只要找到這個(gè)commit對(duì)象就能恢復(fù)那個(gè)版本的文件。而我們所謂的HEAD對(duì)象其實(shí)就是指向最近一個(gè)提交的commit對(duì)象,也就是最后一個(gè)commit對(duì)象。

    二、百度快照一年多少錢

    快照有幾千到上萬(wàn)不等的,要看你做的質(zhì)量和數(shù)量

    快照指照相館的一種沖洗過程短的照片·如:證件快照?;谟布幊碳夹g(shù)的一種,針對(duì)內(nèi)存進(jìn)行的快速讀取技術(shù),常用于硬件開發(fā)。

    搜索引擎快照

    搜索引擎快照,是指在訪客在無(wú)法打開某個(gè)搜索結(jié)果,或者打開速度特別慢的情況下,為訪客提供的之前保存在搜索引擎服務(wù)器上對(duì)應(yīng)網(wǎng)頁(yè)內(nèi)容的純文本。不過,搜索引擎保存的快照內(nèi)容一般只包括文本數(shù)據(jù),圖片及其他多媒體等非文本數(shù)據(jù)不會(huì)被保存。因此,在來源網(wǎng)站無(wú)法訪問的情況下,圖片及其他多媒體在快照中將無(wú)法顯示。

    存儲(chǔ)快照

    全球網(wǎng)絡(luò)存儲(chǔ)工業(yè)協(xié)會(huì)SNIA(StorageNetworking Industry Association)對(duì)快照(Snapshot)的定義是:關(guān)于指定數(shù)據(jù)集合的一個(gè)完全可用拷貝,該拷貝包括相應(yīng)數(shù)據(jù)在某個(gè)時(shí)間點(diǎn)(拷貝開始的時(shí)間點(diǎn))的映像??煺湛梢允瞧渌硎镜臄?shù)據(jù)的一個(gè)副本,也可以是數(shù)據(jù)的一個(gè)復(fù)制品。

    快照的作用主要是能夠進(jìn)行在線數(shù)據(jù)備份與恢復(fù)。當(dāng)存儲(chǔ)設(shè)備發(fā)生應(yīng)用故障或者文件損壞時(shí)可以進(jìn)行快速的數(shù)據(jù)恢復(fù),將數(shù)據(jù)恢復(fù)某個(gè)可用的時(shí)間點(diǎn)的狀態(tài)。快照的另一個(gè)作用是為存儲(chǔ)用戶提供了另外一個(gè)數(shù)據(jù)訪問通道,當(dāng)原數(shù)據(jù)進(jìn)行在線應(yīng)用處理時(shí),用戶可以訪問快照數(shù)據(jù),還可以利用快照進(jìn)行測(cè)試等工作。所有存儲(chǔ)系統(tǒng),不論高中低端,只要應(yīng)用于在線系統(tǒng),那么快照就成為一個(gè)不可或缺的功能。 [1]

    快照的實(shí)現(xiàn)方式

    當(dāng)前實(shí)現(xiàn)快照有主要有兩種技術(shù),一種是第一次寫時(shí)復(fù)制(Copy OnFirst Write,COFW),有時(shí)簡(jiǎn)稱為寫時(shí)復(fù)制(CopyOn Write,COW)。即在數(shù)據(jù)第一次寫入到某個(gè)存儲(chǔ)位置時(shí),首先將原有的內(nèi)容讀取出來,寫到另一位置處(為快照保留的存儲(chǔ)空間,此文中我們稱為快照空間),然后再將數(shù)據(jù)寫入到存儲(chǔ)設(shè)備中。而下次針對(duì)這一位置的寫操作將不再執(zhí)行寫時(shí)復(fù)制操作。這種技術(shù)常在計(jì)算機(jī)相關(guān)的技術(shù)中經(jīng)常初使用,其基本原理大同小異,只是面向的對(duì)象不同,適用的場(chǎng)合不一樣。從COW 的執(zhí)行過程我們可以知道,這種實(shí)現(xiàn)方式在第一次寫入某個(gè)存儲(chǔ)位置時(shí)需要完成一個(gè)讀操作(讀原位置的數(shù)據(jù)),兩個(gè)寫操作(寫原位置與寫快照空間),如果寫入頻繁,那么這種方式將非常消耗IO時(shí)間。因此可推斷,如果預(yù)計(jì)某個(gè)卷上的I/O多數(shù)以讀操作為主,寫操作較少,這種方式的快照實(shí)現(xiàn)技術(shù)是一個(gè)較理想的選擇,因?yàn)榭煺盏耐瓿尚枰^少的時(shí)間。除此之外,如果一個(gè)應(yīng)用易出現(xiàn)寫入熱點(diǎn),即只針對(duì)某個(gè)有限范圍內(nèi)的數(shù)據(jù)進(jìn)行寫操作,那么COW的快照實(shí)現(xiàn)方式也是較理想的選擇。因?yàn)槠鋽?shù)據(jù)更改都局限在一個(gè)范圍內(nèi),對(duì)同一份數(shù)據(jù)的多次寫操作只會(huì)出現(xiàn)一次寫時(shí)復(fù)制操作。

    快照生成過程的示意圖:SNIA 將快照的實(shí)現(xiàn)方式表述為:鏡像分離(split mirror)、改變塊(changed block)、并發(fā)(concurrent)三大類。后兩種在實(shí)現(xiàn)時(shí)其實(shí)質(zhì)就是寫時(shí)復(fù)制及I/O重定向。對(duì)于 split mirror的方式,由于其靈活性以及開銷問題,在實(shí)際的存儲(chǔ)系統(tǒng)中,并不實(shí)用。

    三、Redis持久化的方式選擇與原理

    通常Redis將數(shù)據(jù)存儲(chǔ)在內(nèi)存中或虛擬內(nèi)存中,但它提供了數(shù)據(jù)持久化功能可以把內(nèi)存中的數(shù)據(jù)持久化到磁盤。持久化有什么好處呢?比如可以保證斷電后數(shù)據(jù)不會(huì)丟失,升級(jí)服務(wù)器也會(huì)變得更加方便。

    1.RDB 持久化機(jī)制 :是對(duì) redis 數(shù)據(jù)執(zhí)行周期性的持久化。

    這種方式就是將內(nèi)存中數(shù)據(jù)以快照的方式寫入到二進(jìn)制文件中,默認(rèn)的文件名為 dump.rdb??蛻舳艘部梢允褂胹ave或者bgsave命令通知redis做一次快照持久化。save操作是在主線程中保存快照的,由于redis是用一個(gè)主線程來處理所有客戶端的請(qǐng)求,這種方式會(huì)阻塞所有客戶端請(qǐng)求。所以不推薦使用。另一點(diǎn)需要注意的是,每次快照持久化都是將內(nèi)存數(shù)據(jù)完整寫入到磁盤一次,并不是增量的只同步增量數(shù)據(jù)。如果數(shù)據(jù)量大的話,寫操作會(huì)比較多,必然會(huì)引起大量的磁盤IO操作,可能會(huì)嚴(yán)重影響性能。

    2.AOF持久化機(jī)制 :AOF 機(jī)制對(duì)每條寫入命令作為日志,以 append-only 的模式寫入一個(gè)日志文件中,在 redis 重啟的時(shí)候,可以通過回放 AOF 日志中的寫入指令來重新構(gòu)建整個(gè)數(shù)據(jù)集。當(dāng)然由于操作系統(tǒng)會(huì)在內(nèi)核中緩存write做的修改,所以可能不是立即寫到磁盤上。這樣的持久化還是有可能會(huì)丟失部分修改。不過我們可以通過配置文件告訴 redis我們想要通過fsync函數(shù)強(qiáng)制操作系統(tǒng)寫入到磁盤的時(shí)機(jī)。

    appendonly yes //啟用日志追加持久化方式

    (1)appendfsync always //收到寫命令就立即強(qiáng)制寫入磁盤。最慢的,但是保證完全持久化,不推薦使用。

    (2)appendfsync everysec //每秒鐘強(qiáng)制寫入磁盤一次,在性能和持久化方面做了很好的折中,推薦使用。

    (3)appendfsync no //完全依賴操作系統(tǒng),性能最好,持久化沒保證。

    通過 RDB 或 AOF,都可以將 redis 內(nèi)存中的數(shù)據(jù)持久化到磁盤上面來,然后可以將這些數(shù)據(jù)備份到別的地方去。

    1.RDB方式

    優(yōu)點(diǎn):

    缺點(diǎn):

    2.AOF方式

    優(yōu)點(diǎn):

    缺點(diǎn):

    不要僅僅使用 RDB,因?yàn)槟菢訒?huì)導(dǎo)致你丟失很多數(shù)據(jù);也不要僅僅使用 AOF,因?yàn)槟菢佑袃蓚€(gè)問題:第一,你通過 AOF 做冷備,沒有 RDB 做冷備來的恢復(fù)速度更快;第二,RDB 每次簡(jiǎn)單粗暴生成數(shù)據(jù)快照,更加健壯,可以避免 AOF 這種復(fù)雜的備份和恢復(fù)機(jī)制的 bug;redis 支持同時(shí)開啟開啟兩種持久化方式,我們可以綜合使用 AOF 和 RDB 兩種持久化機(jī)制,用 AOF 來保證數(shù)據(jù)不丟失,作為數(shù)據(jù)恢復(fù)的第一選擇; 用 RDB 來做不同程度的冷備,在 AOF 文件都丟失或損壞不可用的時(shí)候,還可以使用 RDB 來進(jìn)行快速的數(shù)據(jù)恢復(fù)。

    出處: https://www.cnblogs.com/bigbaby/p/15879126.html

    四、什么是云存儲(chǔ)技術(shù)

    云存儲(chǔ)是在云計(jì)算(cloud computing)概念上延伸和發(fā)展出來的一個(gè)新的概念,是指通過集群應(yīng)用、網(wǎng)格技術(shù)或分布式文件系統(tǒng)等功能,將網(wǎng)絡(luò)中大量各種不同類型的存儲(chǔ)設(shè)備通過應(yīng)用軟件集合起來協(xié)同工作,共同對(duì)外提供數(shù)據(jù)存儲(chǔ)和業(yè)務(wù)訪問功能的一個(gè)系統(tǒng)。 當(dāng)云計(jì)算系統(tǒng)運(yùn)算和處理的核心是大量數(shù)據(jù)的存儲(chǔ)和管理時(shí),云計(jì)算系統(tǒng)中就需要配置大量的存儲(chǔ)設(shè)備,那么云計(jì)算系統(tǒng)就轉(zhuǎn)變成為一個(gè)云存儲(chǔ)系統(tǒng),所以云存儲(chǔ)是一個(gè)以數(shù)據(jù)存儲(chǔ)和管理為核心的云計(jì)算系統(tǒng)。

    云存儲(chǔ)的兩個(gè)層面

    云存儲(chǔ)的兩個(gè)層面是作為云計(jì)算支撐的存儲(chǔ)計(jì)算,主要涉及分布式存儲(chǔ)(如分布式文件系統(tǒng)、IPSAN、數(shù)據(jù)同步、復(fù)制)、數(shù)據(jù)存儲(chǔ)(如重復(fù)數(shù)據(jù)刪除、數(shù)據(jù)壓縮、數(shù)據(jù)編碼)和數(shù)據(jù)保護(hù)(如RAID、CDP、快照、備份與容災(zāi))等技術(shù)領(lǐng)域,如圖8-30所示,這在第6章中已有所介紹。

    和云安全技術(shù)一樣,云存儲(chǔ)技術(shù)也需要利用現(xiàn)有的所有存儲(chǔ)技術(shù)針對(duì)云計(jì)算三層架構(gòu)的各個(gè)環(huán)節(jié)采用適當(dāng)?shù)拇鎯?chǔ)技術(shù),才能取得最佳效果,例如,對(duì)應(yīng)不同需求,有時(shí)應(yīng)該使用數(shù)據(jù)庫(kù)技術(shù)但有時(shí)卻應(yīng)該使用LDAP技術(shù),有些性能要求高的系統(tǒng)不能使用SAN或NAS,需直接使用基于RPC或Socket技術(shù)的并發(fā)文件系統(tǒng),有些應(yīng)用使用SAN成本太高等,這里不再做深入介紹。如圖8-31所示是一個(gè)采用NetApp FAS、思科 UCS和 VMWare vShpere 4技術(shù)打造的存儲(chǔ)系統(tǒng),對(duì)上述兩種云存儲(chǔ)技術(shù)和應(yīng)用都有促進(jìn)作用。

    云存儲(chǔ)架構(gòu)

    分為兩類:一種是通過服務(wù)來架構(gòu);另一種是通過軟件或硬件設(shè)備來架構(gòu)。

    傳統(tǒng)的系統(tǒng)利用緊耦合對(duì)稱架構(gòu),這種架構(gòu)的設(shè)計(jì)旨在解決HPC(高性能計(jì)算、超級(jí)運(yùn)算)問題,現(xiàn)在其正在向外擴(kuò)展成為云存儲(chǔ)從而滿足快速呈現(xiàn)的市場(chǎng)需求。下一代架構(gòu)已經(jīng)采用了松弛耦合非對(duì)稱架構(gòu),集中元數(shù)據(jù)和控制操作,這種架構(gòu)并不非常適合高性能HPC,但是這種設(shè)計(jì)旨在解決云部署的大容量存儲(chǔ)需求。各種架構(gòu)的摘要信息如下:

    緊耦合對(duì)稱(TCS)架構(gòu)

    構(gòu)建TCS系統(tǒng)是為了解決單一文件性能所面臨的挑戰(zhàn),這種挑戰(zhàn)限制了傳統(tǒng)NAS系統(tǒng)的發(fā)展。HPC系統(tǒng)所具有的優(yōu)勢(shì)迅速壓倒了存儲(chǔ),因?yàn)樗鼈冃枰膯我晃募蘒/O操作要比單一設(shè)備的I/O操作多得多。業(yè)內(nèi)對(duì)此的回應(yīng)是創(chuàng)建利用TCS架構(gòu)的產(chǎn)品,很多節(jié)點(diǎn)同時(shí)伴隨著分布式鎖管理(鎖定文件不同部分的寫操作)和緩存一致性功能。這種解決方案對(duì)于單文件吞吐量問題很有效,幾個(gè)不同行業(yè)的很多HPC客戶已經(jīng)采用了這種解決方案。這種解決方案很先進(jìn),需要一定程度的技術(shù)經(jīng)驗(yàn)才能安裝和使用。

    松弛耦合非對(duì)稱(LCA)架構(gòu)

    LCA系統(tǒng)采用不同的方法來向外擴(kuò)展。它不是通過執(zhí)行某個(gè)策略來使每個(gè)節(jié)點(diǎn)知道每個(gè)行動(dòng)所執(zhí)行的操作,而是利用一個(gè)數(shù)據(jù)路徑之外的中央元數(shù)據(jù)控制服務(wù)器。集中控制提供了很多好處,允許進(jìn)行新層次的擴(kuò)展:

    ● 存儲(chǔ)節(jié)點(diǎn)可以將重點(diǎn)放在提供讀寫服務(wù)的要求上,而不需要來自網(wǎng)絡(luò)節(jié)點(diǎn)的確認(rèn)信息。

    ● 節(jié)點(diǎn)可以利用不同的商品硬件CPU和存儲(chǔ)配置,而且仍然在云存儲(chǔ)中發(fā)揮作用。

    ● 用戶可以通過利用硬件性能或虛擬化實(shí)例來調(diào)整云存儲(chǔ)。

    ● 消除節(jié)點(diǎn)之間共享的大量狀態(tài)開銷也可以消除用戶計(jì)算機(jī)互聯(lián)的需要,如光纖通道或infiniband,從而進(jìn)一步降低成本。

    ● 異構(gòu)硬件的混合和匹配使用戶能夠在需要的時(shí)候在當(dāng)前經(jīng)濟(jì)規(guī)模的基礎(chǔ)上擴(kuò)大存儲(chǔ),同時(shí)還能提供永久的數(shù)據(jù)可用性。

    ● 擁有集中元數(shù)據(jù)意味著,存儲(chǔ)節(jié)點(diǎn)可以旋轉(zhuǎn)地進(jìn)行深層次應(yīng)用程序歸檔,而且在控制節(jié)點(diǎn)上,元數(shù)據(jù)經(jīng)常都是可用的。

    以上就是關(guān)于存儲(chǔ)快照原理相關(guān)問題的回答。希望能幫到你,如有更多相關(guān)問題,您也可以聯(lián)系我們的客服進(jìn)行咨詢,客服也會(huì)為您講解更多精彩的知識(shí)和內(nèi)容。


    推薦閱讀:

    拍名片自動(dòng)存儲(chǔ)軟件(拍名片自動(dòng)存儲(chǔ)軟件有哪些)

    未檢測(cè)到可用的存儲(chǔ)分區(qū)(未檢測(cè)到可用的存儲(chǔ)分區(qū) 請(qǐng)手動(dòng)選擇)

    云計(jì)算云存儲(chǔ)是什么(云計(jì)算 云存儲(chǔ))

    戶外廣告策劃公司(戶外廣告策劃公司簡(jiǎn)介)

    網(wǎng)絡(luò)熱門歌曲排行榜(網(wǎng)絡(luò)熱門歌曲排行榜播放)