小編給大家分享一下HBase常用參數(shù)有哪些,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!
創(chuàng)新互聯(lián)公司主要從事成都網(wǎng)站設(shè)計、成都做網(wǎng)站、網(wǎng)頁設(shè)計、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)樺甸,10多年網(wǎng)站建設(shè)經(jīng)驗,價格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18980820575
hbase.rootdir
默認(rèn): file:///tmp/hbase-${user.name}/hbase
region server的數(shù)據(jù)根目錄,用來持久化HBase。例如,要表示hdfs中的’/hbase’目錄,namenode 運行在debugo01的8020端口,則需要設(shè)置為hdfs:// debugo01:8020/hbase。這個是必須要設(shè)置的項目,默認(rèn)值本地文件系統(tǒng)的/tmp只能在單機(jī)模式使用。hbase.master.port
默認(rèn): 60000
HBase的Master服務(wù)端口。hbase.cluster.distributed
默認(rèn): false
HBase的運行模式。false是單機(jī)模式,true是分布式模式。若為false,HBase和Zookeeper會運行在同一個JVM里面。hbase.tmp.dir
本地的臨時目錄。需要注意的是默認(rèn)的/tmp會在重啟時清空。
默認(rèn): /tmp/hbase-${user.name}hbase.master.info.port
默認(rèn): 60010
HBase Master web UI的端口. 設(shè)置為-1 則不運行web UI。hbase.master.info.bindAddress
默認(rèn): 0.0.0.0
HBase Master web UI綁定的IPhbase.master.DNS.interface
當(dāng)使用DNS的時候,Master用來上報的IP地址的網(wǎng)絡(luò)接口名字。
默認(rèn): defaulthbase.master.dns.nameserver
當(dāng)使用DNS的時候,RegionServer的DNS域名或者IP 地址,Master用它來確定用來進(jìn)行通訊的域名.
默認(rèn): defaulthbase.snapshot.enabled
是否啟用snapshot功能。
默認(rèn)值:truehbase.balancer.period
Master執(zhí)行region balancer的間隔。
默認(rèn): 300000hbase.master.logcleaner.ttl
Hlog存在于.oldlogdir 文件夾的最長時間, 超過了就會被 Master 的線程清理掉.
默認(rèn): 600000hbase.master.logcleaner.plugins
LogsCleaner服務(wù)會執(zhí)行的一組LogCleanerDelegat。值用逗號間隔的文本表示。這些WAL/HLog cleaners會按順序調(diào)用??梢园严日{(diào)用的放在前面。你可以實現(xiàn)自己的LogCleanerDelegat,加到Classpath下,然后在這里寫下類的全稱。一般都是加在默認(rèn)值的前面。
默認(rèn): org.apache.hadoop.hbase.master.TimeToLiveLogCleanerhbase.rest.port
HBase REST server的端口
默認(rèn): 8080hbase.rest.readonly
定義REST server的運行模式??梢栽O(shè)置成如下的值: false: 所有的HTTP請求都是被允許的 – GET/PUT/POST/DELETE. true:只有GET請求是被允許的
默認(rèn): falsehbase.coprocessor.master.classes
Master所使用的協(xié)處理器類名。多個類的情況下使用逗號分割。比如使用org.apache.hadoop.hbase.security.access.AccessController提供了安全管控能力。
默認(rèn): null。hbase.rpc.engine
HBase使用的rpc引擎類。一般使用帶安全驗證的org.apache.hadoop.hbase.ipc. SecureRpcEngine類
默認(rèn): null。
hbase.regionserver.port
默認(rèn): 60020
HBase RegionServer綁定的端口hbase.regionserver.info.port
默認(rèn): 60030
HBase RegionServer web 界面綁定的端口。設(shè)置為-1 則不運行web UIhbase.regionserver.info.port.auto
默認(rèn): false
RegionServer是否在當(dāng)hbase.regionsever.info.port已經(jīng)被占用的時候,可以搜一個空閑的端口綁定。默認(rèn)關(guān)閉。hbase.regionserver.info.bindAddress
默認(rèn): 0.0.0.0
HBase RegionServer web 界面的IP地址hbase.regionserver.class
默認(rèn): org.apache.hadoop.hbase.ipc.HRegionInterface
RegionServer接口類??蛻舳嗽谶B接region server的時候會使用到。hbase.regionserver.lease.period
默認(rèn): 60000
客戶端租用HRegion server 期限,即超時閥值。單位是毫秒。默認(rèn)情況下,客戶端必須在這個時間內(nèi)發(fā)一條信息,否則視為死掉。hbase.regionserver.handler.count
默認(rèn): 10
RegionServers受理的RPC Server實例數(shù)量。對于Master來說,這個屬性是Master受理的handler數(shù)量hbase.regionserver.msginterval
默認(rèn): 3000
RegionServer 發(fā)消息給 Master 時間間隔,單位是毫秒hbase.regionserver.optionallogflushinterval
默認(rèn): 1000
將Hlog同步到HDFS的間隔。如果Hlog沒有積累到一定的數(shù)量,到了時間,也會觸發(fā)同步。默認(rèn)是1秒,單位毫秒。hbase.regionserver.regionSplitLimit
默認(rèn): 2147483647
region的數(shù)量到了這個值后就不會在分裂了。這不是一個region數(shù)量的硬性限制。但是起到了一定指導(dǎo)性的作用。默認(rèn)是MAX_INT(不限制)。hbase.regionserver.logroll.period
默認(rèn): 3600000
提交commit log的間隔,不管有沒有寫足夠的值。hbase.regionserver.hlog.enabled
默認(rèn):true
是否啟用WALhbase.regionserver.wal.enablecompression
默認(rèn):false
是否對日志壓縮hbase.regionserver.hlog.reader.impl
默認(rèn): org.apache.hadoop.hbase.regionserver.wal.SequenceFileLogReader
HLog file reader 的實現(xiàn).hbase.regionserver.hlog.writer.impl
默認(rèn): org.apache.hadoop.hbase.regionserver.wal.SequenceFileLogWriter
HLog file writer 的實現(xiàn).hbase.regionserver.thread.splitcompactcheckfrequency
默認(rèn): 20000
region server 多久執(zhí)行一次split/compaction 檢查.hbase.regionserver.nbreservationblocks
默認(rèn): 4
儲備的內(nèi)存block的數(shù)量(譯者注:就像石油儲備一樣)。當(dāng)發(fā)生out of memory 異常的時候,我們可以用這些內(nèi)存在RegionServer停止之前做清理操作。hbase.regionserver.dns.interface
默認(rèn): default
當(dāng)使用DNS的時候,RegionServer用來上報的IP地址的網(wǎng)絡(luò)接口名字。hbase.regionserver.dns.nameserver
默認(rèn): default
當(dāng)使用DNS的時候,RegionServer使用的DNS的域名或者IP 地址,RegionServer用它來確定和master用來進(jìn)行通訊的域名.hbase.regions.slop
默認(rèn): 0
當(dāng)任一regionserver有average + (average * slop)個region是會執(zhí)行Rebalancehbase.regionserver.global.memstore.upperLimit
默認(rèn): 0.4
單個region server的全部memtores的最大值。超過這個值,一個新的update操作會被掛起,強(qiáng)制執(zhí)行flush操作。hbase.regionserver.global.memstore.lowerLimit
默認(rèn): 0.35
當(dāng)強(qiáng)制執(zhí)行flush操作的時候,當(dāng)?shù)陀谶@個值的時候,flush會停止。默認(rèn)是堆大小的 35% . 如果這個值和 hbase.regionserver.global.memstore.upperLimit 相同就意味著當(dāng)update操作因為內(nèi)存限制被掛起時,會盡量少的執(zhí)行flush(譯者注:一旦執(zhí)行flush,值就會比下限要低,不再執(zhí)行)hbase.coprocessor.regionserver.classes
Master所使用的協(xié)處理器類名。多個類的情況下使用逗號分割。比如使用org.apache.hadoop.hbase.security.access.AccessController提供了安全管控能力。
默認(rèn): null。
hbase.client.write.buffer
默認(rèn): 2097152
HTable客戶端的寫緩沖的默認(rèn)大小。因為緩沖在客戶端和服務(wù)端需要申請空間,需要消耗客戶端和服務(wù)端兩個地方的內(nèi)存。較大的buffer,可以減少RPC的次數(shù),從而提高性能。估算服務(wù)器端被占用的內(nèi)存: hbase.client.write.buffer * hbase.regionserver.handler.counthbase.client.pause
默認(rèn): 1000
客戶端操作失敗后的重試暫停時間。hbase.client.retries.number
默認(rèn): 10
客戶端失敗后的最大重試次數(shù)。例如region查詢,get,Update等操作。hbase.client.scanner.caching
默認(rèn): 1
當(dāng)調(diào)用Scanner的next方法,而值又不在緩存里的時候,從服務(wù)端一次獲取的行數(shù)。越大的值意味著Scanner會快一些,但是會占用更多的內(nèi)存。當(dāng)緩沖被占滿的時候,next方法調(diào)用會越來越慢。慢到一定程度,可能會導(dǎo)致超時。例如超過了hbase.regionserver.lease.period。hbase.client.keyvalue.maxsize
默認(rèn): 10485760
一個KeyValue實例的最大size.這個是用來設(shè)置存儲文件中的單個entry的大小上界。因為一個KeyValue是不能分割的,所以可以避免因為數(shù)據(jù)過大導(dǎo)致region不可分割。明智的做法是把它設(shè)為可以被最大region size整除的數(shù)。如果設(shè)置為0或者更小,就會禁用這個檢查。默認(rèn)10MB。
hbase.zookeeper.dns.interface
當(dāng)使用DNS的時候,Zookeeper用來上報的IP地址的網(wǎng)絡(luò)接口名字。
默認(rèn): defaulthbase.zookeeper.dns.nameserver
默認(rèn): default
當(dāng)使用DNS的時候,Zookeepr使用的DNS的域名或者IP 地址,Zookeeper用它來確定和master用來進(jìn)行通訊的域名.zookeeper.session.timeout
默認(rèn): 180000
ZooKeeper 會話超時.HBase把這個值傳遞改zk集群,向他推薦一個會話的最大超時時間。單位是毫秒。zookeeper.znode.parent
默認(rèn): /hbase
ZooKeeper中的HBase的根ZNode。所有的HBase的ZooKeeper會用這個目錄配置相對路徑。默認(rèn)情況下,所有的HBase的ZooKeeper文件路徑是用相對路徑,所以他們會都去這個目錄下面。zookeeper.znode.rootserver
默認(rèn): root-region-server
ZNode 保存的根region的路徑. 這個值是由Master來寫,client和regionserver 來讀的。如果設(shè)為一個相對地址,父目錄就是 ${zookeeper.znode.parent}.默認(rèn)情形下,意味著根region的路徑存儲在/hbase/root-region-server.hbase.zookeeper.quorum
默認(rèn): localhost
Zookeeper集群的地址列表,用逗號分割。例如:”host1.mydomain.com,host2.mydomain.com,host3.mydomain.com”.默認(rèn)是localhost,如果在hbase-env.sh設(shè)置了HBASE_MANAGES_ZK,這些ZooKeeper節(jié)點就會和HBase一起啟動。hbase.zookeeper.peerport
默認(rèn): 2888
ZooKeeper節(jié)點使用的端口。hbase.zookeeper.leaderport
默認(rèn): 3888
ZooKeeper用來選擇Leader的端口。hbase.zookeeper.property.initLimit
默認(rèn): 10
ZooKeeper的zoo.conf中的配置。 初始化synchronization階段的ticks數(shù)量限制hbase.zookeeper.property.syncLimit
默認(rèn): 5
ZooKeeper的zoo.conf中的配置。 發(fā)送一個請求到獲得承認(rèn)之間的ticks的數(shù)量限制
hbase.zookeeper.property.dataDir
默認(rèn): ${hbase.tmp.dir}/zookeeper
ZooKeeper的zoo.conf中的配置。 快照的存儲位置
hbase.zookeeper.property.clientPort
默認(rèn): 2181
ZooKeeper的zoo.conf中的配置。 客戶端連接的端口
hbase.zookeeper.property.maxClientCnxns
默認(rèn): 2000
ZooKeeper的zoo.conf中的配置。 ZooKeeper集群中的單個節(jié)點接受的單個Client(以IP區(qū)分)的請求的并發(fā)數(shù)。這個值可以調(diào)高一點,防止在單機(jī)和偽分布式模式中出問題。
hbase.table.max.rowsize
默認(rèn): true
設(shè)置為true時,當(dāng)模式在反生變更操作時則鎖定zookeeper中的表,以避免并行操作時破壞表的一致性。hbase.table.max.rowsize
默認(rèn):1073741824
當(dāng)不指定Get和Scan操作中的scan選項時,獲取的最大行的字節(jié)大小。超過則拋出RowTooBigException異常。hbase.hregion.memstore.flush.size
默認(rèn): 67108864
當(dāng)memstore的大小超過這個值,會flush到磁盤。這個值被一個線程每隔hbase.server.thread.wakefrequency檢查一下。hbase.server.thread.wakefrequency
默認(rèn): 10000
Service線程(log roller等)的sleep時間間隔,單位毫秒。hbase.hregion.preclose.flush.size
默認(rèn): 5242880
當(dāng)一個region中的memstore的大小大于這個值的時候,我們又觸發(fā)了close.會先運行“pre-flush”操作,清理這個需要關(guān)閉的memstore,然后將這個region下線。當(dāng)一個region下線了,我們無法再進(jìn)行任何寫操作。如果一個memstore很大的時候,flush操作會消耗很多時間?!眕re-flush”操作意味著在region下線之前,會先把memstore清空。這樣在最終執(zhí)行close操作的時候,flush操作會很快。hbase.hregion.memstore.block.multiplier
默認(rèn): 2
如果memstore有hbase.hregion.memstore.block.multiplier倍數(shù)的hbase.hregion.flush.size的大小,就會阻塞update操作。這是為了預(yù)防在update高峰期會導(dǎo)致的失控。如果不設(shè)上界,flush的時候會花很長的時間來合并或者分割,最壞的情況就是引發(fā)out of memory異常。hbase.hregion.memstore.mslab.enabled
默認(rèn): false
體驗特性:啟用memStore分配本地緩沖區(qū)。這個特性是為了防止在大量寫負(fù)載的時候堆的碎片過多。這可以減少GC操作的頻率。hbase.hregion.max.filesize
默認(rèn): 268435456
最大HStoreFile大小。若某個Column families的HStoreFile增長達(dá)到這個值,這個Hegion會被切割成兩個。 Default: 256M.hbase.hstore.compactionThreshold
默認(rèn): 3
當(dāng)一個HStore含有多于這個值的HStoreFiles的時候,會執(zhí)行一個合并操作,把這HStoreFiles寫成一個。這個值越大,需要合并的時間就越長。hbase.hstore.blockingStoreFiles
默認(rèn): 7
當(dāng)一個HStore含有多于這個值的HStoreFiles的時候,會執(zhí)行一個合并操作,update會阻塞直到合并完成,直到超過了hbase.hstore.blockingWaitTime的值hbase.hstore.blockingWaitTime
默認(rèn): 90000
hbase.hstore.blockingStoreFiles所限制的StoreFile數(shù)量會導(dǎo)致update阻塞,這個時間是來限制阻塞時間的。當(dāng)超過了這個時間,HRegion會停止阻塞update操作,不過合并還有沒有完成。默認(rèn)為90s.hbase.hstore.compaction.max
默認(rèn): 10
每個“小”合并的HStoreFiles最大數(shù)量。hbase.hregion.majorcompaction
默認(rèn): 86400000
一個Region中的所有HStoreFile的major compactions的時間間隔。默認(rèn)是1天。 設(shè)置為0就是禁用這個功能。hbase.mapreduce.hfileoutputformat.blocksize
默認(rèn): 65536
MapReduce中HFileOutputFormat可以寫 storefiles/hfiles. 這個值是hfile的blocksize的最小值。通常在HBase寫Hfile的時候,bloocksize是由table schema(HColumnDescriptor)決定的,但是在mapreduce寫的時候,我們無法獲取schema中blocksize。這個值越小,你的索引就越大,你隨機(jī)訪問需要獲取的數(shù)據(jù)就越小。如果你的cell都很小,而且你需要更快的隨機(jī)訪問,可以把這個值調(diào)低。hfile.block.cache.size
默認(rèn): 0.2
分配給HFile/StoreFile的block cache占最大堆(-Xmx setting)的比例。默認(rèn)是20%,設(shè)置為0就是不分配。hbase.hash.type
默認(rèn): murmur
哈希函數(shù)使用的哈希算法??梢允褂肕urmurHash和 jenkins (JenkinsHash). 提供給 bloom filters使用.
hbase.security.authentication
HBase的權(quán)限管控方式??蛇x輸入為simple和kerberos。
默認(rèn)值:simplehbase.security.authentication
是否啟用HBase安全驗證。
默認(rèn):falsehbase.superuser
HBase的超級管理員用戶。
默認(rèn)值:hbasehbase.master.keytab.file
默認(rèn):
開啟基于kerberos的Security。HMaster Server驗證登錄使用的keytab 文件路徑。hbase.master.kerberos.principal
默認(rèn):
開啟基于kerberos的Security。HMaster使用principal name。hbase.regionserver.keytab.file
默認(rèn):
開啟基于kerberos的Security。HRegionServer驗證登錄使用的keytab 文件路徑。hbase.regionserver.kerberos.principal
默認(rèn):
開啟基于kerberos的Security。RegionServer使用的principal name。
以上是“HBase常用參數(shù)有哪些”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對大家有所幫助,如果還想學(xué)習(xí)更多知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!