天天看點

存儲和資料庫不得不說的故事

存儲和資料庫不得不說的故事

12月3日,惠普技術總監鄭曉輝老師,在【dba+社群】北京群進行了一次主題為“存儲和資料庫不得不說的故事”的線上分享。小編特别整理出其中精華内容,供大家學習交流。同時,也非常感謝鄭曉輝老師對dba+社群給予的大力支援。

嘉賓簡介  

現任中國惠普存儲事業部技術總監

從事it行業20多年,工作經曆包括硬體設計、erp開發實施、資料倉庫咨詢實施、存儲産品經理等

生活中是一個熱愛美食和電影的胖子

摘要  

大部分使用者購買存儲都是為了運作資料庫,存儲工程師和dba一直是緊密合作的兩個群體,但是畢竟立場不同,在性能優化、資料保護、容災備份等方面很多觀點迥異。作為一個存儲從業者,同時又有從1995年開始做oracle開發的經曆,希望抛磚引玉,介紹一下存儲派的相應觀點,供dba們借鑒和批判。

演講實錄 

本次分享的主要内容有:

一、存儲市場概況:包括廠商份額,主要産品評測排名等;

二、存儲産品的亮點:主要是全閃存陣列的發展;

三、存儲規劃的要點:如何保護資料

存儲市場

1、存儲發展史:

獨立存儲的起源

1)基本都是上個世紀90年代初開始發展。emc/hds,一開始主要用于大型機的連接配接,加上ibm,一共隻有這三家可以連接配接大型機。還有一家netapp,從單控nas起步,主要用于普通使用者的共享。

2)固定的raid組是一個主要的特征;

中生代的存儲

1)本世紀初開始,如hp 3par,dell compellent,主要在raid方式做了改進,底層采用虛拟化raid,資料打散分布在所有磁盤上,提高容量、性能效率,簡化了管理;

2)這一代的存儲比較重視一些管理功能,如thin provision(精簡配置),強調快照資料保護等;

3)今年一些國産存儲也是以模仿這一代的功能為主;

新形态存儲

1)軟體定義存儲:其實大部分存儲都是基于軟體實作的,隻不過銷售的時候還是捆綁了特定的硬體,是以這個概念更多是一種業務和商業層面的,技術上并無特定含義;

2)超融合存儲:采用通用硬體,通過虛拟化的方法把計算、存儲資源合在一個硬體節點裡,通過軟體實作多節點擴充;

3)開源分布式存儲:例如sheepdog、ceph這些,其技術投入、運維成本不是普通使用者可以承受的,隻有特定規模場景采用價值;

2、目前市場格局

gartner公司是it行業的教父,它用魔力象限的形式對各個it細分技術市場進行評測,從技術和市場兩個次元把廠商分為四個象限。

存儲和資料庫不得不說的故事

上圖是2014年的,右上的上司者象限有emc、hp、hds、netapp、ibm、dell。

存儲和資料庫不得不說的故事

圖檔是2015年的,右上的上司者象限有emc、hp、hds、netapp、dell、ibm、nimble。

其實就是netapp和ibm大幅度下滑,nimble崛起,其它廠商排名沒啥太大變化。

目前外部存儲市場佔有率:

存儲和資料庫不得不說的故事
存儲和資料庫不得不說的故事

大部分傳統廠商震蕩下跌;

hp小幅度上升;

華為大幅度上升;

全球存儲市場分布:

存儲和資料庫不得不說的故事

ams(美洲)基本上占一半;

china大概8.6%

具體存儲産品銷售額排行:

存儲和資料庫不得不說的故事

銷售額最新排名是

第一名hp 3par 13.3%

第二名12.3%

第三名11.1%

gartner高端存儲技術評測榜:

第一名:hds g1000/hp xp7

第二名:hp 3par ss20800

第三名:emc vmax

存儲和資料庫不得不說的故事

gartner中端存儲技術評測榜:

存儲和資料庫不得不說的故事

第一名:hp 3par

第二名:emc vnx2

第三名:nimble cs

存儲和資料庫不得不說的故事

閃存産品

1、閃存的超快速發展

存儲和資料庫不得不說的故事

上圖是近年來2.5英寸sas磁盤和ssd盤的最大容量對比,藍色為ssd;可以看到閃存容量基本每年翻一番,已經超過了摩爾定律;

2014年,閃存單盤容量超過sas;

2015年,閃存機關容量價格已經低于15k sas磁盤;

不久的将來,sas盤就會消失。

2、某廠商閃存和磁盤銷售額對比

存儲和資料庫不得不說的故事

圖示時間是财政年度,比自然年早兩個月;可以看到,閃存銷售額急劇上升,實際情況是2014年比2013年增長10倍,2015年比2014年增長5倍;在2015财年第四季度,閃存銷售額超過了磁盤。

3、閃存基本分類

slc:每個cell存儲1個bit。又快又貴,很少使用

mlc:每個cell存儲2個bit。目前主流産品;

tlc:每個cell存儲3個bit。主要用在消費類産品;

qlc:每個cell存儲4個bit。基本沒有;

3d-nand:最新的工藝,會大幅度降低成本;

總體上:ssd容量越來越大,每個cell的寫入壽命越來越小(但是由于容量變大,整體壽命并未明顯下降),相對性能也在下降,但是仍然遠遠超過sas。

4、ssd基本名額

以2.5英寸mlc為例:

單盤純讀測試, 20000 iops

單盤随機混合讀寫:5000 iops

擦寫壽命:5000次

功耗:8w左右

壽命:mlc大概擦寫5000次左右,一般ssd盤有7%-28%不等的超供(over provisioning),等到超供空間完全磨損完,從法律上這塊盤就壞了,實際不可能發生這種情況。

存儲和資料庫不得不說的故事

上圖為1.92tb ssd壽命測試記錄,一年内壽命損失大約1%。

5、閃存陣列相對傳統陣列的巨大優勢

1)以3par ss8450為例:

2u空間内,雙控制器,24塊sff尺寸的3.84tb ssd盤;

總計大約120000 iops;

92tb裸容量,raid後大約60tb可用;

功耗大約400 w;

2)價格和92tb的15k sas磁盤陣列基本相同;

3)客戶的使用成本大幅度降低,空間、能耗等;

4)這樣一台2u的存儲可以滿足大多數企業級使用者的全部主存儲需求;

是以在發達國家,大部分項目都是全閃存配置。

6、閃存陣列的銷售資訊

各廠商的入門級一般隻有十幾萬,幾個tb的容量;是以實際上閃存的應用已經非常普及。在中國,惠普的閃存銷售量是30%,磁盤70%,這個比例變得很快,今年的券商幾乎都是隻買閃存了。比如最大的券商,中信證券,一次采購了十台惠普閃存陣列,替換了三個資料中心的所有高端存儲;

而一些小規模的客戶,比如江蘇省的幾個縣人民醫院,也采購全閃存做his/pacs的核心存儲。

以上是存儲産品部分,下面讨論存儲方案

存儲和資料庫不得不說的故事

企業規劃的要點

存儲和資料庫不得不說的故事
存儲和資料庫不得不說的故事

存儲規劃要點 :

存儲和資料庫不得不說的故事

1)使用者都是從容量開始談起,逐漸提高需求層次;

2)容量、性能、可靠性都是靜态名額,第一次就可以讨論清楚;

3)可擴充性和可管理性都是動态名額,要經過很多個項目才能反映出來;

4)可用性是規劃的重點和難點。

比如使用者要買轎車,普桑、别克、寶馬三個檔次裡面,如果隻關心容量,其實沒有差別。性能理論上有差別,但是實際運作中,差别很小。主要差別是安全性,普桑沒有安全氣囊,完全不考慮安全性。寶馬比别克的優勢就展現在操控性,可以了解為可管理性和應用內建度,這是大多數it系統規劃的考量點。

我們和使用者溝通需求,在了解業務和應用背景之後,主要就是圍繞這些要點做讨論。

下圖是存儲性能的技術點

存儲和資料庫不得不說的故事

資料庫的檔案類型有很多,日志、索引、基準資料、曆史資料等;

不同類型對存儲的性能、容量要求不同,是以傳統的固定raid架構下,資料檔案的布局往往需要優化;

采用虛拟化raid後,資料在同一存儲池,性能和容量都可以最大化利用;

如果要人為設定不同資料的性能、可靠性的硬體隔離,當然也可以把陣列劃分為多個存儲池,并設定每個卷的qos;

存儲和資料庫不得不說的故事
存儲和資料庫不得不說的故事
存儲和資料庫不得不說的故事
存儲和資料庫不得不說的故事

重點不是方案,而是分析風險的來源,判斷風險的損害程度。開個玩笑:使用者經常問我,樓塌了如何容災,我直接回複,樓塌了,人已經雷射了,不需要容災。這個聽起來可怕的風險,其實不需要考慮。那麼存儲風險有哪些

存儲和資料庫不得不說的故事

邏輯風險是最大的風險。很多存儲專家滿腦子想的是實體風險,最近多起故障已經證明了邏輯風險的可怕。

存儲如何應對這些風險,中高端存儲的設計出發點就是資料保護和資料管理,純粹的資料存儲不需要高端存儲。

存儲和資料庫不得不說的故事

存儲有三種手段,快照、克隆、遠端複制。代價從低到高,實用性從高到低

快照是最适合防範邏輯風險的。

存儲和資料庫不得不說的故事

而流行的“雙活”。最怕邏輯錯誤,很容易變成“雙死”。

反過來,号稱能防邏輯錯誤的cdp,其緻命傷就是實體錯誤,如果陣列磁盤組壞了,那麼cdp就沒有用武之地了;那麼存儲保護和資料庫自身的機制有何關系。比如dg,adg。存儲保護不能代替資料庫保護,但是由于存儲在底層工作,比如上層的dg之類,性能要強太多。存儲保護必須結合資料庫保護。那麼存儲保護的價值何在:由于存儲在底層工作,比起上層的dg之類,性能要強太多。

比如3par存儲可以對一個資料庫同時生成512個快照,其中256個可寫,每一個都可以被主機挂載,建立一個獨立的執行個體來運作。采用快照克隆相結合,可以瞬間回到幾天前的資料庫狀态。

資料庫的flashback之類技術,雖然可以精确到每一個事務,但是需要耗費時間和主機資源。

存儲隻能保證io一緻性,不能保證事務一緻性,這個要靠資料庫自身的日志系統。

存儲采用快照、克隆、遠端複制技術保障資料的實體安全;多個卷之間可以設定為一緻性組來保障io一緻性;但是存儲無法保障資料庫的事務一緻性;隻能依靠資料庫的檢查點;比如先在oracle中運作”begin backup”,等到io完全刷到盤後,建立快照,然後”end backup”恢複正常io;這個快照就是一個完整的資料庫,可以直接mount的。

是以中高端陣列都提供oracle oem管理的插件,從資料庫角度發起備份和恢複,存儲隻是在底層發揮性能和容量使用率的優勢。

不管是何種存儲技術,快照、克隆、遠端複制、cdp等等,要想保證資料庫可以恢複,都必須生産io一緻的檢查點,在實際生産中,一般要用5-10分鐘,等待"begin backup"執行完畢。

是以存儲的備份粒度很難再細化,cdp可以恢複每一個io對資料庫應用是沒用的;但是好處是存儲備份不占用主機資源,也很少占用空間,性能極高。

<b>本文來自雲栖社群合作夥伴"dbaplus",原文釋出時間:2015-12-07</b>