本文节选自《Netkiller Database 手札》 第 62 章 Apache Hbase 目录 62.1. 安装 Apache Hbase 62.1.1. 单机安装 62.2....安装 Apache Hbase 注意:Apache Hbase 不能使用 OpenJDK 启动,需要去 Oracle 网站下载 Server JRE 62.1.1....{,.original} mv hbase-1.2.6 /srv/apache-hbase-1.2.6 ln -s /srv/apache-hbase-1.2.6 /srv/apache-hbase...cp /srv/apache-hbase/conf/hbase-env.sh{,.original} cat > /srv/apache-hbase/conf/hbase-env.sh <<EOF export...} EOF 启动 Apache Hbase /srv/apache-hbase/bin/start-hbase.sh
首先HBase作为大数据发展初期伴随Google三大论文问世的一个组件,在今天依旧被广泛的应用,今天我们来仔细的分析一下HBase的内部原理,了解一下HBase的具体内幕,以便在工作中更好使用它。...---- HBase读写操作 前面提到HBase的相关算法,现在我们讲一下HBase的整个操作的读写流程。首先,摆出HBase的架构图,如下所示: ?...讲完了HBase的写入操作,再来看看HBase的读取流程。...---- HBase文件格式 前面讲了HBase的操作流程,现在我们看下HBase的存储机制,首先HBase使用的HDFS存储,也就是在文件系统方面没有自身的文件管理系统,所以HBase仅仅需要设计的是文件格式...Apache下有非常多的组件可以实现差不多的功能,但是每一个组件又有着自己独特的特点,本章我们介绍了HBase,后续会逐步分解介绍像Kylin,HDFS,Yarn,以及Atlas等组件。
Hbase报错: ERROR: org.apache.hadoop.hbase.PleaseHoldException: Master is initializing 解决方案: 主控形状正在初始化,检查...zookeeper的状态,然后重新连接hbase shell 进入zookeeper的bin目录执行:..../zkServer.sh status查看状态 然后重新连接hbase shell 如下图启动成功 :
ERROR: org.apache.hadoop.hbase.MasterNotRunningException: Retried 7 times 这是为什么呢,Master为什么没有启动起来呢?...查看logs目录下的Master日志,发现有以下信息: 2012-02-01 14:41:52,867 FATAL org.apache.hadoop.hbase.master.HMaster: Unhandled...(FileSystem.java:196) at org.apache.hadoop.fs.Path.getFileSystem(Path.java:175) at org.apache.hadoop.hbase.util.FSUtils.getRootDir...(FSUtils.java:363) at org.apache.hadoop.hbase.master.MasterFileSystem....org.apache.hadoop.hbase.master.HMaster: Aborting 2012-02-01 14:41:52,870 DEBUG org.apache.hadoop.hbase.master.HMaster
HBase HBase Apache](https://www.apache.org/) HBase™ is the Hadoop database, a distributed, scalable,...二、HBase API使用(Java) 1、添加依赖 xml org.apache.hbase org.apache.hbase hbase-client</artifactId...; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.hbase.*; import org.apache.hadoop.hbase.client....*; import org.apache.hadoop.hbase.util.Bytes; import java.io.IOException; /** * @author MiChong *
Hbase报错: ERROR: org.apache.hadoop.hbase.ipc.ServerNotRunningYetException: Server is not running yet
今天在使用JavaAPI操作HBase,当删除数据表时,程序运行报了这个异常。...org.apache.hadoop.hbase.TableNotDisabledException ?
Apache HBase HBase 承担主键查询。它从 MySQL 和 Hive 读取客户状态,包括客户信用、承保期限和保险金额。...另外,作为 NoSQL 数据库,HBase 不支持 SQL 语句,对SQL语句的支持可以通过开源Phoenix组件或“HBase SDK 3.0.0发布,让HBase的使用变得更简捷”:https://...用户最终决定选择 Apache Doris。 用 Apache Doris 替换四个组件 Apache Doris 能够进行实时和离线数据分析,同时支持高吞吐量的交互式分析和高并发的点查询。...这就是为什么它可以取代 ClickHouse、MySQL、Presto 和 Apache HBase,作为整个数据系统的统一查询网关。 改进后的数据管道是一个更加干净的 Lambda 架构。...深入了解 Apache Doris Apache Doris 可以取代 ClickHouse、MySQL、Presto 和 HBase,因为它在数据处理管道上拥有全面的功能集合。
安装 Apache Hbase 1.1.1 ---- 整体步骤: 下载hbase 1.1.1版本 上传到一台服务器,解压缩 修改hbase-env.sh 修改hbase-site.xml 修改regionservers...在hbase conf目录中创建core-site.xml和hdfs-site.xml软连接 配置HBase环境变量 分发安装包到其他节点 分发/etc/profile文件到其他节点 重新加载环境变量...-xvzf hbase-1.1.1-bin.tar.gz -C .....export HBASE_MANAGES_ZK=false 修改hbase-site.xml,添加以下配置。...环境变量 (hbase路径改成自己的) # Apache HBase 1.1.1 export HBASE_HOME=/export/servers/hbase-1.1.1 export PATH=$
http://phoenix.apache.org/download.html 二、安装 1、上传安装包到Linux系统,并解压 cd /export/software tar -xvzf apache-phoenix.../server/apache-phoenix-5.0.0-HBase-2.0-bin/phoenix-*.jar /export/server/hbase-2.1.0/lib/ # 进入到hbase...-- 支持索引预写日志编码 --> hbase.regionserver.wal.codec org.apache.hadoop.hbase.regionserver.wal.IndexedWALEditCodec...拷贝到phoenix的bin目录 cp /export/server/hbase-2.1.0/conf/hbase-site.xml /export/server/apache-phoenix-5.0.0...cd /export/server/apache-phoenix-5.0.0-HBase-2.0-bin/ bin/sqlline.py node1:2181 # 输入!
HBase概述 Apache HBase,全称为Hadoop Database,是一个建立在Apache Hadoop之上的开源、分布式、版本控制的列式存储系统。...HBase与Spark的集成 Apache HBase和Apache Spark的集成是大数据处理领域中的一个重要话题。...; import org.apache.hadoop.hbase.client.Connection; import org.apache.hadoop.hbase.HTableDescriptor...; import org.apache.hadoop.hbase.client.Result; import org.apache.hadoop.hbase.client.ResultScanner...; import org.apache.hadoop.hbase.client.Scan; import org.apache.hadoop.hbase.util.Bytes; public
Apache Phoenix的视图操作 一、应用场景 因为我们之前已经创建了 MOMO_CHAT:MSG 表,而且数据添加的方式都是以PUT方式原生API来添加的。...故此时,我们不再需要再使用Phoenix创建新的表,而是使用Phoenix中的视图,通过视图来建立与HBase表之间的映射,从而实现数据快速查询。...二、视图介绍 我们可以在现有的HBase或Phoenix表上创建一个视图。表、列蔟和列名必须与现有元数据完全匹配,否则会出现异常。当创建视图后,就可以使用SQL查询视图,和操作Table一样。...... ) 考虑以下几个问题: 视图如何映射到HBase的表?...视图的名字必须是:命名空间.表名 视图中的列如何映射到HBase的列蔟和列? 列名必须是:列蔟.列名 视图中的类如何映射到HBase的ROWKEY?
Apache Phoenix的基本介绍 Apache Phoenix主要是基于HBase一款软件, 提供了一种全新(SQL)的方式来操作HBase中数据, 从而降低了使用HBase的门槛, 并且 Phoenix...提供了各种优化措施 Phoenix官方网址:http://phoenix.apache.org/ Phoenix官网:「We put the SQL back in NoSQL」 Apache Phoenix...Phoenix通过协处理器在服务器端执行操作,最小化客户机/服务器数据传输 Apache Phoenix可以很好地与其他的Hadoop组件整合在一起,例如:Spark、Hive、Flume以及MapReduce...千万不要这么以为,HBase + Phoenix是否适合做OLAP取决于HBase的定位。...HBase的定位是在高性能随机读写,Phoenix可以使用SQL快插查询HBase中的数据,但数据操作底层是必须符合HBase的存储结构,例如:必须要有ROWKEY、必须要有列蔟。
一.前述 1.HBase,是一个高可靠性、高性能、面向列、可伸缩、实时读写的分布式数据库。...二.Hbase数据模型 ? 2.1 ROW KEY(相当于关系型数据库中的ID) 决定一行数据 按照字典顺序排序的。...HBase把同一列族里面的数据存储在同一目录下,由几个文件保存。 2.3 Timestamp时间戳(相当于版本!!!)...三.Hbase架构 ?...3.1 Client 包含访问HBase的接口并维护cache来加快对HBase的访问 3.2 Zookeeper 保证任何时候,集群中只有一个master(HA) 存贮所有Region的寻址入口。
Apache Phoenix的基本入门操作 一、Phoenix的快速入门 1、需求 本次的小DEMO,我们沿用之前的订单数据集。我们将使用Phoenix来创建表,并进行数据增删改查操作。...PAY_WAY integer, C1.USER_ID varchar, C1.OPERATION_TIME varchar, C1.CATEGORY varchar ); 通过HBase...的Web UI,我们可以看到Phoenix帮助我们自动在HBase中创建了一张名为 ORDER_DTL 的表格,可以看到里面添加了很多的协处理器。...varchar(20) ); 注意: 一旦使用小写,,在后期所有操作这个小写的内容,都需要使用双引号,建议使用大写 单引号表示是字符串 双引号用于标识是小写的字段 建表的时候, 主键字段, 不能带列族 二、Apache...它的功能为insert + update,与HBase中的put相对应。如果不存在则插入,否则更新。列表是可选的,如果不存在,值将按模式中声明的顺序映射到列。这些值必须计算为常量。
当我把hadoop、hbase安装配置(具体参考这里)好了之后,启动hbase的shell交互模式,输入命令却出现了下面这样的错误: ERROR: org.apache.hadoop.hbase.MasterNotRunningException...查看logs目录下的Master日志,发现有以下信息: 2012-02-01 14:41:52,867 FATAL org.apache.hadoop.hbase.master.HMaster: Unhandled...(FileSystem.java:196) at org.apache.hadoop.fs.Path.getFileSystem(Path.java:175) at org.apache.hadoop.hbase.util.FSUtils.getRootDir...(FSUtils.java:363) at org.apache.hadoop.hbase.master.MasterFileSystem....:342) at org.apache.hadoop.hbase.master.HMaster.run(HMaster.java:279) 2012-02-01 14:41:52,870 INFO org.apache.hadoop.hbase.master.HMaster
Apache Phoenix 二级索引 因为没有建立索引,组合条件查询效率较低,而通过使用Phoenix,我们可以非常方便地创建二级索引。...Phoenix中的索引,其实底层还是表现为HBase中的表结构。这些索引表专门用来加快查询速度。...money"); 可以在HBase shell中看到,Phoenix自动帮助我们创建了一张GBL_IDX_ORDER_DTL的表。
今天在使用DataGrip连接hive数据库浏览数据的时候,发现hive数据库中与hbase映射的hive数据表查询不了了,双击数据表加载半天出现下面的异常。 ?...后面打开Hue,发现关于hbase的连接也失败了。 ? 后面在网上搜索了半天,发现情况都跟自己的不一样,然后想起了之前记录Hue配置HBase的博客,瞬间找到了结果。 ?...因为我们早在安装hbase的时候就已经配置好了环境变量,所以我们直接在命令行的任意位置输入hbase-daemon.sh start thrift开启thrift服务 hue上的hbase又可以了啦...hive表中与hbase表映射的数据表也能显示啦~ ? ok,总结来说,只能说明一个问题,博主太粗心。
来加速Hbase的访问,比如cache的.META.元数据的信息。...流程 老的Region寻址方式 在Hbase 0.96版本以前,Hbase有两个特殊的表,分别是-ROOT-表和.META.表,其中-ROOT-的位置存储在ZooKeeper中,-ROOT-本身存储了...(3)Hlog数量上限 前面说到Hlog为了保证Hbase数据的一致性,那么如果Hlog太多的话,会导致故障恢复的时间太长,因此Hbase会对Hlog的最大个数做限制。...该参数为:hbase.hregion.majorcompaction.jitter 具体算法为: hbase.hregion.majorcompaction参数的值乘于一个随机分数,这个随机分数不能超过...通过hbase.hregion.majorcompaction参数的值加上或减去hbase.hregion.majorcompaction参数的值乘于一个随机分数的值就确定下一次大合并的时间区间。
HBase Shell 常用命令: 注意:HBase在linux命令行下操作时,区分大小写 HBase API HBase 提供Java方式的原生接口,其中需要注意的有: (1)创建Connection...HBase Rest Gateway HBase附带的REST服务器,该服务器将HBase表,行,单元和元数据作为URL指定的资源公开。...HBase到Hive 将HBase的数据作为数据源,建立Hive外部表关联到HBase,利用Hive的HQL查询HBase数据,更进一步,将Hive的元数据同步到Impala,利用Impala的SQL...这是HBase二级索引出现的背景。即二级索引是为了让HBase能够提供更多维度的查询能力。...注意:HBase原生并不支持二级索引方案,但基于HBase的KeyValue数据模型与API,可以轻易地构建出二级索引数据。
领取专属 10元无门槛券
手把手带您无忧上云