您好,登錄后才能下訂單哦!
這篇文章主要介紹“服務(wù)器硬盤的概念是什么”,在日常操作中,相信很多人在服務(wù)器硬盤的概念是什么問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”服務(wù)器硬盤的概念是什么”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!
順序 和 隨機(jī)
磁盤的順序訪問和隨機(jī)訪問是怎么定義的呢?如果一次IO操作起始的邏輯塊地址logical block address (LBA)緊挨著上一次IO操作的終止 LBA,就是順序訪問,否則就是隨機(jī)訪問。下邊這個圖比較形象(https://en.wikipedia.org/wiki/IOPS)。
邏輯地址是程序中認(rèn)識的塊地址,編號順序遞增。除了 LBA 還有 PBA(物理塊地址),一般邏輯和物理地址會有一個對應(yīng)關(guān)系。物理地址就是數(shù)據(jù)在磁盤上的實際地址了。
Throughput
吞吐率,是指順序從磁盤讀取數(shù)據(jù)時候,能達(dá)到的最大傳輸速度,通常單位是 MB/s。衡量大數(shù)據(jù)量的傳輸效率基本都用吞吐率。這個應(yīng)該是單線程統(tǒng)計的。
latency
是一次操作的耗時,一般指發(fā)送請求到返回結(jié)果的時間,從磁盤角度看,不僅包括定位數(shù)據(jù),還包括數(shù)據(jù)傳輸?shù)臅r間。latency這個詞本身并沒有規(guī)定要訪問多大的數(shù)據(jù)量。
IOPS
IOPS是每秒執(zhí)行的操作數(shù)量,一般測的是隨機(jī)訪問,各種硬盤廠商聲稱硬盤的IOPS相當(dāng)高,但是實際用的時候不是那么回事。因為這個東西依賴latency和工作負(fù)載,比如一次操作訪問數(shù)據(jù)量的大小,等待隊列中的讀寫請求數(shù)等。1998年 Intel 公布了一個開源的測IOPS的工具,叫 Iometer,說你們都別自己玩了,咱們統(tǒng)一都用這個比,就是定了個 benchmark,現(xiàn)在一般都用這個測。
HDD
HDD 就是 Hard Disk Drive,硬盤驅(qū)動器,也就是普通的機(jī)械硬盤,通過磁頭讀寫數(shù)據(jù)。HDD 的隨機(jī)訪問和順序訪問是有區(qū)別的,之前寫過一篇相關(guān)話題的文章,索引 vs 全表掃描,今天再復(fù)習(xí)一下。
把磁盤看成一個光盤,上邊有一個磁頭用來寫東西,就像鋼筆頭一樣,要在一個位置寫東西,需要先將磁頭移動到那個位置,這個操作叫seek(旋轉(zhuǎn)+尋道),接下來就是將數(shù)據(jù)順序?qū)懴氯ィ╳rite)。寫完數(shù)據(jù)之后磁頭自動向后移動,如果繼續(xù)挨著寫就不需要 seek 了。
舉個例子,以一個漢字為單位,那么順序?qū)懸痪湓?“小孩兒你好呀”,只需要將磁頭 seek 一次到“小”要寫的位置,然后 write “小”,接下來直接把“孩兒你好呀” 一個個 write 到后邊就可以了,這些字在磁盤上都存在了一起。隨機(jī)寫就是把這幾個字分開存,互相不挨著。那么共需要 6 次 seek,6次 write。順序?qū)懣偸潜入S機(jī)寫要好的,因為隨機(jī)寫多了 5 次 seek 的時間。
一個 HDD 的 seek 耗時是 10ms,吞吐率是 100MB/s,也就是每秒能 write 100MB 的數(shù)據(jù)。那么以 1KB 為單位,純 write 這 1KB 的數(shù)據(jù)只需要 10us ,是seek 的 1/1000。 可以看到 seek 是很不友好的。
那你說好,我都順序?qū)懖痪秃昧耍挥?seek 不行嗎。這就需要看具體場景了。舉個例子,在微信聊天,找到好友的對話框叫 seek,輸入文字發(fā)送是 write,當(dāng)你同時跟一個妹子聊天,并且跟一個基友對罵時候,你能不 seek 嗎。
由于HDD 可以覆蓋寫,所以 LBA 和 PBA 是一一對應(yīng)的,連續(xù)的邏輯地址也對應(yīng)了連續(xù)的物理地址,所以有隨機(jī)訪問和順序訪問的區(qū)別。
SSD
SSD 是固態(tài)硬盤,solide-state drive,超快的那種。下圖是 Intel 給出的一款 SSD 的性能指標(biāo)
順序訪問和隨機(jī)訪問本來就沒啥可比性,取決于每次隨機(jī)訪問的數(shù)據(jù)量大小。所以他這也沒用同一個單位。
為啥寫的慢呢,得看 SSD 的結(jié)構(gòu)了,SSD 是個三層次,最高層是 NAND Flash,每個 NAND Flash 里有多個 Block ,Block 里又包括很多 Page,SSD 的特點就是讀和寫都要以 Page 為單位,最少一個 Page。通常一個 Page 是 4k 或 8k。不能覆蓋寫 page,要覆蓋必須清空那個 page 所在的 Block。亦或者要先將這個 page 所在塊的數(shù)據(jù)移動到另一個被擦除的 block里。所以寫比較麻煩。
因為這些結(jié)構(gòu)的設(shè)計,SSD 上連續(xù)的一段 LBA 不一定對應(yīng)連續(xù)的 PBA ,SSD 用一個閃存轉(zhuǎn)換層 Flash Translation Layer(FTL)將這個映射管理起來了。所以,SSD 的順序?qū)懞碗S機(jī)寫沒有區(qū)別??梢援?dāng)成 SSD 都是隨機(jī)訪問數(shù)據(jù)的。
到此,關(guān)于“服務(wù)器硬盤的概念是什么”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注億速云網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬嵱玫奈恼拢?/p>
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。