天天看點

Hadoop + Spark + Hbase (一)平台部署Hbase表結構設計存儲與查詢接口設計背景資料倉庫設計

大資料雲平台

  • 平台部署
    • 1.Hadoop平台
    • 2.HDFS
    • 3.Hbase資料庫
    • 4.Hive
    • 5.MapReduce
  • Hbase表結構設計
    • 1.Hbase簡介
    • 2.Hbase設計
  • 存儲與查詢接口設計
    • 1.存儲接口設計
    • 2.查詢接口設計
  • 背景資料倉庫設計
    • 資料倉庫設計

涉及範圍

  1. Linux系統環境搭建
  2. Hadoop + Spark + Hbase 平台部署
  3. Hbase表結構設計
  4. 資料存儲及查詢接口的設計與實作
  5. 基于Hbase的資料倉庫設計

總體設計

通過整合資源,充分利用現有硬體基礎設施,結合雲計算大資料的最新趨勢,對本平台設計,力争滿足應用需 要。采用雲計算技術,結合建立立設模式,搭建标準統一、功能完善、系統穩定、安全可靠、縱橫互通、集中統一、運作速度顯著提升的雲計算平台。

Hadoop + Spark + Hbase (一)平台部署Hbase表結構設計存儲與查詢接口設計背景資料倉庫設計

---------------------------------------- 雲平台總體拓撲結構圖

大資料中心包含資料接收與處理的中間件、查詢接口、原始資料Hbase庫及背景資料倉庫。

資料接收與進行中間件主要完成資料的驗證與導入,并提供标準化的資料導入接口。查詢接口層提供标準的輸入輸出查詢格式。原始資料庫與背景資料倉庫為查詢與資料分析提供支援。

平台部署

1.Hadoop平台

Hadoop提供了海量資料的分布式存儲與處理的架構。基于伺服器本地的計算與存儲資源, Hadoop叢集可以擴充到上千台伺服器。同時,Hadoop在設計時充分考慮了硬體裝置的不可靠因素,在軟體層面提供資料和計算的高可靠保證。提供并行的計算和非結構化資料的處理能力,實作低成本的存儲和低延遲時間、高并發的查詢能力。

2.HDFS

HDFS分布式檔案系統:

(1)有較強的容錯性

(2)可在x86平台上運作,減少總體成本

(3)可擴充,能建構大規模的應用

3.Hbase資料庫

Hbase是非結構化NoSQl分布式資料庫,具有如下特點:

(1)基于分布式檔案系統HDFS,保證資料安全;

(2)列式存儲,節省存儲空間;

(3)提供大資料量的高速讀寫操作。

4.Hive

Hive是分布式關系型資料庫:

(1)資料可儲存在HDFS,可提供海量的資料存儲

(2)類SQL的查詢語句,提供大資料的統計和分析操作,适合海量資料的批處理

(3)通過MapReduce實作大規劃并行計算

5.MapReduce

MapReduc大規劃并行計算引擎,可将任務分布并行運作在一個叢集伺服器中。

Hadoop + Spark + Hbase (一)平台部署Hbase表結構設計存儲與查詢接口設計背景資料倉庫設計

--------------------------------------Hadoop平台關系圖

Hbase表結構設計

1.Hbase簡介

HBase是一個面向列的資料庫,在表中它由行排序。表模式定義隻能列族,也就是鍵值對。一個表有多個列族以及每一個列族可以有任意數量的列。後續列的值連續地存儲在磁盤上。表中的每個單元格值都具有時間戳。

總之,在一個HBase:表是行的集合;行是列族的集合;列族是列的集合;

列是鍵值對的集合。

Hadoop + Spark + Hbase (一)平台部署Hbase表結構設計存儲與查詢接口設計背景資料倉庫設計

------------------------------ ---------hbase表結構示例

2.Hbase設計

在本平台中,對水務資料共建六個Hbase表,分别對應到具體業務。具體表的RowKey由站點ID、裝置ID、參數ID以及時間戳拼接生成,資料資訊放在第一列族Info中。

Hadoop + Spark + Hbase (一)平台部署Hbase表結構設計存儲與查詢接口設計背景資料倉庫設計

圖為WQ表結構的示意圖,其餘表的結構與WQ采用相同結構,隻在對應的列屬性做調整。

存儲與查詢接口設計

本平台的所有存儲與查詢的接口均設計為WebService服務模式,由标準的Json格式,通過Form表單送出Post請求。

1.存儲接口設計

Hadoop + Spark + Hbase (一)平台部署Hbase表結構設計存儲與查詢接口設計背景資料倉庫設計

---------------------------存儲接口設計

2.查詢接口設計

Hadoop + Spark + Hbase (一)平台部署Hbase表結構設計存儲與查詢接口設計背景資料倉庫設計

---------------------------------查詢接口設計

背景資料倉庫設計

Hadoop + Spark + Hbase (一)平台部署Hbase表結構設計存儲與查詢接口設計背景資料倉庫設計

----------------------------資料倉庫結構圖

資料倉庫設計

Hadoop + Spark + Hbase (一)平台部署Hbase表結構設計存儲與查詢接口設計背景資料倉庫設計

本平台資料倉庫基于Hbase設計,将原始Hbase資料庫中的資料進行處理與分析,實作查詢需求。具有如下特點:

(1)效率足夠高。本資料倉庫的資料分析為日、周、月、季、年,可以滿足基本的業務需求。

(2)資料品質。資料倉庫所提供的各種資訊,已經完成了資料清洗,裝載,查詢的各種需求。

(3)具有擴充性。之是以資料倉庫系統架構設計的比較複雜,是因為考慮到了未來3-5年的擴充性,這樣的話,未來不用去重建資料倉庫系統,就能很穩定運作。

繼續閱讀