
Hbase
文章平均质量分 57
Hbase
南风知我意丿
“知识,哪怕是知识的幻影,也会成为你的铠甲,保护你不被愚昧反噬”
展开
-
Hbase之获取表的Region分布
Hbase之获取表的Region分布,startkey和endKey分布原创 2023-06-21 17:36:10 · 637 阅读 · 0 评论 -
Hive 3.1.2 集成phoenix 5.0.0 HBase 2.0.5
Hive 3.1.2 集成phoenix 5.0.0 HBase 2.0.5原创 2023-03-27 15:22:18 · 168 阅读 · 0 评论 -
spark读Hbase数据集成Hbase Filter(过滤器)
spark读Hbase数据集成Hbase Filter(过滤器)原创 2023-03-17 18:30:03 · 404 阅读 · 1 评论 -
Hbase 之KeyValue结构详解
HBase 键值。这是基本的 HBase 类型。KeyValue 包装一个字节数组,并将偏移量和长度放入传递的数组中,从哪里开始将内容解释为 KeyValue。字节数组中的 KeyValue 格式为: 如何把keyValue 数据取出放到Map里...原创 2022-08-30 18:37:17 · 1706 阅读 · 0 评论 -
HBase基于HDFS上是如何完成增删改查功能的
HDFS只支持文件append操作, 而依赖HDFS的HBase如何完成增删改查功能?原创 2023-01-28 14:11:20 · 1653 阅读 · 0 评论 -
Hbase之查看RowKey所在Region
Hbase之查看RowKey所在Region原创 2022-08-23 17:08:13 · 1067 阅读 · 0 评论 -
Spark sql之集成Hbase-connectors
1.spark sql使用hbase-connector整合Hbase,实现df写hbase和读取hbase数据为df2.hbase-connector源码编译原创 2022-08-23 15:37:16 · 818 阅读 · 0 评论 -
Phoenix Jdbc 之 ResultSet
ResultSet – next()ResultSet 对象具有指向其当前数据行的指针。最初,指针被置于第一行之前。next 方法将指针移动到下一行;因为该方法在 ResultSet 对象中没有下一行时返回 false原创 2022-08-22 18:18:23 · 303 阅读 · 0 评论 -
Hbase之SnapShot快照操作
snapshot机制并不会拷贝数据,可以理解为`它是原数据的一份指针`。在HBase这种LSM类型系统结构下是比较容易理解的,我们知道HBase数据文件一旦落到磁盘之后就不再允许更新删除等原地修改操作,如果想更新删除的话可以追加写入新文件(HBase中根本没有更新接口,删除命令也是追加写入)。这种机制下实现某个表的snapshot只需要给当前表的所有文件分别新建一个引用(指针),其他新写入的数据重新创建一个新文件写入即可原创 2022-08-21 19:18:38 · 856 阅读 · 0 评论 -
Hbase之Rowkey设计原则
一、rowkey设计原则二、不同模式下rowkey设计1.写优化hashing散列salting加盐Reverse反转2.读优化三、rowkey设计案例1 设计订单状态表2 登录、下单等等统称事件(event)的临时存储原创 2022-08-21 17:23:32 · 3560 阅读 · 2 评论 -
Hbase压缩之ZSTD
Hbase压缩之ZSTD原创 2022-08-11 13:08:02 · 2602 阅读 · 0 评论 -
Hbase之动态切换HMaster
node01机器上有hbase主节点和Namenode,随着数据的增加,node01负载现在处于90%的状态内存也处于90%左右。现在要求`不重启切换一下Hbase主节点`,切换到负载低的机器上原创 2022-08-01 18:22:58 · 1153 阅读 · 0 评论 -
Spark读取Hbase (scala版)
spark 读取 Hbase数据(put、scan)原创 2022-07-17 17:41:25 · 2592 阅读 · 0 评论 -
Hbase工具类(scala版本)
操作Hbase 工具类,scala版本+k8s版原创 2022-07-17 17:30:54 · 512 阅读 · 0 评论 -
Hbase API CRUD操作 新版本 scala语言
本文内容:通过api的方式操作Hbase 完成 创建表、删除表、展示表、增加列族HBase2.2.2Jave/scalaAPI中使用HTableDescriptor与HColumnDescriptor时提示不推荐使用了,并且在3.0.0版本将删除,而是使用TableDescriptorBuilder和ColumnFamilyDescriptorBuilder。......原创 2022-07-17 11:37:29 · 221 阅读 · 0 评论 -
记一次hbase procedure.DisableTableProcedure: Not ENABLED, state=ENABLING, skipping disable; pid=128898
给一个表添加协处理器导致生产hbase集群挂掉重启之后出现rit问题,刺激!原创 2022-07-17 10:51:46 · 648 阅读 · 0 评论 -
Hbck 修复问题
进行修复时,请先确保 hbase:meta 一致,然后再着手修复任何其他问题类型,例如文件系统偏差。 文件系统中的偏差或分配问题应在 hbase:meta 整理后解决。 如果 hbase:meta 出现问题,Master 在采用孤立文件系统数据或进行区域分配时无法进行正确的放置。要记住的其他一般原则包括如果区域处于 CLOSING 状态(或相反,如果处于 OPENING 状态,则未分配),如果没有首先通过 CLOSED 进行转换,则无法分配区域:区域必须始终从 CLOSED 移动到 OPENING,再到 O转载 2022-07-12 11:02:32 · 777 阅读 · 0 评论 -
hbase HBCK2使用指南
HBCK2 每次运行时都会执行一个独立的任务。 它并不是一个可以分析所有关于正在运行的集群,然后修复发现的“所有问题”,如 hbck1 使用的建议的工具。HBCK2 用于修复。 对于正在运行的集群中的不一致或阻塞的列表,您可以转到其他地方,查看正在运行的集群 Master 的日志和 UI。 一旦发现问题,您就可以使用 HBCK2 工具要求 Master 进行修复或跳过不良状态。 HBCK2 和 hbck1 之间的另一个重要区别是要求 Master 进行修复,而不是尝试在修复工具的上下文中进行本地修复。原创 2022-07-12 10:56:20 · 1768 阅读 · 0 评论 -
Phoenix之JDBC整合Spark
spark 通过Phoenix操作Hbase原创 2022-07-07 17:59:33 · 759 阅读 · 0 评论 -
Hbase TimeStamp的妙用
基本架构:实时写入时,需要考虑数据更新的顺序,要做到spark消费kafka里的数据是按照时间顺序消费的,不然可能5s的数据会被4s(迟到/不同分区)来的数据覆盖;实时写入的顺序,大都由CDC(canal、debezium等)控制。针对每一条数据的更新,CDC都会对“表名+主键”进行Hash,路由到Kafka对应的分区。其实针对某个表某条记录的更新,消费时是有严格的顺序的。但如果后期更改kafka分区个数,就会稍微麻烦点。如果不停服更新,就意味着同一条记录的不同更新,分布在不同的分区,也就不能保证严格的顺序原创 2022-06-26 19:41:34 · 2773 阅读 · 0 评论 -
记一次hbase org.apache.hadoop.hbase.PleaseHoldException: Master is initializing
安装好hbase 和phoenix时,我在使用phoenix时出现错误,执行完sqlline.py命令后一直卡着不动了,过了好一会才出现错误日志。然后我仔细看了hbase 的master.log 发现了隐藏的日志信息原创 2022-06-10 13:53:51 · 438 阅读 · 0 评论 -
Hbase的MinorCompact过程解析及参数调优
在Memstore超过一定的阈值的时候,就要新开一个进程将Memstore flush到storefile中,新的Memstore继续写入接受到的数据,当storefile越来越多时,就会降低读的性能,为了提高读的性能,可以对这些storefile进行compact操作,形多个storefile合并成一个大的storefile,那么compact就需要对HBase的数据进行多次的重新读写,这将产生大量的IO操作,所以Minor操作只用来做部分文件的合并操作以及包括minVersion=0并且设置ttl的过期原创 2022-06-10 10:21:34 · 1614 阅读 · 0 评论 -
Hbase Region Split
默认情况下,每个Table起初只有一个Region,随着数据的不断写入,Region会自动进行拆分。刚拆分时,两个子Region都位于当前的Region Server,。1.当1个region中的某个Store下所有StoreFile的总大小超过hbase.hregion.max.filesize,该Region就会进行拆分()。2.当1个region中的某个Store下所有StoreFile的总大小超过,该Region就会进行拆分。()具体的切分策略为:3.Hbase 2.0引入了新的split策略:如果原创 2022-06-04 22:29:45 · 699 阅读 · 0 评论 -
Hbse MemStore Flush && StoreFile Compaction
1.当某个memstroe的大小达到了,其所在region的都会刷写。2.当memstore的大小达到了 时,会阻止继续往该memstore写数据。1.当region server中memstore的总大小达到,region会按照其所有memstore的大小顺序()依次进行刷写。直到region server中减小到上述值以下。2.当region server中memstore的总大小达到时,会阻止继续往写数据。3.到达自动刷写的时间,也会触发memstore flush。自动刷新的时间间隔由该属原创 2022-06-04 17:21:29 · 146 阅读 · 0 评论 -
配置Spark是否获取HBase Token
使用Spark提交任务时,Driver默认会去HBase获取Token,访问HBase则需要配置文件“jaas.conf”进行安全认证。此时若用户未配置“jaas.conf”文件,会导致应用运行失败。因此,根据应用是否涉及HBase进行以下处理:当应用不涉及HBase时,即无需获取HBaseToken。此时,将“spark.yarn.security.credentials.hbase.enabled”设置为“false”即可。当应用涉及HBase时,将“spark.yarn.security.crede原创 2022-06-02 16:13:35 · 619 阅读 · 1 评论 -
Phoenix修改表名
Phoenix修改表名Phoenix修改表名具体步骤如下:第1: 先在hbase上把pho1修改成pho2,具体命令行如下:hbase(main):001:0>disable 'pho1'hbase(main):001:0>snapshot 'pho1','pho_test'hbase(main):001:0>clone_snapshot 'pho_test','pho2'hbase(main):001:0>delete_snapshot 'pho_test'hbase原创 2022-05-07 18:13:23 · 805 阅读 · 0 评论 -
hbase major compact脚本
major_compact脚本 注意大合并很消耗资源,启动时要挑选集群闲暇时间针对hbase1.x针对hbase2.x原创 2022-05-03 14:51:09 · 1813 阅读 · 0 评论 -
ES基于Hbase二级索引
为什么需要创建二级索引HBase对于多条件组合查询这种应用场景是非常不占优势的,甚至可以说就是其短板,一般情况下,我们有两种方式查询Hbase中的数据 1,通过Rowkey查询数据,Rowkey里面会组合固定查询条件,但是需要把多组合查询的字段都拼接在Rowkey中,这是不可能的。 2,通过Scan全部扫描符合条件的数据,这样的效率是非常低的所以这时候我们就需要用建立二级索引的方法来解决这个问题二级索引原理如上图所示,Hbase表中的字段为Rowkey,age,sex,username,转载 2022-05-01 23:41:39 · 972 阅读 · 0 评论