秦 聯(lián)
(廊坊市財(cái)政局,廊坊 065000)
?
如何引導(dǎo)大緩存
秦 聯(lián)
(廊坊市財(cái)政局,廊坊 065000)
摘要:緩存是指在計(jì)算機(jī)存儲(chǔ)系統(tǒng)的層次結(jié)構(gòu)中,介于中央處理器和主存儲(chǔ)器之間的高速小容量存儲(chǔ)器。緩存和主存儲(chǔ)器一起構(gòu)成一級(jí)存儲(chǔ)器,高速緩沖存儲(chǔ)器和主存儲(chǔ)器之間信息的調(diào)度和傳送是由硬件自動(dòng)進(jìn)行。在計(jì)算機(jī)的發(fā)展歷程中,依據(jù)摩爾定律,計(jì)算系統(tǒng)中的中央處理器性能發(fā)展迅速。而磁盤(pán)作為計(jì)算系統(tǒng)中的主存儲(chǔ)器,由于機(jī)械機(jī)理的限制,其發(fā)展速度遠(yuǎn)遠(yuǎn)不及中央處理器的發(fā)展速度,形成了中央處理器數(shù)據(jù)處理快而磁盤(pán)讀寫(xiě)數(shù)據(jù)緩慢的狀況,從而降低整個(gè)計(jì)算機(jī)系統(tǒng)工作效率。因此,通過(guò)在兩者之間增加一個(gè)緩沖層來(lái)協(xié)調(diào)兩者之間數(shù)據(jù)調(diào)動(dòng)效率問(wèn)題,緩存由此應(yīng)運(yùn)而生。緩存的處理速率接近于中央處理器,可以通過(guò)擴(kuò)大緩存容量,緩解兩者之間處理效率差距,能夠快速響應(yīng)中央處理器和磁盤(pán)之間的讀寫(xiě)請(qǐng)求,作為兩者之間的緩沖池,緩存在一個(gè)適當(dāng)范圍內(nèi)越大越好。由于緩存資源的珍貴,因此,緩存成為一個(gè)計(jì)算系統(tǒng)性能高低的重要標(biāo)志。
關(guān)鍵詞:緩存;存儲(chǔ);影響因素
數(shù)據(jù)計(jì)算、數(shù)據(jù)傳輸及數(shù)據(jù)存儲(chǔ)是IT系統(tǒng)中三大組織結(jié)構(gòu),存儲(chǔ)設(shè)備擔(dān)負(fù)著數(shù)據(jù)存儲(chǔ)。隨著計(jì)算資源的增加和業(yè)務(wù)快速響應(yīng)的需求,由于存儲(chǔ)設(shè)備自身的結(jié)構(gòu)問(wèn)題,導(dǎo)致存儲(chǔ)成為整個(gè)計(jì)算系統(tǒng)的性能瓶頸。通過(guò)提高存儲(chǔ)的處理能力,從而大幅度提高整個(gè)計(jì)算系統(tǒng)的數(shù)據(jù)處理能力,提高存儲(chǔ)緩存可以快速有效地提升存儲(chǔ)性能。存儲(chǔ)緩存包括容量、性能、可靠性三個(gè)相輔相成的方面。緩存性能包括緩存的傳輸帶寬、周邊配套總線和外設(shè)的帶寬、緩存的分配調(diào)度算法等方面;緩存可靠性包括緩存鏡像保護(hù)、掉電保護(hù)的機(jī)制;緩存容量體現(xiàn)在最大容量、按需配置等方面。容量、性能、可靠性這三方面缺一不可,任何一部分的缺失,都會(huì)影響到存儲(chǔ)緩存的實(shí)際效用。因此,增加緩存容量絕不僅僅是增加幾根內(nèi)存條那么簡(jiǎn)單,其架構(gòu)設(shè)計(jì)復(fù)雜,這也是專業(yè)存儲(chǔ)系統(tǒng)的設(shè)計(jì)核心。存儲(chǔ)本身是由大量機(jī)械磁盤(pán)組成的磁盤(pán)陣列,除了努力提高單個(gè)磁盤(pán)的IO能力,通過(guò)增加存儲(chǔ)的緩存容量、提升緩存性能、優(yōu)化緩存算法同樣可以迅速、經(jīng)濟(jì)的提高存儲(chǔ)性能。
相對(duì)于服務(wù)器的緩存,存儲(chǔ)設(shè)備的作用和特點(diǎn)決定了存儲(chǔ)緩存自身的作用:
(1)數(shù)據(jù)緩沖功能:磁盤(pán)驅(qū)動(dòng)器不能快速響應(yīng)服務(wù)器及其業(yè)務(wù)軟件產(chǎn)生的頻繁讀寫(xiě)操作,需要通過(guò)存儲(chǔ)緩存作為緩沖池來(lái)平衡兩者讀寫(xiě)性能差距。緩存分為讀緩存和寫(xiě)緩存,分別用于服務(wù)器讀取存儲(chǔ)設(shè)備數(shù)據(jù)和寫(xiě)入數(shù)據(jù),合理的緩存調(diào)度算法和大容量緩存,可以很好地提升存儲(chǔ)讀寫(xiě)性能。針對(duì)不同的應(yīng)用環(huán)境,可以靈活地分配讀寫(xiě)緩存分配比例及緩存塊大小。
(2)數(shù)據(jù)管理功能:存儲(chǔ)自身是一個(gè)獨(dú)立的計(jì)算系統(tǒng)。存儲(chǔ)有諸如快照、快照視圖、復(fù)制、鏡像、自動(dòng)精簡(jiǎn)配置、RAID等功能,當(dāng)存儲(chǔ)開(kāi)啟功能套件時(shí),軟件運(yùn)行在存儲(chǔ)的緩存中,直到存儲(chǔ)關(guān)閉功能套件才退出緩存。當(dāng)存儲(chǔ)啟動(dòng)越多功能套件,所占用存儲(chǔ)緩存就越多。每個(gè)功能套件實(shí)現(xiàn)的原理不同,其復(fù)雜度也不同,所需要的緩存也不一樣,這些功能越豐富、越復(fù)雜的功能套件對(duì)存儲(chǔ)的緩存需求也更多。
(3)存儲(chǔ)自身需求:存儲(chǔ)底層平臺(tái)是一個(gè)操作系統(tǒng),存儲(chǔ)啟動(dòng)時(shí)需要加載操作系統(tǒng),其自身也占用一定的緩存,隨著存儲(chǔ)平臺(tái)的不斷完善和功能不斷增加,存儲(chǔ)操作系統(tǒng)所占用緩存從幾百M(fèi)B到幾GB不等,且一直駐存在緩存中。
由服務(wù)器的應(yīng)用程序所產(chǎn)生的IO數(shù)據(jù)流處理、存儲(chǔ)層RAID校驗(yàn)的計(jì)算、緩存讀寫(xiě)策略等,都需要通過(guò)存儲(chǔ)緩存來(lái)處理,存儲(chǔ)緩存的容量、性能、緩存的算法直接影響著存儲(chǔ)對(duì)數(shù)據(jù)處理的快慢,也是影響業(yè)務(wù)快慢的因素之一,存儲(chǔ)設(shè)備數(shù)據(jù)處理越快,對(duì)服務(wù)器的響應(yīng)也就越及時(shí)。通常對(duì)存儲(chǔ)緩存配置大小有影響的是:
(1)服務(wù)器上的業(yè)務(wù)需求:一方面服務(wù)器將業(yè)務(wù)軟件產(chǎn)生的數(shù)據(jù)寫(xiě)到存儲(chǔ),另一方面服務(wù)器從存儲(chǔ)設(shè)備上讀取業(yè)務(wù)軟件所需數(shù)據(jù),通常讀數(shù)據(jù)的請(qǐng)求遠(yuǎn)高于寫(xiě)數(shù)據(jù)的請(qǐng)求。當(dāng)存儲(chǔ)設(shè)備接入大量服務(wù)器,特別是在業(yè)務(wù)高峰期時(shí)段,就需要高性能存儲(chǔ)支撐業(yè)務(wù),特別是對(duì)非順序讀寫(xiě)數(shù)據(jù)、大文件讀寫(xiě)對(duì)存儲(chǔ)緩存要求更高,服務(wù)器數(shù)量及業(yè)務(wù)量越多,讀寫(xiě)數(shù)據(jù)就越多,面對(duì)業(yè)務(wù)密集型情況,更容易產(chǎn)生爆發(fā)式的數(shù)據(jù)請(qǐng)求,對(duì)存儲(chǔ)設(shè)備的IOPS要求就越高,從而需要更大的緩存來(lái)處理。一般的,服務(wù)器的緩存越大,意味著其處理性能越強(qiáng),對(duì)后端存儲(chǔ)要求更高,需要存儲(chǔ)配置相應(yīng)的緩存,通常來(lái)講,存儲(chǔ)可用緩存大小為接入到存儲(chǔ)的服務(wù)器緩存的1/3,則可以很好滿足業(yè)務(wù)響應(yīng)。表1中列出推薦服務(wù)器內(nèi)存大小和存儲(chǔ)緩存之間的配比。
表1 服務(wù)器內(nèi)存與存儲(chǔ)緩存配置比例
(2)磁盤(pán)及LUN的影響:磁盤(pán)自身機(jī)械性質(zhì)決定了磁盤(pán)轉(zhuǎn)速,低轉(zhuǎn)速限制了磁盤(pán)的讀寫(xiě)性能,一塊機(jī)械盤(pán)IOPS一般在150到250之間,而處理器的運(yùn)算能力達(dá)到上百億級(jí)別,兩者之間的性能存在上萬(wàn)倍差距。另外,業(yè)務(wù)數(shù)據(jù)量的增加,不可避免的需要更多磁盤(pán)來(lái)儲(chǔ)存數(shù)據(jù)。存儲(chǔ)設(shè)備通過(guò)大量磁盤(pán)形成存儲(chǔ)池,將存儲(chǔ)空間通過(guò)LUN映射的方式分配到服務(wù)器,服務(wù)器的讀寫(xiě)都是在LUN上進(jìn)行,數(shù)據(jù)讀寫(xiě)操作都發(fā)生在磁盤(pán)上,磁盤(pán)與處理器的差距必須依靠緩存作為緩沖池來(lái)彌補(bǔ)。磁盤(pán)數(shù)越多,IO分布就越廣,就需要相應(yīng)更大的存儲(chǔ)緩存;LUN上數(shù)據(jù)的讀寫(xiě)都需要通過(guò)緩存處理,實(shí)際驗(yàn)證表明,LUN越多,需要開(kāi)銷的緩存越多,單個(gè)LUN配置緩存越大則讀寫(xiě)性能越好。通常單個(gè)正常讀寫(xiě)LUN配置1GB緩存,讀寫(xiě)操作比較頻繁的LUN配置5GB至20GB緩存。如圖1所示,實(shí)際測(cè)試環(huán)境下,將LUN配置緩存從1GB增加到20GB,性能可提升20倍至40倍,同一塊LUN配置緩存越大則性能越好。
圖1 同樣大小LUN配置不同大小緩存
表2 開(kāi)啟功能軟件推薦配置緩存大小
(3)存儲(chǔ)功能軟件的影響:存儲(chǔ)設(shè)備集成了越來(lái)越多的功能,諸如快照、快照視圖、復(fù)制、鏡像、緩存熱點(diǎn)、熱點(diǎn)數(shù)據(jù)自動(dòng)分層等,這些功能通常部署在存儲(chǔ)層,運(yùn)行在存儲(chǔ)的緩存中。當(dāng)觸發(fā)功能軟件運(yùn)行的閥值時(shí),功能軟件就加載在存儲(chǔ)設(shè)備的緩存中,直到關(guān)閉功能軟件才釋放相應(yīng)的緩存空間。啟動(dòng)的功能越多,則相應(yīng)的需要更多緩存進(jìn)行處理這些功能需求。以快照為例,單個(gè)應(yīng)用的快照越多則需要更大的緩存來(lái)支撐,緩存越大,存儲(chǔ)設(shè)備創(chuàng)建快照越快,系統(tǒng)對(duì)快照的操作越快。如表2所示,如果產(chǎn)生1TB數(shù)據(jù)的快照,則需要配置3GB數(shù)據(jù)緩存,當(dāng)開(kāi)啟快照視圖時(shí),需要更多的數(shù)據(jù)緩存;如果開(kāi)啟緩存熱點(diǎn)功能,每1TB數(shù)據(jù)則需要配置3GB數(shù)據(jù)緩存;如果開(kāi)啟復(fù)制功能,由于每一個(gè)復(fù)制需要?jiǎng)?chuàng)建一個(gè)快照,所以復(fù)制1TB數(shù)據(jù),則需要?jiǎng)?chuàng)建1TB的快照,從而需要3GB數(shù)據(jù)緩存,當(dāng)復(fù)制數(shù)據(jù)量變大時(shí),需要?jiǎng)?chuàng)建更大的快照,從而需要更大的數(shù)據(jù)緩存,復(fù)制數(shù)量越大則所需數(shù)據(jù)緩存越大。
海上搜救志愿者深夜出動(dòng)成功救助14名遇險(xiǎn)漁民
2016年3月10日23時(shí)30分許,一艘載有14名漁民的養(yǎng)蠔船在廣東珠海高欄島附近海域因風(fēng)浪大主機(jī)故障失去動(dòng)力遇險(xiǎn),情況危急,請(qǐng)求救助。廣東珠海金灣區(qū)海上救助協(xié)會(huì)接到廣東省海上搜救中心的搜救指令后,立即派出6名海上搜救志愿者駕駛2艘快艇前往事發(fā)海域進(jìn)行救助。搜救隊(duì)員冒著6~7級(jí)、陣風(fēng)8級(jí)東北風(fēng)在事發(fā)附近海域成功找到遇險(xiǎn)養(yǎng)蠔船,并將14名遇險(xiǎn)漁民全部安全轉(zhuǎn)移至高欄島赤魚(yú)頭碼頭,險(xiǎn)情解除。
據(jù)了解,廣東珠海金灣區(qū)海上救助協(xié)會(huì),成立于2007年3月,原名三灶鎮(zhèn)漁民海上救助隊(duì),最初由三灶鎮(zhèn)中心村5名漁民自行發(fā)起,后來(lái)逐步發(fā)展到現(xiàn)在83名漁民和26艘船艇,中國(guó)海上搜救中心也對(duì)救助裝備建設(shè)給予了一定指導(dǎo)和支持。2014年,三灶漁民海上救助隊(duì)改名為金灣區(qū)海上救助協(xié)會(huì),并在珠海市金灣區(qū)民政局注冊(cè)。救助協(xié)會(huì)以“自助、自救、互助、互救”為宗旨,積極響應(yīng)政府號(hào)召參與應(yīng)急救助行動(dòng),開(kāi)展?jié)O民自救和互救活動(dòng),是海上專業(yè)救助力量的有力補(bǔ)充,自2010年以來(lái),平均每年參與10多起海上險(xiǎn)情應(yīng)急救援行動(dòng)。
How to Guide the Big Cache
Qin Lian
(Langfang City Finance Bureau, Langfang, 065000)
Abstract:Cache, it is to point to in the hierarchical structure of the computer storage system, between the CPU and main memory of the small capacity storage at a high speed. Cache and main memory together form the primary memory, cache memory and scheduling information between main memory and is transmitted by the hardware automatically. In the development of computer, according to Moore's law, calculate the CPU performance of the system is developing rapidly. And disk as the main storage in computing system, as a result of the limitation of mechanical mechanism, its development speed is far less than the development speed of the CPU, formed the CPU data processing fast and slow disk read and write data, thereby reducing the entire computer system work efficiency. Therefore, by adding a buffer layer between the two coordinate data transfer between efficiency, cache which arises at the historic moment. Processing rates are close to the central processor cache, by expanding the cache capacity, alleviate processing efficiency gap between, can rapid response between the CPU and disk read and write requests, as between the buffer pool, cached in a proper range is bigger, the better. Due to cache the precious resources and, therefore, the cache become important symbol of a computing system performance.
Keywords:cache; storage; the influence factors
中圖分類號(hào):TP3
文獻(xiàn)標(biāo)識(shí)碼:B 文章編碼:1672-7274(2016)04-0037-03
doi:10.3969/J.ISSN.1672-7274.2016.04.011