自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

刘本龙的专栏

个人邮箱:3089008201@qq.com. 技术交流群:684457529

原创 6. rocketmq事务消息

什么是事务消息 事务消息用于解决分布式系统中的事务问题,不了解分布式事务的请自行Google。 通常分布式事务可以使用两阶段,三阶段,TCC,XA,本地事务表等方式来实现强一致性或者最终一致性事务。 这里rocketmq的事务消息就是采用的最终一致性解决的分布式事务。 分布式事务的两个参与者,一方...

2020-01-21 17:26:32

阅读数 55

评论数 0

原创 5. rocketmq延迟消息队列

什么是延迟消息队列 对于消息中间件来说,producer将消息发送到mq的服务器,但并不期望这条消息马上被消费,而是推迟到当前时间点之后的某个时间点后再投递到queue中让consumer进行消费。 也可以认为是定时消息。 延迟消息的使用场景很多,一种比较常见的场景就是在电商系统中,订单创建后,会...

2020-01-21 16:43:11

阅读数 59

评论数 0

原创 4. RocketMQ顺序消息

什么事顺序消息 消息顺序(Message Order)有两种:顺序消费(Orderly)和并行消费(Concurrently)。顺序消费表示消息消费的顺序同生产者为每个消息队列发送的顺序一致,所以如果正在处理全局顺序是强制性的场景,需要确保使用的主题只有一个消息队列。并行消费不再保证消息顺序,消费...

2020-01-21 16:05:45

阅读数 140

评论数 0

原创 3. springboot集成rocketmq

引入依赖 这里我们使用rocketmq-spring-boot-starter来访问rocketmq。 <dependency> <groupId>org.springframework.boot</groupId> <artifactId...

2020-01-21 11:56:06

阅读数 158

评论数 0

原创 2. RocketMQ安装部署

下载 请到 rocketmq官方地址 下载最新的rocketmq。 我这里下载的是 rocketmq-all-4.6.0-bin-release.zip 。 其他装备:JDK 1.8+;64位centos系统。 部署并启动服务 将下载的rocketmq-all-4.6.0-bin-releas...

2020-01-21 11:20:14

阅读数 82

评论数 0

原创 hbase--walgroup源码分析

本文介绍hbase的walgroup原理及实现 开启多wal 默认情况下,一个regionserver只有一个wal文件。 在HBase-5699之后,可以配置多个wal,在hbase-site.xml中,添加以下配置,既可开启多wal(同一个RS服务中): <property> ...

2020-01-20 14:29:00

阅读数 103

评论数 0

原创 jdk11源码--LongAdder源码分析原理分析

概述 针对JDK中的原子类,想必大家都熟悉AtomicInteger,AtomicLong等类。他们都是采用CAS乐观锁方式来实现的。 但是这种方式是否还有继续优化的空间呢?答案是肯定的。 CAS乐观锁对临界区的数据(也就是atomicLong中的volatile long value属性)进行修...

2020-01-10 16:07:34

阅读数 82

评论数 0

原创 Intellij idea 2019.3.1 代码提示忽略大小写

最近idea升级了版本。有的配置发生了变化。本文介绍最新的Intellij idea 2019.3.1版本如何修改配置,让代码提示忽略大小写。 so easy:

2020-01-10 14:24:00

阅读数 51

评论数 0

原创 java自定义类加载器

网上java自定义类加载器很多容易找到,但是都是加载的单个类,如果被加载的类,有引用了其他类怎么办呢?接下来看一下如何来处理这种情况

2019-12-18 10:43:14

阅读数 27

评论数 0

原创 java类加载机制:到底能不能自己自定义java.lang.String类

文章目录概述网络上的错误(不准确)答案jdk11jdk8可否直接使用自定义的java.lang.String?自定义类加载器参考资料 概述 这个是一个经典的面试题:java类加载机制:到底能不能自己自定义java.lang.String类 主要考察java的类加载机制。 网络上的错误(不准确)答案...

2019-12-17 15:56:39

阅读数 27

评论数 0

原创 计算权重随机数

import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; import lombok.NoArgsConstructor; /*** * java 权重随机数生成。 * 如抽奖,每个奖项获奖概率...

2019-12-16 18:44:43

阅读数 30

评论数 0

原创 Java对象占用堆内存大小计算

概述 最近在看hbase源码,里面有对象占用内存大小的计算。正好笔记记录一下。 一般来说,int占4个字节,long占8个字节,等等。但是对象在队中的存储不止其包含的字段所占用的空间,还包括对象头,对齐填充等信息。接下来就结合hbase源码分析一下对象在堆中的存储情况。 原生类型(primitiv...

2019-11-27 17:57:40

阅读数 83

评论数 0

原创 hbase/hadoop异常:No lease on /hbase/archive/data/... File is not open for writing

问题描述 我在进行hbase快照拷贝时报了以下错误: ./hbase org.apache.hadoop.hbase.snapshot.ExportSnapshot -snapshot "MODEL.THIRD_PARTY_KV-11211752-snapshot" -copy...

2019-11-21 19:11:36

阅读数 40

评论数 0

原创 hbase 预分区Pre-splitting 解决热点问题

预分区 在创建表时我们可以指定分区数量及规则等信息。 最简单的方法是在创建表时指定分割点数组。 请注意,将字符串文字指定为拆分点时,它们将基于字符串的基础字节表示形式创建拆分点。 因此,当指定分割点“ 10”时,实际上是在指定字节分割点“ \ x31 \ 30”。 分割点将定义n + 1个区域,其...

2019-11-05 19:59:17

阅读数 35

评论数 0

原创 hbase集群滚动重启Rolling Restart

概述 在我们修改了regionserver的配置后,需要对某个或所有的regionserver进行重启。 或者在集群升级到新的版本时进行滚动升级。 以上都需要尽可能的不影响业务,集群保持存活可用。 当然最简单的方法是停止整个集群,修改完后再重启,但是显然不适用。下面看看如何使用rolling-re...

2019-11-05 11:59:44

阅读数 83

评论数 0

原创 HBASE手动触发major_compact

定时执行脚本 #!/bin/bash source /etc/profile sh ./hbase shell <<EOF major_compact 'table_name' EOF major_compact 语法: #Compact all regions ...

2019-11-05 11:26:52

阅读数 44

评论数 0

原创 hbase扩容 缩容

初始化集群 初始化集群:hadoop三个DataNode,HBASE集群只有一个regionserver。 后面我们不停服的情况下,动态添加一个机器node4,在node4上启动Hregionserver服务。 hbase动态扩容 配置regionservers 配置每台机器的regionse...

2019-11-04 19:38:37

阅读数 100

评论数 0

原创 hbase 负载均衡

概述 hbase 有多个regionserver,固需要负载均衡。本文讲述hbase的负载均衡如何使用。 以下命令都是在hbase shell 控制台使用的。 balance_switch hbase(main):001:0> help 'balance_switch' ...

2019-11-04 19:32:22

阅读数 35

评论数 0

原创 hadoop 动态扩容 缩容

初始化集群 初始化集群:hadoop三个DataNode,HBASE集群只有一个regionserver。 后面我们不停服的情况下,动态添加一个机器node4,在node4上启动DataNode和Hregionserver服务。 hadoop动态扩容 准备工作 准备工作与新搭建集群类似,这里参...

2019-11-04 19:09:44

阅读数 39

评论数 0

原创 hbase源码调试

为了调试源码,我们最好只启动一个regionserver。 hbase集群配置 为了避免在调试过程中由于请求超时而导致地调试中断,可以适当的延长请求的超时时间,修改hbase-site.xml文件中的zookeeper.session.timeout和hbase.zookeeper.propert...

2019-10-31 19:47:03

阅读数 34

评论数 0

原创 hbase--cluster replication 源码分析

复制操作步骤 准备两个集群,clusterA,clusterB . 两个集群都建表 create table PERSON (id integer not null primary key,name varchar,age integer, sex INTEGER, val DOUBLE) c...

2019-10-30 18:31:41

阅读数 35

评论数 0

原创 hbase --HLOG写入流程源码分析

hlog写入流程 如果配置了属性hbase.wal.provide=multiwal,则一个RS会有多个HLOG。This parallelization is done by partitioning incoming edits by their Region,并行化是通过对region分...

2019-10-30 18:27:33

阅读数 50

评论数 0

转载 为什么ArrayBlockingQueue单锁实现,LinkedBlockingQueue双锁实现

首先看一下本人两篇源码解析: jdk11源码–LinkedBlockingQueue源码分析 jdk11源码–ArrayBlockingQueue源码分析 细心的同学会发现,ArrayBlockingQueue的实现是“单锁+两个condition”,而LinkedBlockingQueue是...

2019-10-30 17:14:07

阅读数 36

评论数 0

原创 LinkedBlockingQueue 和 ConcurrentLinkedQueue 的区别与联系

联系 LinkedBlockingQueue 与 ConcurrentLinkedQueue 都是先进先出 FIFO的线程同步的队列。 阻塞队列 典型例子是 LinkedBlockingQueue 适用阻塞队列的好处:多线程操作共同的队列时不需要额外的同步,另外就是队列会自动平衡负载,即那边(生产...

2019-10-30 16:52:55

阅读数 21

评论数 0

原创 OKhttp3 简单使用

概述 okhttp 官网:https://square.github.io/okhttp/ HTTP是现代应用网络的方式。这就是我们交换数据和媒体的方式。有效地执行HTTP可以加快您的负载并节省带宽。 OkHttp是一个默认有效的HTTP客户端: HTTP / 2支持允许对同一主机的所有请求共享...

2019-10-05 14:03:32

阅读数 41

评论数 0

原创 phoenix5表结构变更,修改字段类型

概述 众所周知,hbase中存储的数据都是二进制的字节数组,是没有数据类型的 ,所以这里的数据类型也就是说的Phoenix中的数据类型。 在Phoenix中,有以下几张系统表,其中SYSTEM.CATALOG表保存了表的元数据信息 SYSTEM:CATALOG ...

2019-09-27 17:18:14

阅读数 297

评论数 0

原创 HBase 多租户:RegionServer Group

RegionServer Group 通过对 RegionServer 进行分组,不同的 RegionServer 分到不同的组。每个组可以按需挂载不同的表,并且当组内的表发生异常后,Region 不会迁移到其他的组。这样,每个组就相当于一个逻辑上的子集群,通过这种方式达到资源隔离的效果,降低管理...

2019-09-11 16:57:22

阅读数 63

评论数 0

原创 hbase 数据迁移 : CopyTable

上一篇文章介绍了快照方式的迁移: hbase数据迁移:基于 hbase Snapshot。本文介绍基于CopyTable迁移。 copyTable是于HBase数据迁移的工具之一,以表级别进行数据迁移。copyTable的本质也是利用MapReduce进行同步的,利用MR去scan原表的数据,然后...

2019-09-11 16:22:36

阅读数 71

评论数 0

原创 Phoenix4.7 向 Phoenix 5.0 集群迁移数据

前面讲述了Phoenix hbase 的数据迁移:hbase数据迁移:基于 hbase Snapshot。 但这个是相同版本的。但是我想要将Phoenix4.7创建的表的数据迁移到Phoenix5.0.0集群中(Phoenix5.0.0 hbase 2.1.5),数据迁移过去了,但是查询时只有p...

2019-08-07 19:59:10

阅读数 155

评论数 0

原创 hbase 多版本version

默认保存version数量 测试SQL create table PERSON3 (id integer not null primary key,name varchar,age integer, sex INTEGER, val DOUBLE); 创建成后,查看表结构信息: hbase(ma...

2019-08-06 13:06:49

阅读数 321

评论数 0

原创 Phoenix 5索引

文章目录增删改查phoenix shell下创建view映射hbase表退出Phoenixpsql.py 执行外部SQL文件创建表导入数据复杂SQL:计数平均值聚合 Phoenix5.0 安装部署 搭建了Phoenix环境,本文介绍一下Phoenix的shell使用。 增删改查 下面演示一下创建表...

2019-08-03 16:39:03

阅读数 260

评论数 0

原创 hbase数据迁移:基于 hbase Snapshot

文章目录初始环境说明表迁移创建快照数据迁移恢复快照参考资料 初始环境说明 hbase有两个集群:集群A和集群B,这里是1.1.3版本,2.X版本还没有测试。 集群A上使用Phoenix创建表: create table lbltest1 (id varchar PRIMARY KEY,accoun...

2019-07-31 14:29:11

阅读数 235

评论数 0

原创 hadoop 2.7 使用 distcp 在不同集群间数据迁移拷贝

文章目录 本文讲述在多个hadoop集群中进行数据迁移操作。工作中可能会遇到同样的需求,还是很实用的。 hadoop官方提供了distcp 工具吗,具体使用说明参加官方文档: https://hadoop.apache.org/docs/r2.7.7/hadoop-distcp/DistCp.ht...

2019-07-31 14:16:05

阅读数 167

评论数 0

原创 flink 读取kafka数据,并写入hbase

文章目录概述环境说明代码编写写入hbase 概述 环境说明 scala: 2.12.8 linux下scala安装部署 flink : 1.8.1 Flink1.8.1 集群部署 kafka_2.12-2.2.0 kafka_2.12-2.2.0 集群部署 hbase 2.1 hbas...

2019-07-23 18:19:41

阅读数 874

评论数 0

原创 Flink1.8.1 集群部署

文章目录概述单机版部署HA部署 概述 首先需要安装scala环境,参照 linux下scala安装部署 我使用的scala是 scala-2.12.8 单机版部署 到官网 https://flink.apache.org/downloads.html#apache-flink-181 下载最新的...

2019-07-23 18:06:55

阅读数 490

评论数 1

原创 linux下scala安装部署

文章目录 到scala官网 下载Scala,我这里下载的是scala-2.12.8.tgz版本。 下载地址: https://www.scala-lang.org/download/2.12.8.html 下载完成后,上传到Linux安装目录,tar -xzvf scala-2.12.8.tgz...

2019-07-23 17:35:57

阅读数 87

评论数 0

原创 kafka_2.12-2.2.0 集群部署

文章目录zk 搭建kafka下载配置启动服务测试创建一个topic “my-test-topic”测试消息的发送与接收 zk 搭建 zk 集群需要优先搭建起来,这里使用 Hadoop 2.8.5 完全分布式HA高可用安装(一)–环境准备中搭建的ZK集群。 kafka下载 到kafka官网 下载最...

2019-07-22 20:45:50

阅读数 55

评论数 0

原创 使用Phoenix5 Java api操作HBase

文章目录引入依赖配置文件编写测试类建表插入记录查询 引入依赖 <dependency> <groupId>org.apache.hbase</groupId> <artifactId>hbase-client</artifact...

2019-07-22 17:11:36

阅读数 358

评论数 0

原创 Phoenix5.0 安装部署

文章目录概述Phoenix5.0 shell 安装Phoenix5.0 shell 使用使用Phoenix操作表phoenix shell下创建view映射hbase表 概述 现有hbase的查询工具有很多如:Hive,Tez,Impala,Shark/Spark,Phoenix等。phoenix...

2019-07-22 15:21:12

阅读数 563

评论数 0

原创 Hbase 使用高可用 (HA)的hadoop集群,hbase.rootdir如何配置

文章目录问题描述解决办法 问题描述 在前面文章中搭建了高可用的hadoop集群,然后hbase使用这个集群的hdfs。但是我们d hbase.rootdir配置的仍然是写死的机器: <property> <name>hbase.rootdir</nam...

2019-07-22 11:40:53

阅读数 1378

评论数 0

提示
确定要删除当前文章?
取消 删除