paulwong

          My Links

          Blog Stats

          常用鏈接

          留言簿(67)

          隨筆分類(1393)

          隨筆檔案(1151)

          文章分類(7)

          文章檔案(10)

          相冊

          收藏夾(2)

          AI

          Develop

          E-BOOK

          Other

          養(yǎng)生

          微服務(wù)

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          60天內(nèi)閱讀排行

          HBASE讀書筆記-基礎(chǔ)功能

          1. HBASE的SHELL命令使用

          2. HBASE的JAVA CLIENT的使用

            新增和修改記錄用PUT。

            PUT的執(zhí)行流程:
            首先會在內(nèi)存中增加MEMSTORE,如果這個表有N個COLOUMN FAMILY,則會產(chǎn)生N個MEMSTORE,記錄中的值屬于不同的COLOUMN FAMILY的,會保存到不同的MEMSTORE中。MEMSTORE中的值不會馬上FLUSH到文件中,而是到MEMSTORE滿的時候再FLUSH,且FLUSH的時候不會寫入已存在的HFILE中,而是新增一個HFILE去保存。另外會寫WRITE AHEAD LOG,這是由于新增記錄時不是馬上寫入HFILE的,如果中途出現(xiàn)DOWN機時,則HBASE重啟時會根據(jù)這個LOG來恢復(fù)數(shù)據(jù)。

            刪除記錄用DELETE。

            刪除時并不會將在HFILE中的內(nèi)容刪除,而是作一標(biāo)記,然后在查詢的時候可以不取這些記錄。

            讀取單條記錄用GET。

            讀取的時候會將記錄保存到CAHE中,同樣如果這個表有N個COLOUMN FAMILY,則會產(chǎn)生N個CAHE
            ,記錄中的值屬于不同的COLOUMN FAMILY的,會保存到不同的CAHE中。這樣下次客戶端再取記錄時會綜合CAHE和MEMSTORE來返回數(shù)據(jù)。

            新增表用HADMIN。

            查詢多條記錄用SCAN和FILTER。

          3. HBASE的分布式計算

            為什么會有分布式計算
            前面的API是針對ONLINE的應(yīng)用,即要求低延時的,相當(dāng)于OLTP。而針對大量數(shù)據(jù)時這些API就不適用了。
            如要針對全表數(shù)據(jù)進行分析時用SCAN,這樣會將全表數(shù)據(jù)取回本地,如果數(shù)據(jù)量在100G時會耗幾個小時,為了節(jié)省時間,引入多線程做法,但要引入多線程時,需遵從新算法:將全表數(shù)據(jù)分成N個段,每段用一個線程處理,處理完后,交結(jié)果合成,然后進行分析。

            如果數(shù)據(jù)量在200G或以上時間就加倍了,多線程的方式不能滿足了,因此引入多進程方式,即將計算放在不同的物理機上處理,這時就要考慮每個物理機DOWN機時的處理方式等情況了,HADOOP的MAPREDUCE則是這種分布式計算的框架了,對于應(yīng)用者而言,只須處理分散和聚合的算法,其他的無須考慮。

            HBASE的MAPREDUCE
            使用TABLEMAP和TABLEREDUCE。

            HBASE的部署架構(gòu)和組成的組件
            架構(gòu)在HADOOP和ZOOPKEEPER之上。

            HBASE的查詢記錄和保存記錄的流程
            說見前一編博文。

            HBASE作為數(shù)據(jù)來源地、保存地和共享數(shù)據(jù)源的處理方式
            即相當(dāng)于數(shù)據(jù)庫中JOIN的算法:REDUCE SIDE JOIN、MAP SIDE JOIN。

          posted on 2013-02-06 09:53 paulwong 閱讀(615) 評論(0)  編輯  收藏 所屬分類: HADOOP云計算HBASE

          主站蜘蛛池模板: 辽宁省| 咸丰县| 岳池县| 云安县| 泽普县| 柘城县| 德安县| 天镇县| 大新县| 高邮市| 图木舒克市| 马鞍山市| 南投县| 南康市| 成都市| 武威市| 彩票| 合肥市| 合川市| 鹤岗市| 霍山县| 界首市| 汝阳县| 山东省| 民县| 邹城市| 长沙县| 吕梁市| 台安县| 民丰县| 兴安县| 博白县| 望奎县| 固阳县| 黔江区| 财经| 获嘉县| 海丰县| 丹东市| 海门市| 合水县|