1. 程式人生 > 其它 >華為雲GaussDB(for Influx)揭密第六期:資料分級儲存

華為雲GaussDB(for Influx)揭密第六期:資料分級儲存

摘要:GaussDB(for Influx)通過冷熱資料儲存分離,在提供海量資料高效能儲存的同時可節省85%的儲存成本,高效滿足時序應用各種場景。

本文分享自華為雲社群《華為雲GaussDB(for Influx)揭密第六期:資料分級儲存》,作者:高斯Influx官方部落格 。

“只儲存這些資料一年就要花費200多萬?”

面對老闆的質疑,小王又重新講解了一遍評估方案。為了支撐生產分析和系統運維,一個裝置就需要幾十個檢測點資料,所有裝置24小時不斷採集資料,一天的資料量就會達到TB級,這些資料至少儲存2年,再加上高可用的3副本,總的資料量會達到PB級。

小王又展示了當前雲廠商儲存價格和效能對比的調研結果:

不同儲存其效能差異很大。例如NVME盤的吞吐量是SATA盤的7倍,IOPS超過了20倍,當然對應的成本也高出10倍左右。根據測試評估,低成本的儲存效能無法滿足大量資料的寫入和實時業務的監控,只得使用效能高的SSD盤,因此導致儲存的成本提高。

成本提高,老闆自然不滿意。那如何才能既滿足效能需求,又能控制成本呢?小王想,“實際上,不是所有的資料處理都需要很高的效能,如果把價值高的資料放在高效能磁碟上滿足業務需求,價值低的資料放在低成本磁碟上降低成本,這樣不就既能滿足需求,又能降低成本了麼?”

不過,想法很美好,現實很殘酷,要實現這個方案,小王面臨著更多的難題:

(1)怎麼在一套系統中既能使用高效能儲存,又能使用低成本儲存?
(2)怎麼區分高價值資料?
(3)高價值資料變成低價值資料後怎麼自動轉儲?
(4)當前業務改造量要儘量少。

1. GaussDB(for Influx)解決方案

企業的數字化轉型,資料是基礎。為了能實時掌握裝置、系統狀態,需要採集大量的資料並進行實時處理。這些資料都屬於時序資料,帶有明顯的特點,如時間戳、更新少、資料來源唯一等。除了資料本身的特點,在業務應用上還具有如下特點:

  • 隨著時間的推移,其被查詢和分析的概率越來越低。
  • 隨著時間的推移,對資料分析的實時性要求越來越低。
  • 隨著時間的推移,資料的精度要求越來越低。
  • 資料只保留一段時間,到期後會刪除。

如何結合時序資料的特點,實現小王既滿足業務效能,又控制成本的美好願望呢?華為雲GaussDB(for Influx)時序資料庫的資料分級儲存功能完美解決了困擾小王的問題。

1、華為雲GaussDB(for Influx)依託雲原生能力,實現了計算儲存分離的分散式架構,其中儲存基於華為分散式儲存DFV和物件儲存OBS,解決了在一套系統中既能使用高效能儲存,又能使用低成本儲存的問題,其具體架構如下圖:

分散式DFV儲存屬於高效能儲存,熱資料放在DFV中確保業務效能要求;OBS儲存屬於低成本儲存,冷資料儲存在OBS中,降低客戶成本。

2、提供了冷熱資料自動分離的方案,使用者在建立保留策略時,可以指定冷熱資料的劃分時間,系統根據使用者的指定,自動將資料分為熱資料和冷資料,解決了資料如何劃分的問題。

3、隨著時間的推移,熱資料轉冷,系統會自動將資料轉儲到冷儲存上。

4、上述過程中只有在建立RP時需要指定冷熱資料策略。對於業務側是不感知的,避免業務的適配和改造。

2. GaussDB(for Influx)冷熱儲存的使用

GaussDB(for Influx)儲存分級功能使用十分方便,在購買冷儲存後,設定RP策略時指定冷儲存的時間即可,系統會根據RP策略,自動將冷資料轉儲到低成本儲存上。業務在訪問冷資料時,系統會自動去冷儲存上讀取,整個過程業務是不感知的,對業務無影響。

2.1 購買冷儲存

GaussDB(for Influx)支援一鍵購買冷儲存空間,可以在購買例項時選擇是否夠買冷儲存,選擇“是”,可以根據業務需求選擇冷儲存的大小,具體如下圖:

也可以在購買例項後,獨立購買冷儲存。進入例項詳情頁面,點選建立冷儲存空間,如下圖:

跳轉到如下頁面,按照業務需求進行儲存空間大小選擇:

冷儲存空也支援線上擴容,擴容過程中不影響業務。

2.2 購買冷儲存

在購買了冷儲存空間後,就可以按照業務需求設定冷資料的規則,系統會根據規則,自動劃分冷熱資料,並將冷資料儲存在冷儲存空間上。可以通過建立RP來指定冷熱資料規則,具體示例如下:

// 在db名為mydb上建立名為myrp的RP,顯示指定WARM DURATION為6d,表示6天前的資料是冷資料。
create retention policy myrp on mydb duration 30d replication 1 warm duration 6d shard duration 3d

// 在db名為mydb上建立名為myrp的RP,沒有指定WARM DURATION,表示沒有冷資料。
create retention policy myrp on mydb duration 30d replication 1 shard duration 3d

// 建立名為mydb的db,並帶有名為myrp的RP,顯示指定WARM DURATION為3d,表示3天前的資料是冷資料。
create database mydb with duration 6d warm duration 3d name myrp

// 修改WARM DURATION為7d,表示7天前的資料是冷資料。
alter retention policy myrp on mydb warm duration 7d

規則設定完成後,系統會根據指定的規則,自動判斷哪些資料屬於冷資料,並自動將資料轉儲到冷儲存上。

2.3 購買冷儲存

冷資料規則設定好,插入資料一段時間後,系統會自動判斷資料是否轉為冷資料,如果已經成為冷資料,系統會自動將資料轉儲到冷儲存上。可以通過show shards命令來檢視資料的狀態,如下所示:

> show shards
name: hsdb
id database retention_policy shard_group start_time           end_time             expiry_time          owners tier
-- -------- ---------------- ----------- ----------           --------             -----------          ------ ----
5  hsdb     myrp             2           2019-08-12T00:00:00Z 2019-08-19T00:00:00Z 2019-08-19T00:00:00Z 4      cold
6  hsdb     myrp             2           2019-08-12T00:00:00Z 2019-08-19T00:00:00Z 2019-08-19T00:00:00Z 5      moving
7  hsdb     myrp             2           2019-08-12T00:00:00Z 2019-08-19T00:00:00Z 2019-08-19T00:00:00Z 6      warm
8  hsdb     myrp             2           2019-08-12T00:00:00Z2019-08-19T00:00:00Z 2019-08-19T00:00:00Z 7     

cold:表示資料為冷資料,已儲存在冷儲存中;

moving:表示資料為冷資料,該資料正在轉儲到冷儲存中;

warm:表示資料為熱資料。

3. 總結

在應用了GaussDB(for Influx)的冷熱分級儲存方案後,儲存100T的資料量一年,按照1個月內的資料是熱資料,其餘是冷資料,其總體的儲存成本從250萬降至37.5萬,可節省85%的儲存成本。

GaussDB(for Influx)除了冷熱分級儲存功能外,在叢集化、讀寫效能、壓縮率、高可用方面也做了深度優化,能更好地滿足時序應用的各種場景。

 

點選關注,第一時間瞭解華為雲新鮮技術~