Hbase入門知識點入門學習三

一:Hbase和Hive對比

  1. Hive簡介
            Hive是基於Hadoop的一個數據倉庫工具,可以將結構化的數據文件映射爲一張數據庫表,並提供簡單的sql查詢功能,
    可以將sql語句轉換爲MapReduce任務進行運行。
            Hive 是建立在 Hadoop 之上爲了降低 MapReduce 編程複雜度的 ETL 工具。
            Hive的本質其實就相當於將HDFS中已經存儲的文件在Mysql中做了一個雙射關係,以方便使用HQL去管理查詢。
            Hive適用於離線的數據分析和清洗,延遲較高。
            Hive存儲的數據依舊在DataNode上,編寫的HQL語句終將是轉換爲MapReduce代碼執行。
            Hive 表是純邏輯表,因爲 Hive 的本身並不能做數據存儲和計算,而是完全依賴 Hadoop
            Hive 數據倉庫工具,需要全表掃描,就用 Hive,因爲 Hive 是文件存儲,運行Hive查詢會花費很長時間,
    因爲它會默認遍歷表中所有的數據。
  2.  Hbase簡介
            HBase是Hadoop的數據庫,一個分佈式、可擴展、大數據的存儲。
            Hbase是一種面向列存儲的非關係型數據庫。 
            Hbase用於存儲結構化和非結構化的數據,適用於單表非關係型數據的存儲,不適合做關聯查詢,類似JOIN等操作.
            Hbase基於HDFS,數據持久化存儲的體現形式是Hfile,存放於DataNode中,被ResionServer以region的形式進行管理。
            Hbase延遲較低,接入在線業務使用.面對大量的企業數據,HBase可以直線單表大量數據的存儲,同時提供了高效的數據訪問速度。
            HBase通過存儲key/value來工作。
            HBase數據庫,需要索引訪問,則用 HBase,因爲 HBase 是面向列的 NoSQL 數據庫.
            HBase物理表,提供了一張超大的內存 Hash 表來存儲索引,方便查詢.
            HBase 是爲了彌補 Hadoop 對實時操作的缺陷         

二:Hbase常用的 Shell 操作 

         
        
        

三:Hbase數據的備份與恢復 

  1. 簡介
           停止 HBase 服務後,使用 distcp 命令運行 MapReduce 任務進行備份,將數據備份到另一個
    地方,可以是同一個集羣,也可以是專用的備份集羣。
  2. 下面我們操作即,把數據轉移到當前集羣的其他目錄下(也可以不在同一個集羣中): 
     a:我們將下面hdfs上的/hbase備份到另外一個目錄下
          
  3. 命令如下:
     
  4.  效果
            

四:Hbase高可用

  1. 簡介
          在 HBase 中 Hmaster 負責監控 RegionServer 的生命週期,均衡 RegionServer 的負載,如果
    Hmaster 掛掉了,那麼整個 HBase 集羣將陷入不健康的狀態,並且此時的工作狀態並不會維持太久。
    所以 HBase 支持對 Hmaster 的高可用配置。
  2. 在hadoop111機器的 /usr/local/module/hbase-1.3.1/conf 目錄下創建 backup-masters 文件    
     
     hadoop111是之前的master節點,現在是讓hadoop112成爲備用的master節點
  3.  分發到其他的兩臺機器
     
  4.  在hadoop111機器上執行啓動腳本    
      
  5. 效果
     

        

           


     

       
          

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章