我有一个由3个节点组成的小集群,所有3个节点上都部署了hbase。似乎在将数据写入hbase集群时,所有内容最初似乎都将进入同一节点。
以下是我的相关hbase-site.xml
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.rootdir</name>
<value>hdfs://server1:8020/hbase</value>
</property>
<property>
<name>hbase.zookeeper.property.clientPort</name>
<value>2181</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>server1,server2,server3</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/opt/hadoop/zookeeper</value>
</property>
区域服务器日志始终显示文件已添加到同一区域
2016-10-28 15:31:07,990 INFO [MemStoreFlusher.0] regionserver.HStore:
Added hdfs://server1
2016-10-28 15:31:19,195 INFO [MemStoreFlusher.0] regionserver.HStore: Added
hdfs://server1
我希望有人能对此提供一些见解。
1条答案
按热度按时间a8jjtwal1#
您的hbase.rootdir属性表示所有数据都存储在hdfs的特定节点中(在/hbase下)。
您可能希望通过为集群定义nameservice为hdfs配置ha,并将hbase.rootdir设置为
请参阅此处了解更多详细信息。
hbase中均衡的数据分布还取决于行键的设计。错误的行键设计可能会产生热点。