50億海量資料如何高效儲存和分析?

IT科技蘇辭發表於2022-12-01

50 億海量資料如何高效儲存和分析?

華為雲資料庫GaussDB (for Cassandra) 3個秘訣搞定

 

當下,資訊社會正在從網際網路時代走向物聯網時代,資訊互動變得更加龐雜、高效和智慧。對於網際網路公司和IOT企業來說,既是機遇,也是挑戰。因為,企業不可避免的要面對資料量劇增帶來的一系列問題:如何高效儲存和擴容,如何在對原有業務改動最小的情況下做到智慧化和實時分析。

針對挑戰,華為雲GaussDB (for Cassandra) 為客戶提供了強擴充套件、高儲存、高效匯入/匯出和實時分析等一系列能力,併成功服務了眾多網際網路公司和IOT企業,獲得了客戶的高度認可和支援。本文將以其中一個客戶業務的痛點問題舉例,聊聊高效儲存和實時分析的3個秘訣。

 

海量儲存,PB級無感擴充套件

該使用者線上下本地化部署使用資料庫或者使用其他的儲存為雲盤的資料庫時,常常需要在容量達到閾值時,提前規劃和申購儲存資源,可能還需要連帶擴容不必要的計算資源。而使用GaussDB (for Cassandra)之後,便再無此煩惱。GaussDB (for Cassandra)採用存算分離架構,可單獨擴充套件儲存,高效擴容,業務無感,最高可擴充套件到PB級。

此外,客戶為了做大資料分析,將資料庫中的資料再寫入一份到HDFS中,供MapReduce和Spark分析,同時需要維護兩套資源,維護和資源成本成為了痛點。而客戶使用GaussDB (for Cassandra)之後,可以僅採用GaussDB (for Cassandra)即可完成資料庫儲存和對接大資料分析的功能,同時GaussDB (for Cassandra)提供了更為易用的CQL介面,讓使用者更加專注功能開發,而不是資源管理。

資料變更捕獲和實時分析

客戶的一個使用場景需要將爬蟲或使用者輸入的資料,進行線上分析和實時推薦業務,該業務中全量資料達到了50億條,但增量資料不足5億,分析物件主要是每日新增資料。在這個場景中,GaussDB (for Cassandra)為客戶提供了streaming服務+實時分析解決方案,在損失小部分讀寫效能的前提下,客戶端無需改造即可做到資料讀寫和實時分析並行,解決方案如下圖,該解決方案主要有以下幾個階段:

1. 客戶業務用過開源驅動寫入資料到GaussDB (for Cassandra)

2.GaussDB (for Cassandra) 對外提供streaming介面,該介面可獲取資料變更捕獲

3. 客戶構建的流服務元件讀取streaming介面資料寫入到指定的Kafka佇列

4.Kafka 佇列將streaming資料寫入到Spark或者Flink中

5. 客戶在Spark中可對增量資料做分析,也可合併之後做全量分析

全量資料匯出分析

客戶的另一個業務需要週期性對全量資料進行分析和處理,但不想影響線上業務,希望在閒時處理。GaussDB (for Cassandra)提供了全量資料匯出和分析解決方案,可在業務低峰期觸發任務進行資料匯出和冷資料分析,資料匯出速率是開源的10+倍,同時做到對業務讀寫基本無影響。如下為網際網路客戶每週定期匯出資料分析使用者畫像的解決方案,該方案有以下幾個階段:

1. 客戶根據需求配置ECS規格,並掛載obsfs並行檔案系統

2. 客戶在DLF上配置匯出作業,包括ECS資訊,匯出引數和定時任務

3.CDM 下發作業任務

4.ECS 上的匯出任務將GaussDB (for Cassandra)中的指定表指定條件的資料匯出到obsfs

5.Spark 從obsfs中讀取全量資料進行資料分析

透過這3個秘訣,華為雲GaussDB (for Cassandra)完美解決了難擴充套件、高成本、變更不及時等問題,實現了海量資料的高效儲存和實時分析,為網際網路公司和IOT企業的數字化發展提供了更多可能。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/70022886/viewspace-2926280/,如需轉載,請註明出處,否則將追究法律責任。

相關文章