日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程资源 > 编程问答 >内容正文

编程问答

HBASE_API的应用

發(fā)布時(shí)間:2023/11/27 编程问答 21 豆豆
生活随笔 收集整理的這篇文章主要介紹了 HBASE_API的应用 小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

實(shí)驗(yàn)

目的

要求

目的:

  1. 掌握HBase編程;
  2. 搭建HBase編程環(huán)境;
  3. 配置Myeclipse引入對(duì)應(yīng)的jar包;

?

?

?

?

?

實(shí)

驗(yàn)

環(huán)

?

?

?

?

?

  1. Java jdk 1.8;
  2. apache-maven-3.6.0;
  3. Myeclipse C10;
  4. Hadoop集群;
  5. 已配置Hbase;
  6. 具體規(guī)劃:

主機(jī)名

IP地址

服務(wù)描述

Cluster-01

192.168.10.111

Hbase主控節(jié)點(diǎn)

Cluster-02

192.168.10.112

Hbase備用主控節(jié)點(diǎn)

Cluster-03

192.168.10.113

Hbase Region服務(wù)

Cluster-04

192.168.10.114

Hbase Region服務(wù)

Cluster-05

192.168.10.115

Hbase Region服務(wù)

?

?

練習(xí)內(nèi)容

任務(wù)一:編寫HBaseTest.java,完成與數(shù)據(jù)庫(kù)的連接、創(chuàng)建表、修改表、查看表結(jié)構(gòu)等,并進(jìn)行驗(yàn)證;

1、創(chuàng)建普通java項(xiàng)目,并導(dǎo)入需要的jar包;

2、修改Windows下的host文件;

3、連接并查看數(shù)據(jù)庫(kù)中的表;

4、創(chuàng)建表

5、進(jìn)行修改表操作

6、查看表結(jié)構(gòu);

7、編寫主類main方法;

8、結(jié)果驗(yàn)證;

?

任務(wù)二:使用Put方法進(jìn)行操作,并驗(yàn)證;

1、通過(guò)Table接口和Put類向source表插入一些數(shù)據(jù);

2、驗(yàn)證;

任務(wù)三:使用Get方法進(jìn)行操作,并驗(yàn)證;

1、按行鍵獲取;

2、按行鍵列族獲取;

3、按行鍵、列族、列修飾符獲取;

4、寫入scan方法;

5、寫入main方法;

6、驗(yàn)證;

任務(wù)四:課后作業(yè);

1、第7題,刪除source表中Jason的math課程成績(jī);

出現(xiàn)的問(wèn)題與解決方案

排錯(cuò)一

錯(cuò)誤:數(shù)據(jù)庫(kù)訪問(wèn)被拒絕連接

排錯(cuò)思路:

  1. 查看網(wǎng)絡(luò)環(huán)境是否暢通;
  2. 查看HBase各節(jié)點(diǎn)是否正常;
  3. 查看開發(fā)環(huán)境是否合適;

解決方案:重新啟動(dòng)Hadoop集群,確保每一個(gè)服務(wù)都啟動(dòng)正常,主節(jié)點(diǎn)一必須是Active狀態(tài);然后重啟Myeclipse軟件,重新運(yùn)行程序;

?

排錯(cuò)二:

錯(cuò)誤:主節(jié)點(diǎn)01,的HMaster服務(wù)經(jīng)常掉線;

排錯(cuò)思路:

  1. 檢查集群中各服務(wù)都是否正常;
  2. 檢查主備兩節(jié)點(diǎn)的狀態(tài);
  3. 檢查HBase環(huán)境的配置文件是否正常;

解決:

1、修改各節(jié)點(diǎn)的hbase-site.xml文件,將里面的 時(shí)鐘延遲值改為240000,原來(lái)默認(rèn)值為60000;

2、Hadoop集群的各節(jié)點(diǎn)啟動(dòng)順序?yàn)?#xff1a;

在數(shù)據(jù)節(jié)點(diǎn)03、04、05上啟動(dòng)Zookeeper服務(wù);

在主節(jié)點(diǎn)01上啟動(dòng)Hadoop服務(wù);

在主節(jié)點(diǎn)01與備用主節(jié)點(diǎn)02上分別啟動(dòng)HBase服務(wù);

3、在關(guān)閉集群前依次的從開啟服務(wù)順序的倒序開始關(guān)閉各服務(wù);

知識(shí)拓展

優(yōu)化HBase

1、隨機(jī)讀密集型

優(yōu)化方向:高效利用緩存和更好的索引

  • ?增加緩存使用的堆的百分比,通過(guò)參數(shù) hfile.block.cache.size 配置。
  • 減少M(fèi)emStore占用的百分比,通過(guò)hbase.regionserver.global.memstore.lowerLimit和hbase.regionserver.global.memstore.upperLimit來(lái)調(diào)節(jié)。
  • 使用更小的數(shù)據(jù)塊,使索引的粒度更細(xì)。
  • 打開布隆過(guò)濾器,以減少為查找指定行的Key Value對(duì)象而讀取的HFile的數(shù)量。
  • 設(shè)置激進(jìn)緩存,可以提升隨機(jī)讀性能。
  • 關(guān)閉沒(méi)有被用到隨機(jī)讀的列族,提升緩存命中率。

2、順序讀密集型

優(yōu)化方向:減少使用緩存。

  • 增大數(shù)據(jù)塊的大小,使每次硬盤尋道時(shí)間取出的數(shù)據(jù)更多。
  • 設(shè)置較高的掃描器緩存值,以便在執(zhí)行大規(guī)模順序讀時(shí)每次RPC請(qǐng)求掃描器可以取回更多行。 參數(shù) hbase.client.scanner.caching 定義了在掃描器上調(diào)用next方法時(shí)取回的行的數(shù)量。
  • 關(guān)閉數(shù)據(jù)塊的緩存,避免翻騰緩存的次數(shù)太多。通過(guò)Scan.setCacheBlocks(false)設(shè)置。
  • 關(guān)閉表的緩存,以便在每次掃描時(shí)不再翻騰緩存。

3、寫密集型

優(yōu)化方向:不要太頻繁刷寫,合并或者拆分。

  • 調(diào)高底層存儲(chǔ)文件(HStoreFile)的最大大小,region越大意味著在寫的時(shí)候拆分越少。通過(guò)參數(shù) hbase.hregion.max.filesize設(shè)置。
  • 增大MemStore的大小,通過(guò)參數(shù)hbase.hregion.memstore.flush.size調(diào)節(jié)。刷寫到HDFS的數(shù)據(jù)越多,生產(chǎn)的HFile越大,會(huì)在寫的時(shí)候減少生成文件的數(shù)量,從而減少合并的次數(shù)。
  • 在每臺(tái)RegionServer上增加分配給MemStore的堆比例。把upperLimit設(shè)為能夠容納每個(gè)region的MemStore乘以每個(gè)RegionServer上預(yù)期region的數(shù)量。
  • 垃圾回收優(yōu)化,在hbase-env.sh文件里設(shè)置,可以設(shè)置初始值為:-Xmx8g? -Xms8g? -Xmn128m? -XX:+UseParNewGC? -XX:+UseConcMarkSweepGC

   -XX:CMSInitiatingOccupancyFraction=70

  • 打開MemStore-Local Allocation Buffer這個(gè)特性,有助于防止堆的碎片化。 通過(guò)參數(shù)hbase.hregion.memstore.mslab.enabled設(shè)置

4、混合型

優(yōu)化方向:需要反復(fù)嘗試各種組合,然后運(yùn)行測(cè)試,得到最佳結(jié)果。

?

影響性能的因素還包括:

  • 壓縮:可以減少集群上的IO壓力
  • 好的行鍵設(shè)計(jì)
  • 在預(yù)期集群負(fù)載最小的時(shí)候手工處理大合并
  • 優(yōu)化RegionServer處理程序計(jì)數(shù)

總結(jié)

以上是生活随笔為你收集整理的HBASE_API的应用的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺(jué)得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

歡迎分享!

轉(zhuǎn)載請(qǐng)說(shuō)明來(lái)源于"生活随笔",并保留原作者的名字。

本文地址:HBASE_API的应用