![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
HBase
文章平均质量分 71
二爵爷点灯
这个作者很懒,什么都没留下…
展开
-
hbase数据库连接池 未设置最大链接数导致数据库操作异常频发
简介业务中将主要数据存储定位hbase存储,近期突然发现数据比对不上,发现实在创建环节发生异常导致逻辑执行终端(hbase存储或查询出现异常)。表现:供应商提供参考:供应商提供的解决方案: 关闭超过90s未使用的链接是一种保护方案,可以重新链接一下就好了第一次按照解决方案优化结果按照供应商提供的解决思路,对核心调用环节增加了异常捕获和重试(4次),依然还是有很多超过两次以上的异常报错,因为可能造成的影响很大,因此继续和供应商沟通是否有彻底解决方案,避免此...原创 2022-03-01 17:35:31 · 2363 阅读 · 0 评论 -
【云产品】hbase 索引使用笔记
简介: 此文记录公司记录使用阿里云产品hbase增强版,使用过程涉及到的关键问题点,首先云hbase增强版最新版本时支持sql查询,但是只允许用户建立5个二级索引,但用户可以通过建立组合索引的方式来增加查询的效率。查询时最多命中一个索引 hbase增强版查询时,只会命中一个索引,因此在创建索引时要结合自己常用的查询语句创建索引,因为考虑到查询效率和索引数量限制建议建组合索引。在测试环境尽量多测试多压测暴露问题 测试环境作为功能验收重要环...原创 2021-12-24 10:20:58 · 1383 阅读 · 0 评论 -
xxl-job 处理能力提升记录和验证点
公司目前逐渐慢慢开始推广xxl-job来替换一些其他的定时任务框架,因为我们做了很多告警提示,重试类型,以及扩展了API任务触发方式来满足业务方的需求。同时对于分布式锁业进行来替换(redis和zk)。功能上已经满足公司很多的业务需求,但是在性能瓶颈上遇到了问题。问题出现在mysql上,因为api 投递的任务每天增长数据在300w条任务执行记录,因此在查询上就变的越来越慢。这还只是刚开始,后期还会有其他高频和大数据量的api 投递任务接入进来做一些异步优化,数据量预估5000w-1亿2千万每...原创 2021-12-13 13:59:25 · 2259 阅读 · 0 评论 -
Phoenix(HBase SQL)核心功能原理及应用场景介绍
...转载 2021-12-07 17:39:46 · 288 阅读 · 0 评论 -
变量不为空触发的空指针异常
简介 最近在为公司一个基础组件做性能优化,优化主要是通过使用hbase存储来替换mysql,考虑到只是针对于一张表(切换后日数据量超过亿条记录)做存储切换。为了上线过程中出现问题可以不用通过回滚版本的方式来进行紧急操作。我们采用开关的形式:全局开关和局部开关来对数据存储进行切换。 因为是灰度切换,因此会有一个存储方式过度并存的时间,同时部分数据必须保证能够获取到:根据id获取数据,因此写了一个公用的判断方法来做数据源判断。也就是在判断的过程中我遇到了值非空的NullPoi...原创 2021-12-07 16:02:45 · 311 阅读 · 0 评论 -
HBase实战:hbase伪分布式模式运行
简介 因为想要再本地测试Apache phonix ,但是phonix 需要通过zk 来发现hbase 因此只能将单机的hbase 变成分布式的,因为单机hbase zk是默认集成修改配置文件:vim conf/hbase-site.xml<property> <name>hbase.cluster.distributed</name> <value>true</value> </prope...原创 2021-11-30 16:22:51 · 835 阅读 · 0 评论 -
HBase实战:从MYSQL表迁移至Hbase中带来的主键问题
简介 我们这次性能改造主要是针对mysql数据库中一张存在瓶颈问题的表进行迁移至Hbase,希望通过HBase来解决当前的瓶颈性问题,在前期个方面调研后我们觉得这件事是大有可为的。改造完成后服务的吞吐能力也将带来成倍的提升。 业务场景:业务通过调用我们基础服务后会将记录保存到一张log表中,后续关于所有的动作和结果也会根据这条log记录ID进行更改(通过回调的方式)。因为我们现在服务能力有限每天只会产生200-300w条数据,后期如果全量接入后每天的数据量预估是5000w...原创 2021-11-17 17:32:39 · 1638 阅读 · 0 评论 -
HBase基础: 表设计思路
简介 通过几天的学习对HBase 在存储结构上和过滤器适用上也有了一点了解,同时也遇到很多问题?例如:查询方式,数据版本,查询时部分过滤器可能会导致数据不准确等这些问题如果不熟悉或与特殊业务场景结合很容产生生产事故。我们用HBase主要是考虑大数据场景,因此一旦使用HBase产生bug那么就很容易产生资损,因此这次改动过程前期一定要做好风险控制和新老版本的灰度迭代。 我们的表设计主要从行键,列簇,列的设计出发希望能够给大家在使用HBase的过程中带来一些帮助和启发行键...原创 2021-11-16 15:27:04 · 1543 阅读 · 0 评论 -
HBase基础:全面认识HBase架构
简介 本文转载自知乎-阿丸笔记,因为在搜集HBase整体架构资料时,发现针对技术调研过程中相关的概念点理解,发现这篇文章是最符合调研结果。同时最能体现HBase在数据文件处理和Hbase检索的核心过程。能够使我们快速准确的理解HBase他的核心设计1.HBase架构组成从物理结构上,HBase包含了三种类型的server,zookeeper、HMaster、region server,采用一种主从模式的结构。region server主要用来服务读和写操作。当用户通过cli...转载 2021-11-16 11:08:06 · 1022 阅读 · 0 评论 -
HBase基础:基础配置hbase-default.xm 相关配置概览
简介 HBase的配置文件主要有两个:hbase-site.xml和hbase-default.xml 在conf/hbase-env.sh配置系统的部署信息和环境变量。 -- 这个配置会被启动shell使用 -- 然后在XML文件里配置信息,覆盖默认的配置。告知HBase使用什么目录地址,ZooKeeper的位置等等信息。不是所有的配置都在hbase-default.xml出现.只要改了代码,配置就有可能改变,所以唯一了解这些被改过的配置的办法是读源代码本身。要注意的是...原创 2021-11-16 10:23:02 · 1701 阅读 · 0 评论 -
HBase入门:查询中常用的Filter总结
简介: 根据技术调研的过程可以明显的体会到hbase的存储方式和数据库的存储有着明显的区别,查询的方式也有着很大不同,HBase主要是通过这种filter来对数据进行筛选。同时对于数据的体量较大(10亿级别以上的数据数据量),检索和修改的场景较多时是比较适合使用hbase。 HBase过滤器可以根据分为:列簇与列类型过滤器,行键过滤器,其他过滤器HBase Filter 概览查询hbase支持的filter 列表hbase(main):015:0> show...原创 2021-11-16 00:40:41 · 4046 阅读 · 0 评论 -
HBase入门:shell模糊查询
简介: 本文将记录shell模糊查询数据的基本命令使用,将尽量全和详细的记录相关命令的使用过程,主要涉及的命令:scan,get 这两种命令下的模糊查询 准备工作:将为test增加一个列簇(hobby:表示各种爱好,比如喜爱的体育项目,喜爱的音乐类型,喜爱读书的类型等数据),然后添加一些测试数据方便使用命令演示模糊查询操作 命令解读:alter 'test','hobby' 作用是:向test表添加一个新的列簇:ho...原创 2021-11-15 17:42:22 · 3761 阅读 · 0 评论 -
HBase入门:shell 方式数据修改和删除
目录简介:准备:修改数据:Put要么向表增加新行 (如果key是新的) 或更新行 (如果key已经存在)查看数据:hbase每次put因为没有指定版本,因此理论上时可以多版本并存的为什么只有最新的版本数据呢?查看表结构信息调整列簇的版本数量删除数据删除目标1:删除数据ID = row3的列簇liecuA中age列的数据(删除操作最小单元)删除目标2:删除数据ID = row3的列簇liecuA 相关数据(如果test表中有多个列...原创 2021-11-13 18:03:46 · 5645 阅读 · 0 评论 -
HBase入门:shell 常用命令
目录简介Step1: 用shell连接你的HBaseStep2:创建一个名为test的表,这个表只有一个 列族 为 liecuA。可以列出所有的表来检查创建情况,然后插入些值。step3:查看表和向表中添加数据step4:检查数据插入情况.解决编码问题Step6:Get一行Step7:disable 再 drop 这张表,清除刚刚的操作禁用表:disable 'test'启用表:enable 'test'删除除表:drop 'test'简介...原创 2021-11-13 14:55:43 · 1794 阅读 · 0 评论 -
HBase入门:安装与运行单机版(mac)
sli简介:1:检查java和获取JAVA_HOME命令:java -version 命令:which java 或者 whereis java得到结果:/usr/bin/java我们到finder中打开这个目录看到的并不是真正的java的安装目录命令:/usr/libexec/java_home -V注:红框中的地址就是我们要用JAVA_HOME地址下载并安装HBase 因为我本地的jdk为1.8,因...原创 2021-11-12 18:27:40 · 1413 阅读 · 0 评论 -
HBase入门简介
简介: 由于对基础服务吞吐能力进行升级,目标tps10w+,mysql数据库无法承载,限制????了基础服务的能力,需要将相关数据表进行迁出至nosql中,经过调研和比较后决定使用HBase来进行数据存储。因为作者之前工作未涉及到如此大的数据量,也没有在项目中使用过HBase因此需要进行技术调研,考虑到有些小伙伴可能和我有一样的,因此决定将调研和开发过程通过技术博客的形势记录下来,希望能给大家带来一些帮助和思考。HBase概览 HBase简介:...原创 2021-11-12 15:15:51 · 1010 阅读 · 0 评论