<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[qq_35542970的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/qq_35542970</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq_35542970]]></copyright><item><title><![CDATA[HBase2.4.17 修改znode后master初始化失败]]></title><link>https://blog.youkuaiyun.com/qq_35542970/article/details/143186670</link><guid>https://blog.youkuaiyun.com/qq_35542970/article/details/143186670</guid><author>qq_35542970</author><pubDate>Wed, 23 Oct 2024 16:03:02 +0800</pubDate><description><![CDATA[hbase2.4版本无法根据hdfs文件自动重建zk数据]]></description><category></category></item><item><title><![CDATA[HBase PE随机读请求不均匀问题]]></title><link>https://blog.youkuaiyun.com/qq_35542970/article/details/125681443</link><guid>https://blog.youkuaiyun.com/qq_35542970/article/details/125681443</guid><author>qq_35542970</author><pubDate>Fri, 08 Jul 2022 16:48:49 +0800</pubDate><description><![CDATA[hbase pe测试工具]]></description><category></category></item><item><title><![CDATA[MR任务读取HFile]]></title><link>https://blog.youkuaiyun.com/qq_35542970/article/details/122714272</link><guid>https://blog.youkuaiyun.com/qq_35542970/article/details/122714272</guid><author>qq_35542970</author><pubDate>Fri, 28 Jan 2022 09:44:27 +0800</pubDate><description><![CDATA[近期需要开发个功能，通过MR批量读取HFile文件，并以Result的格式写入到其他存储系统中。过程中遇到了一些坑，在此记录下。


前期调研

基于MR的HBase数据读取，常用的是基于HBase官方的TableMapper实现。但是这里需要读取HFile文件，且不想经过HBase（BulkLoad场景下，读取增量数据，但不想全扫描HBase表），那这个方案就不合适啦。

...]]></description><category></category></item><item><title><![CDATA[HBase RIT问题处理]]></title><link>https://blog.youkuaiyun.com/qq_35542970/article/details/122216603</link><guid>https://blog.youkuaiyun.com/qq_35542970/article/details/122216603</guid><author>qq_35542970</author><pubDate>Wed, 29 Dec 2021 15:32:11 +0800</pubDate><description><![CDATA[问题：

最近发现HBase集群出现1W+ 的region处于RIT状态，导致很多hbase集群处于不可用状态。

HBase版本：

2.0.1

问题定位：

1、刚开始以为只是单纯超时等导致的RIT，于是通过脚本手动修改meta表状态（ING-&gt;CLOSED），再滚动重启hbase regionserver和master服务，最后批量assign，结果发现RIT情况并没有解决。（没有hbck工具，只能手动搞）

2、手动assign ‘region’提示超时。大量的assign操作的proced]]></description><category></category></item><item><title><![CDATA[Linux 端口连通性测试]]></title><link>https://blog.youkuaiyun.com/qq_35542970/article/details/120055439</link><guid>https://blog.youkuaiyun.com/qq_35542970/article/details/120055439</guid><author>qq_35542970</author><pubDate>Thu, 02 Sep 2021 10:25:28 +0800</pubDate><description><![CDATA[一般针对Linux端口的连通性测试，都会采用telnet工具，但是telnet工具只能测试tcp端口，对于udp的端口需要使用nc工具进行测试。

TCP端口测试

安装telnet


yum install -y telnet

telnet工具测试命令为：


telnet &lt;host&gt; &lt;port&gt;

测试效果：

端口不通：（此时，禁掉tcp 22端口）





端口通：（此时，放开22端口）





UDP端口测试

安装nc


yum install -y nc
]]></description><category></category></item><item><title><![CDATA[GeoMesa系列2-安装使用]]></title><link>https://blog.youkuaiyun.com/qq_35542970/article/details/117712221</link><guid>https://blog.youkuaiyun.com/qq_35542970/article/details/117712221</guid><author>qq_35542970</author><pubDate>Fri, 23 Jul 2021 17:29:25 +0800</pubDate><description><![CDATA[1、下载安装包，解压（后期可下载源码编译开发）


wget https://github.com/locationtech/geomesa/releases/download/geomesa-3.2.0/geomesa-hbase_2.11-3.2.0-bin.tar.gz
tar -zxvf geomesa-hbase_2.11-3.2.0-bin.tar.gz

2、修改配置，启动GeoMesa

2.1 停止hbase

安装GeoMesa过程中，需要修改HBase部分配置


sudo -u hb]]></description><category></category></item><item><title><![CDATA[GeoMesa系列1-初识]]></title><link>https://blog.youkuaiyun.com/qq_35542970/article/details/117707128</link><guid>https://blog.youkuaiyun.com/qq_35542970/article/details/117707128</guid><author>qq_35542970</author><pubDate>Tue, 08 Jun 2021 16:42:55 +0800</pubDate><description><![CDATA[简介

GeoMesa是一款开源的、基于分布式计算系统的、面向海量时空数据查询与分析的工具包

GeoMesa基于GeoTools API进行设计， 与GeoServer等进行集成提供OGC标准的服务 

支持多种可扩展的、 基于云端的数据存储架构， 包括Apache Accumulo, HBase， Cassandra，Google Bigtable， 以及⽤用于流计算的Apache Kafka 

提供了Spark， 并增加了针对空间数据的UDT、 UDF和UDAF， ⽅便用户直接使用Spark S..]]></description><category></category></item><item><title><![CDATA[java连接hive代码示例（Kerberos）]]></title><link>https://blog.youkuaiyun.com/qq_35542970/article/details/112898344</link><guid>https://blog.youkuaiyun.com/qq_35542970/article/details/112898344</guid><author>qq_35542970</author><pubDate>Wed, 20 Jan 2021 17:07:01 +0800</pubDate><description><![CDATA[java连接hive代码示例（Kerberos）
非Kerberos环境下，Java连接hive的Demo很多，而且没有什么需要注意的，直接使用即可。但是在Kerberos环境下，有些点需要特别注意下。（非Kerberos环境，把AuthKrb5注掉即可）
1、代码示例
import org.apache.hadoop.conf.Configuration;
import org.apache.hadoop.security.UserGroupInformation;

import java.io.IOE]]></description><category></category></item><item><title><![CDATA[Git常用命令]]></title><link>https://blog.youkuaiyun.com/qq_35542970/article/details/112347143</link><guid>https://blog.youkuaiyun.com/qq_35542970/article/details/112347143</guid><author>qq_35542970</author><pubDate>Fri, 08 Jan 2021 10:50:18 +0800</pubDate><description><![CDATA[git如何新建分支

1 查看当前分支

git branch -a


2 切换到基础分支，如主干

git checkout master


3 创建并切换到新分支

git checkout -b dev

git branch 可以看到已经在dev分支上

4 更新分支代码并提交

git add *
git commit -m "init branch dev"
git push origin dev


5 在git代码管理界面经可以看到dev分支了，成功

新建并下载仓库
命令行指引
您还可]]></description><category></category></item><item><title><![CDATA[Java中LOOP怎么用]]></title><link>https://blog.youkuaiyun.com/qq_35542970/article/details/112008890</link><guid>https://blog.youkuaiyun.com/qq_35542970/article/details/112008890</guid><author>qq_35542970</author><pubDate>Thu, 31 Dec 2020 14:47:56 +0800</pubDate><description><![CDATA[java中loop只是continue和break的标记。可以在多层嵌套循环中，跳出到指定层。否则只能跳出当前循环。

具体用法可见以下代码：


public class test {

  public static void main(String[] args) {
    int i = 0;
    int j = 3;
    LOOP: do {
      System.out.println("LOOP: " + i);
      i++;
      LOOP1: for (int ]]></description><category></category></item><item><title><![CDATA[HBase中的MemStore]]></title><link>https://blog.youkuaiyun.com/qq_35542970/article/details/111640648</link><guid>https://blog.youkuaiyun.com/qq_35542970/article/details/111640648</guid><author>qq_35542970</author><pubDate>Thu, 24 Dec 2020 17:08:18 +0800</pubDate><description><![CDATA[HBase中的MemStore


HBase是一个基于HDFS的低成本、分布式LSM结构的数据库。可以支持毫秒级别查询；支持海量的PB级的大数据存储，适用于高QPS的随机读写和前缀范围查询等场景。


1、什么是MemStore

HBase中，Region是集群节点上最小的数据服务单元，用户数据表由一个或多个Region组成。在Region中每个ColumnFamily的数据组成一个Store。每个Store由一个Memstore和多个HFile组成，如下图所示：



图1 Region结构组成

2]]></description><category></category></item><item><title><![CDATA[开源项目拉取与常见问题处理]]></title><link>https://blog.youkuaiyun.com/qq_35542970/article/details/110925888</link><guid>https://blog.youkuaiyun.com/qq_35542970/article/details/110925888</guid><author>qq_35542970</author><pubDate>Wed, 09 Dec 2020 14:55:17 +0800</pubDate><description><![CDATA[开源项目拉取与常见问题处理


前言

大数据发开过程中，不可避免的要和组件的源码打交道（组件的编译打包、组件新特性的合入、Bug的修复、贡献社区等）。下面，我们就以HBase为例，讲一下怎么拉取开源项目，以及一些常见问题的解决方式。


1 准备工作

拉取开源项目代码时，需要准备以下几点：Github账号注册、Git工具安装。

1.1 Github账号注册

1.进入github官网：https://github.com/ 如下图所示：





填写本人邮箱，点击Sign up for GitHu.]]></description><category></category></item><item><title><![CDATA[HDFS DataNode服务容器化与cap-add命令]]></title><link>https://blog.youkuaiyun.com/qq_35542970/article/details/110549711</link><guid>https://blog.youkuaiyun.com/qq_35542970/article/details/110549711</guid><author>qq_35542970</author><pubDate>Thu, 03 Dec 2020 17:33:59 +0800</pubDate><description><![CDATA[1、最近在做HDFS容器化过程中，发现在安全模式下，datanode服务在容器内起不来。找了一圈，发现容器在启动时，默认给的权限不够，导致datanode服务无法启动。

报错如下：


ERROR: Cannot set priority of datanode process 191

于是，按照网上解决方案一顿操作，没用。

最后，在启动容器时，加上--cap-add=all解决问题。

2、cap-add命令的用处是啥

docker使用--privileged --cap-add --cap-dr]]></description><category></category></item><item><title><![CDATA[HBase MemStore flush执行流程]]></title><link>https://blog.youkuaiyun.com/qq_35542970/article/details/109515237</link><guid>https://blog.youkuaiyun.com/qq_35542970/article/details/109515237</guid><author>qq_35542970</author><pubDate>Thu, 05 Nov 2020 17:14:17 +0800</pubDate><description><![CDATA[前言
上一篇博客中（https://blog.youkuaiyun.com/qq_35542970/article/details/109390109），我们分析了memstore flush的几种触发条件，从中可以看出HBase将需要flush的请求存放于MemStoreFlusher中定义的flushQueue中。那么队列中的flush请求又是如何处理的呢？
1、flush队列的处理
1.1、flush请求队列的处理流程：
以put等操作触发的flush为例，流程如下：
（图片来自链接https://blog.cs]]></description><category></category></item><item><title><![CDATA[HBase MemStore flush触发条件]]></title><link>https://blog.youkuaiyun.com/qq_35542970/article/details/109390109</link><guid>https://blog.youkuaiyun.com/qq_35542970/article/details/109390109</guid><author>qq_35542970</author><pubDate>Fri, 30 Oct 2020 18:02:30 +0800</pubDate><description><![CDATA[MemStore flush触发条件

flush操作是Memstore最核心的操作，针对Memstore的flush操作进行深入地解析：首先分析HBase在哪些场景下会触发flush，然后结合源代码分析整个flush的操作流程，最后再重点整理总结和flush相关的配置参数，这些参数对于性能调优、运维中的问题定位都非常重要。

1、触发条件

HBase会在如下几种情况下触发flush操作， 需要注意的是MemStore的最小flush单元是HRegion而不是单个MemStore。可想而知，如果一个HR.]]></description><category></category></item><item><title><![CDATA[Maven常用命令与国内源]]></title><link>https://blog.youkuaiyun.com/qq_35542970/article/details/109389792</link><guid>https://blog.youkuaiyun.com/qq_35542970/article/details/109389792</guid><author>qq_35542970</author><pubDate>Fri, 30 Oct 2020 17:40:49 +0800</pubDate><description><![CDATA[Maven常用命令与国内源常用命令常用maven源
常用命令
1、编译指定模块module_name，同时构建该模块依赖的其他模块
mvn install -pl module_name -am
2、编译指定模块module_name，同时构建依赖该模块的其他模块
mvn install -pl module_name -am -amd
3、编译过程中跳过测试步骤
mvn -Dmaven.test.skip=true  clean install  不编译测试用例，也不执行测试用例
或mvn -DskipT]]></description><category></category></item><item><title><![CDATA[Apache Druid空间过滤器的使用]]></title><link>https://blog.youkuaiyun.com/qq_35542970/article/details/108981109</link><guid>https://blog.youkuaiyun.com/qq_35542970/article/details/108981109</guid><author>qq_35542970</author><pubDate>Fri, 09 Oct 2020 16:35:05 +0800</pubDate><description><![CDATA[从Druid的官方文档来看，Druid是支持空间过滤的，但是在实际使用的时候发现，并不是很好用。先看官网的使用指南。



https://druid.apache.org/docs/latest/development/geo.html

看使用指南觉着提供一个中心和距离就可以用啦，但在测试的时候，效果总是不对。。

看代码发现，Druid的空间过滤功能和想想的并不一样。代码中关于radius部分的过滤的代码如下：


  public boolean contains(float[] otherCoor]]></description><category></category></item><item><title><![CDATA[Prometheus和Grafana监控Solr]]></title><link>https://blog.youkuaiyun.com/qq_35542970/article/details/107862029</link><guid>https://blog.youkuaiyun.com/qq_35542970/article/details/107862029</guid><author>qq_35542970</author><pubDate>Fri, 07 Aug 2020 15:05:43 +0800</pubDate><description><![CDATA[Prometheus和Grafana监控Solr

最近在做Prometheus和Grafana监控大数据组件的调研，百度了下，没找到怎么去监控solr了，刚开始以为没有人搞这个，很郁闷！！后来，翻墙搜了 一下，发现solr现在已经集成了这个功能。。特此记录，以示警戒！



prometheus-solr-exporter模块contrib模块提供，位于contrib/prometheus-exporter目录中。

solr提供监控配置文件（solr-exporter-config.xml，位于con.]]></description><category></category></item><item><title><![CDATA[CheckStyle简单使用]]></title><link>https://blog.youkuaiyun.com/qq_35542970/article/details/107695335</link><guid>https://blog.youkuaiyun.com/qq_35542970/article/details/107695335</guid><author>qq_35542970</author><pubDate>Thu, 30 Jul 2020 17:34:48 +0800</pubDate><description><![CDATA[最近，在学习Apache Druid源码的时候，发现编译过程中提示很多代码编写的格式问题，发现是使用了CheckStyle工具。于是在网上查找相关博客，发现这个博客讲的挺好的，转载以下。

原文地址：https://blog.youkuaiyun.com/iXinRu/article/details/85242553#comments_12876500

CheckStyle作为检验代码规范的插件，除了可以使用配置默认给定的开发规范，如Sun的，Google的开发规范啊，也可以导入像阿里的开发规范的插件。事实上，每一个]]></description><category></category></item><item><title><![CDATA[HBase数据备份/容灾]]></title><link>https://blog.youkuaiyun.com/qq_35542970/article/details/106675108</link><guid>https://blog.youkuaiyun.com/qq_35542970/article/details/106675108</guid><author>qq_35542970</author><pubDate>Wed, 10 Jun 2020 21:31:31 +0800</pubDate><description><![CDATA[HBase的数据备份方式有很多种，Distcp，CopyTable，Export/Import，backup/restore和Replication等。这里主要介绍backup/restore和Replication两种方式。

backup/restore功能是对 HBase Replication 功能的补充。HBase replication适合创建数据的“热”副本（复制数据可立即用于查询，实时备份）；backup/restore功能适合创建“冷”数据副本（必须采取手动步骤）恢复系统，定时备份）...]]></description><category></category></item></channel></rss>