表的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

HBase核心技术点的更多相关文章

  1. 腾讯云“智能+互联网TechDay”:揭秘智慧出行核心技术与创新实践

    现如今,地面交通出行与大家的生活息息相关.在当前城市道路日益复杂和拥挤的情况下,如何保证交通出行的安全和便捷相信是每个人以及众多专家.科研工作者重点关注的问题. “智慧交通”系统是解决交通发展瓶颈的有 ...

  2. 深入理解Apache Flink核心技术

    深入理解Apache Flink核心技术 2016年02月18日 17:04:03 阅读数:1936 标签: Apache-Flink数据流程序员JVM   版权声明:本文为博主原创文章,未经博主允许 ...

  3. Trafodion:Transactional SQL on HBase

    Trafodion: Transactional SQL on HBase HBase上实时分布式事务处理 介绍 HBase的SQL能力一直不足.Phoenix缺乏Join能力,eBay提出的kyli ...

  4. InfoQ一波文章:菜鸟核心技术/Intel发布CPU新架构3D堆栈法/BDL/PaddlePaddle/百度第三代Spider/Tera

    菜鸟智慧新物流核心技术全解析   孟靖 阅读数:63192018 年 12 月 14 日 16:00   2018 年天猫双 11 全球狂欢节已正式落下帷幕,最终成交额定格在 2135 亿元,物流订单 ...

  5. 【转帖】Flink 核心技术浅析(整理版)

    Flink 核心技术浅析(整理版) https://www.cnblogs.com/swordfall/p/10612404.html 分类: Flink undefined 1. Flink简介 A ...

  6. 深入理解Flink核心技术及原理

    前言 Apache Flink(下简称Flink)项目是大数据处理领域最近冉冉升起的一颗新星,其不同于其他大数据项目的诸多特性吸引了越来越多人的关注.本文将深入分析Flink的一些关键技术与特性,希望 ...

  7. 详解Kafka: 大数据开发最火的核心技术

    详解Kafka: 大数据开发最火的核心技术   架构师技术联盟 2019-06-10 09:23:51 本文共3268个字,预计阅读需要9分钟. 广告 大数据时代来临,如果你还不知道Kafka那你就真 ...

  8. 与HBase对比,Cassandra的优势特性是什么?

    在1月9日Cassandra中文社区开年活动开始之前的闲聊时间,活动的四位嘉宾就"HBase和Cassandra的对比"这一话题展开了讨论.   总的来说,HBase和Cassan ...

  9. Mapreduce的文件和hbase共同输入

    Mapreduce的文件和hbase共同输入 package duogemap;   import java.io.IOException;   import org.apache.hadoop.co ...

随机推荐

  1. 新人补钙系列教程之:体验ApplicationDomain 应用程序域

    要说应用程序域,就不得不说安全沙箱 安全沙箱在帮助文档的解释是: 客户端计算机可以从很多来源(如外部 Web 站点或本地文件系统)中获取单个 SWF 文件.当 SWF 文件及其它资源(例如共享对象.位 ...

  2. SQL Script for read information from a csv file in FTP Server

    DECLARE w_file_path VARCHAR2(4000) := 'XXIF_INPUT'; --all_directories.directory_name w_file_name VAR ...

  3. osx中Grapher的使用

    Grapher 是一个可创建方程图形的应用程序,因此您能够使结果可视化.您能够输入各种数学函数,以二维和三维图形方式查看它们. 您甚至能够让图形动起来.用图形制作影片文件. 打开osx中的Graphe ...

  4. Json序列化为对象方法

    /// <summary>/// json 序列化为对象/// </summary>/// <typeparam name="T">对象类型&l ...

  5. Ubuntu下使用Sublime text 3阅读android源代码

    一.安装Sublime text 3 Sublime Text 是一款流行的文本编辑器软件,有点类似于TextMate,跨平台,可运行在Linux,Windows和Mac OS X.也是许多程序员喜欢 ...

  6. K-近邻算法的Python实现 : 源代码分析

    网上介绍K-近邻算法的样例非常多.其Python实现版本号基本都是来自于机器学习的入门书籍<机器学习实战>,尽管K-近邻算法本身非常easy,但非常多刚開始学习的人对其Python版本号的 ...

  7. Vector的一种实现(一)

    注意几点: 分配内存不要使用new和delete,因为new的同时就把对象构造了,而我们需要的是原始内存. 所以应该使用标准库提供的allocator类来实现内存的控制.当然也可以重载operator ...

  8. JDK与adb/android环境变量配置完整教程

    在这篇文章中.主要解决一个在Java或者Android开发中第一步须要解决的问题,那就是环境变量的配置.因为这部分在网上有非常多教程.參差不齐.我这里主要是对JDK与adb/android两者的环境变 ...

  9. Nginx:管理HTTP模块的配置项

    参考资料<深入理解Nginx> 一个nginx.conf的例子 http { mytest_num ; server { server_name A; listen ; mytest_nu ...

  10. Asp.net管道模型(管线模型)之一发不可收拾

    前言 为什么我会起这样的一个标题,其实我原本只想了解asp.net的管道模型而已,但在查看资料的时候遇到不明白的地方又横向地查阅了其他相关的资料,而收获比当初预想的大了很多. 有本篇作基础,下面两篇就 ...