hbase搭建

  1. hbase单机搭建,不搭建hadoop
  2. hbase单机搭建,不搭建hadoop,使用外部zk
  3. hbase docker方式,使用主机网络
  4. hbase docker方式,宿主机16020端口需映射到虚拟机16020端口

  1. hbase单机搭建,搭建hadoop集群,hdfs://…/hbase4one
  2. hbase集群搭建,搭建hadoop集群,hdfs://…/hbase
  3. hadoop docker集群(待定)

  1. java连接报错
    “org.apache.hbase.thirdparty.io.netty.channel.AbstractChannel$AnnotatedConnectException: Connection refused: no further information: ecs-ee0a-0011.novalocal/192.1610.47:16020”
    1. 云主机hosts中去除hostname.novalocal,直接配置成ip hostname模式
    2. 本地hosts也需要配置hbase服务器的ip hostname
  2. hadoop集群启动,主节点依次执行:hdfs namenode --format【格式化,以前的数据会清除,还会导致datanode起不来(查看hdfs-site.xml文件,找到name和data路径,再去修改VERSION文件,保证clusterID一致)】; start-all.sh。
  3. jps查看
    主节点:namenode、secondarynamenode、resourcemanager;HMaster、HQuorumPeer(内置ZK)、HRegionServer(非必须)
    从节点:datanode、nodemanager;HQuorumPeer、HRegionServer

常用指令示例

create 'test_data','c'

create 'test_data', {NAME=>'c', COMPRESSION => 'GZ', TTL => 864000}, {DURABILITY => 'ASYNC_WAL'}, SPLITS=>['0','1', '2', '3', '4', '5', '6', '7', '8', '9']

get 'test_data','test001_Ua20200513','c'

get 'test_data','test001_Ua20200513','c:161513'

get 'test_data','190370221101025_Xbic20211001',{TIMERANGE=>[1633067947515,1633077947515]}

scan 'test_data', {COLUMNS=>'c:161513'}

scan 'test_data', {STARTROW=>'suM35_Sc20200508', STOPROW=>'test001_Uca20200513', COLUMNS=>'c:161513'}

scan 'test_data', {STARTROW=>'suM35_Sc20200508', STOPROW=>'test001_Uca20200513', FILTER=>"ColumnPrefixFilter('1615')"}

scan 'test_data', {FILTER=>"ColumnPrefixFilter('1615') AND PrefixFilter('test001_Ua')"}

scan 'test_data', {FILTER=>"ColumnPrefixFilter('1615') AND RowFilter(=, 'regexstring:.*20200511')"}

scan 'test_data', {FILTER=>"RowFilter(=, 'regexstring:.*20200511')"}

scan 'test_data', {FILTER=>"RowFilter(=, 'regexstring:.*20200511')",LIMIT=>10}

scan 'test_data', {FILTER=>"PrefixFilter('WNSJD158_Ua')"}

scan 'hbase:meta',LIMIT=>10

put 'test_data', 'test001_Ua20200513', 'c:202010', '85'

### HBase 的使用指南与教程 #### 1. 学习资源推荐 对于希望深入学习 HBase 的用户来说,有几本经典书籍可以作为参考资料。例如,《HBase: The Definitive Guide》是一本覆盖范围广泛的参考书,适合初学者和中级学习者[^1]。如果更倾向于实践案例,则可以选择《HBase in Action》,该书专注于实际应用场景,更适合有一定开发经验的技术人员[^1]。 #### 2. 命令行工具 HBCK2 使用说明 HBCK2 是 HBase 提供的一个修复工具,主要用于解决元数据一致性问题和其他潜在的数据损坏情况。要运行 HBCK2,可以通过 `$HBASE_HOME/bin/hbase` 脚本来启动,并指定 `-j` 参数来加载对应的 JAR 文件。具体命令如下: ```bash ${HBASE_HOME}/bin/hbase --config /etc/hbase-conf hbck -j ~/hbase-operator-tools/hbase-hbck2/target/hbase-hbck2-xxx.jar ``` 默认情况下,如果不加特殊参数,执行 `hbck` 将会调用旧版本的修复工具(即 HBCK1)。因此,在需要高级功能时务必显式指明路径[^2]。 #### 3. 集成 Spark 和 HBase (HBase-RDD) 为了简化大数据处理流程中的复杂操作,社区还提供了专门针对 Apache Spark 设计的支持库——HBase-RDD。此项目允许开发者创建自定义逻辑轻松读取、写入甚至删除存储在 HBase 中的内容。更多详情可访问官方仓库链接获取最新文档和支持信息[^3]: [https://gitcode.com/gh_mirrors/hb/hbase-rdd](https://gitcode.com/gh_mirrors/hb/hbase-rdd) #### 4. Zookeeper 在 HBase 架构中的角色 值得注意的是,Zookeeper 对于整个 HBase 生态系统至关重要。它不仅负责协调多个节点之间的通信,而且承担着诸如选举 Master 实例、维护 RegionServer 注册表等功能。通过采用 Zap 协议保障集群内部状态同步一致,从而减少应用程序层面额外的工作量[^4]。 以下是基于 Java 编程语言连接到远程 HBase 表格实例的一个简单例子: ```java Configuration config = HBaseConfiguration.create(); config.set("hbase.zookeeper.quorum", "localhost"); try(Connection connection = ConnectionFactory.createConnection(config)){ Table table = connection.getTable(TableName.valueOf("myTable")); Get get = new Get(Bytes.toBytes("rowKeyExample")); Result result = table.get(get); byte[] value = result.getValue(Bytes.toBytes("columnFamily"), Bytes.toBytes("qualifier")); } catch(IOException e){ System.err.println(e.getMessage()); } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值