zoukankan      html  css  js  c++  java
  • HBase核心技术点

    表的rowkey设计核心思想:

    1. 依据rowkey查询最快
    2. 对rowkey进行范围查询range
    3. 前缀匹配

    预分区创建的三种方式

    create 'ns1:t1', 'f1', SPLITS => ['10', '20', '30', '40']
    
    create 't1', 'f1', SPLITS => ['10', '20', '30', '40']
    
    create 't1', 'f1', SPLITS_FILE => '/home/hadoop/data/splits.txt', OWNER => 'johndoe'
    # 在 splits.txt 文件中指定rowkey:
    10,
    20,
    30,
    40,
    50
    
    create 't1', {NAME => 'f1', VERSIONS => 5}, METADATA => { 'mykey' => 'myvalue' }
    
    # 指定java预分区类名称
    create 't1', 'f1', {NUMREGIONS => 15, SPLITALGO => 'HexStringSplit'}
    

    tail -f 在命令列控制窗口中使用 tail -f,它将会以一定的时间实时追踪.

    基于SQL语法查询HBase

    Phoenix实现用SQL查询HBase

    http://www.cnblogs.com/hbase-community/category/1181796.html
    

    hbase二级索引

    1. 使用solr构建hbase二级索引:

      https://www.cnblogs.com/kekukekro/p/6340944.html

    2. 使用phoenix构建HBase二级索引

      https://www.2cto.com/net/201702/601121.html

    HBase 表数据压缩

    1. snappy

    HBase数据读写流程

    https://blog.csdn.net/u011490320/article/details/50814967
    

    HBse中数据管理

    hbase中数据删除不是真正的删除,只是做了一个删除标记;在compaction过程中才会真正的删除。 满足删除条件的数据:

    1. 做了删除标记的

    2. 超过版本号限制的

    3. 数据生存时间到期的

    两种compaction:

    1. 合并(minor)

    2. 压缩合并(major)

    Hive和HBase集成

    • 数据存储在HBase中
    • hive 表的描述信息存储在hive中
    • 对应元素

      1. hive-table hbase-table
      2. hive-column hbase-rowkey,hbase-cf-column
      3. storehandler
    • 集成方式,如果hive/lib目录中没有相关jar,需要把相关jar软连接到该目录

    https://blog.csdn.net/victory0508/article/details/69258686

    管理表

    创建hive表的时候,指定数据存储在hbase表中。

    CREATE TABLE hbase_table_1(key int, value string) 
    STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
    WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,cf1:val")
    TBLPROPERTIES ("hbase.table.name" = "xyz");
    

    外部表

    现在已经存在一个HBase表,需要对表中数据进行分析。

    CREATE EXTERNAL TABLE hbase_user(id int, name string,age int) 
    STORED BY 'org.apache.hadoop.hive.hbase.HBaseStorageHandler'
    WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,info:name,info:age")
    TBLPROPERTIES ("hbase.table.name" = "user");
    

    本质

    Hive就是HBase客户端。

    sqoop 把关系型数据库数据导入到hive

    HBase与Hue集成

    如果跨语言需要启动thrift server

  • 相关阅读:
    css 模块化
    zookeeper集群-solrcloud集群
    Ansible
    Haproxy
    Saltstack数据系统
    Saltstack入门
    DNS(bind)添加A、CNAME、MX、PTR记录、智能DNS(ACL)
    主从同步DNS(BIND)
    单台DNS服务器搭建(BIND)
    python2.7多线程的批量操作远程服务器
  • 原文地址:https://www.cnblogs.com/tianboblog/p/8908565.html
Copyright © 2011-2022 走看看