自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(83)
  • 收藏
  • 关注

原创 fastjson2 使用bug

报错:“A”:null 会被转化成 “A”: esul 等其他奇怪字符或换行符等。

2025-04-15 14:42:24 201

原创 java操作k8s原生api

通过java服务访问k8s集群

2024-01-25 10:40:50 1741

原创 下载文件 不想生成临时文件

【代码】下载文件 不想生成临时文件。

2023-11-28 12:20:11 532

原创 时间序列化配置

java.time包下。

2023-06-16 10:10:14 204

原创 QueryDSL配置

queryDSL 配置

2023-04-28 10:54:40 883

原创 基于内存的分页

java初级开发

2022-12-05 10:45:24 581

原创 kafka如果宕机重启了,怎么指定我要消费的偏移量呢?

kafka如果宕机重启了,怎么指定我要消费的偏移量呢?借图

2021-09-12 22:34:27 251

原创 吃一堑长一智

java 与 mysql的substringjavamysql吃一堑长一智!!!今天在做大数据笔试题的时候,要求 是 某个字段中的一部分必须等于指定值的数据。使用了substring截取这个字段的前7位。但是因为java最近使用的比较频繁,一度记混淆了。java中的substring下标是从0开始的,mysql中的substring下标是从1开始的。!!!!!!!*javamysql...

2021-09-01 09:10:52 157

原创 2021-07-08

大数据面经收藏hadoop2.x和3.x的区别不停机升级过程中有哪些不兼容的地方(namenode的editlog、datanode的块布局等)版本回滚会有啥问题?hdfs写数据过程,写的过程中有哪些故障,分别会怎么处理?dataqueue和ackqueue如何交互的?ackqueue中的数据如何重新放回到dataqueue中?如何保证有序?写数据的过程中是一个个package写入并确认成功后再写下一个吗?不过不是,是怎么写的,除了错误如何恢复的?spark比mapreduce快的原因数据倾斜问题,怎么解决

2021-07-08 22:29:52 601 2

原创 mongodb单机版搭建

mongodb单机版搭建// 通过WGET下载Linux版本的MongoDB[bigdata@linux ~]$ wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel62-3.4.3.tgz// 将压缩包解压到指定目录[bigdata@linux backup]$ tar -xf mongodb-linux-x86_64-rhel62-3.4.3.tgz -C ~/// 将解压后的文件移动到最终的安装目录[bigdat

2021-07-04 00:19:26 265

原创 Azkaban部署与使用

Azkaban部署与使用集群模式安装配置Mysql配置Executor Server配置Web Server集群模式安装将azkaban-db-3.84.4.tar.gz,azkaban-exec-server-3.84.4.tar.gz,azkaban-web-server-3.84.4.tar.gz上传到/opt/azkaban目录下总用量 35572-rw-r--r-- 1 root root 6433 6月 23 11:31 azkaban-db-3.84.4.tar.gz-rw

2021-06-23 15:58:30 140

原创 CDH6.x集成ES

cdh6.x集成Elasticsearch1. 制作Paecel包csd文件1.1下载cm_ext1.2 配置java环境变量和maven1.3下载ElasticSearch安装包1.4 下载elasticsearch-parcel包1.5制作parcel包和csd文件并校验2 部署Elasticsearch服务复制csd文件安装踩坑/opt/cloudera/parcels/ELASTICSEARCH-7.6.1.elasticsearch.p0.7.6.1/config AccessDenied.在

2021-06-16 10:28:09 565

原创 linux动态扩容

linux动态扩容增加磁盘容量查看磁盘大小增加分区初始化分区,加入卷组扩展逻辑卷大小增加磁盘容量磁盘容量需要增加,那么就需要动态扩容修改原来磁盘大小,指定更大容量。查看磁盘大小扩容后查看磁盘空间大小:fdisk -l[root@cdh02 ~]# fdisk -l磁盘 /dev/vda:2199.0 GB, 2199023255552 字节,4294967296 个扇区Units = 扇区 of 1 * 512 = 512 bytes扇区大小(逻辑/物理):512 字节 / 512 字

2021-06-11 10:09:20 564 2

原创 sqoop将mysql表导入hdfs

sqoop将mysql表导入hdfssqoop help codegen Generate code to interact with database records create-hive-table Import a table definition into Hive eval Evaluate a SQL statement and display the results export Export an

2021-06-06 15:57:33 187

原创 flume自定义拦截器

flume-interceptor假设我们要拦截flume传输日志中包含“ pink ” 字符串的事件每个event都是由一个header+body组成的public class PinkInterceptor implements Interceptor { //声明一个存放事件的集合 private List<Event> addEvents; public void initialize() { events = new ArrayList<>();

2021-06-03 15:30:24 147

原创 kafka如何保证数据不丢失

kafka如何保证数据不丢失producerconsumerproducer1.ack的策略配置ack = 0生产者发送消息之后 不需要等待服务端的任何响应,它不管消息有没有发送成功,如果发送过程中遇到了异常,导致broker端没有收到消息,消息也就丢失了。实际上它只是把消息发送到了socketBuffer(缓存)中,而socketBuffer什么时候被提交到broker端并不关心,它不担保broker端是否收到了消息,但是这样的配置对retry是不起作用的,因为producer端都不知道是否发生了

2021-06-03 10:32:29 397

原创 kafka日志清理

kafka日志清理日志删除日志压缩由于kafka接收了来自端口发送的数据,导致kafka经常报错数据量过大,存储不了数据无法继续接收。kafka将消息存储在磁盘中,kafka中的每一个分区都对应一个日志文件,进而又细分为多个日志分段文件。日志删除log.cleanup.policy=delete启用删除策略log.cleanup.policy=delete#专门的日志删除任务来周期性检测和删除不符合保留条件的日志分段文件,默认300000ms,5分钟log.retention.check.i

2021-06-03 09:48:15 1056

原创 flume安装

flume安装解压flume安装包进入到conf下修改flume-env.sh.template 为flume-env.shmv flume-env.sh.template flume-env.sh删除lib目录下guava-x.x.x.jar,防止跟其他组件冲突,但要配置hadoop环境变量vim flume-env.sh,配置java环境变量export JAVA_HOME=/usr/java/jdk1.8.0_191...

2021-06-02 20:21:47 126

原创 zookeeper集群搭建

zookeeper搭建搭建znode搭建下载zookeeper安装包解压zookeeper到指定目录下tar -zxvf zookeeper-3.5.7.tar.gz -C /opt/将zookeeper-3.5.7改名zookeeper,不过最好保留版本信息,因为hadoop生态不同组件可能相互依赖版本,保留版本信息,方便系统搭建选择。进入到zookeeper下conf目录下复制zoo_sample.cfgcp zoo_sample.cfg zoo.cfgvim zoo.cfgdat

2021-06-02 19:43:20 132

原创 kafka集群搭建

kafka集群搭建kafka项目经验之kafka机器数量kafka数量=2*(峰值生产速度*副本数/100)+1假设搭建三台kafka集群解压kafka安装包到指定目录如:/opt/kafka到kafka/config目录下配置server.propertiesbroker.id=1 delete.topic.enable=true log.dirs=/tmp/kafka-logs zookeeper.connect=192.168.1.202:2181,192.168.1.201:2

2021-06-02 19:26:34 97

原创 Kafka非正常关闭后启动,jps显示有kafka,然后又没有了

kafka集群启动失败大多数人的虚拟机可能长时间开启,断电虚拟机关闭,或者进程关闭顺序zookeeper在kafka之前关闭。会导致kafka在zookeeper中注册的零时节点没有销毁。下次kafka启动时,同样跑去注册,发现zookeeper中kafka的brokers/ids不为空,就会默认已经启动。kafka就不会在启动。[zk: localhost:2181(CONNECTED) 12] ls /kafka/brokers/ids[1, 2, 3][zk: localhost:2181(

2021-06-02 16:03:32 1705

原创 HBASE-JAVA客户端入门操作

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 org.junit.After;import org.junit.Before;import org.junit.Test;import java.io.IOExc

2021-05-31 11:07:17 162

原创 Hbase架构及读写流程

架构:客户端拥有访问hbase的接口,同时维护缓存,加速hbase的访问zookeeper 保证集群中只有一个master 存储root region的位置信息 各组件之间的协调服务 检测regionserver的上下线,通知hmasterhmaster 给region server分配region 将宕机的regionserver维护的region转交给其他regionserverhregionserver 维护region,负责region的IO操作 如果一个reigon写的很

2021-05-31 10:35:55 109

原创 HBase三种搭建方式

HBase三种搭建方式环境变量独立模式伪分布式完全分布式搭建环境变量export HBASE_HOME=/hbase路径export PATH=$PATH:$HBASE_HOME/bin独立模式默认模式,HBase不使用HDFS,它使用本地文件系统,他在同一个JVM中运行所有HBase守护进程和本地Zookeeper。Zookeeper绑定到一个中所周知的端口。编辑hbase/conf下hbase-env.sh,设置JAVA_HOMEexport JAVA_HOME=/你的jdk存放路径

2021-05-31 10:05:40 422

原创 hbase java建表报错tablenotfoundexception:TableName

java操作Hbase操作hbase时,发现hbase中有表,可以进行插入操作,但是进行建表时报错,Caused by: org.apache.hadoop.hbase.TableNotFoundException: tb_userTableNotFoundException,大多数情况是因为ideal中hadoop和hbase的版本问题,修改版本后,问题基本解决。...

2021-05-29 17:47:52 1882

原创 HDFS50070界面报错数据块丢失

Please check the logs or run fsck in order to identify the missing blocks. See the Hadoop FAQ for common causes and pote今天在启动HBASE时,总是启动不了,进入HDFS50070界面发现报错丢失若干数据块回到hadoop的用户下执行hadoop fsck -delete回归正常...

2021-05-29 16:41:58 784 1

原创 linux 下配置jdk环境变量

JDK环境变量配置首先在创建文件夹mkdir -p /usr/java将jdk-8u191-linux-x64.tar.gz安装包解压到/usr/java目录下tar -zxvf jdk-8u191-linux-x64.tar.gz配置环境变量vim /etc/profileexport JAVA_HOME=/usr/java/jdk1.8.0_191export PATH=$PATH:$JAVA_HOME/bin确保是自己的jdk解压路径最后刷新环境变量source /etc/

2021-05-27 16:39:38 92

原创 linux 静态网络配置

vim /etc/sysconfig/network-scripts/ifcfg-eno16777736HWADDR="00:0C:29:AF:C7:77" //物理地址,克隆的虚拟机需要改TYPE="Ethernet"BOOTPROTO="static"DEFROUTE="yes"PEERDNS="yes"PEERROUTES="yes"IPADDR="192.168.1.200"DNS1="8.8.8.8"DNS2="114.114.114.114"GATEWAY="192.1

2021-05-27 15:16:44 94

原创 ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock‘

Mysql-ERROR 2002tips onetips twoERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock’ (111)tips one>rm -rf /var/lib/mysql/mysql.sock>service mysqld restarttips two>rm -rf /var/lib/mysql/mysql.soc

2021-05-20 10:36:23 261

原创 克隆的虚拟机无法修改静态ip

job for network.service failedsystemctl restart network.service failed造成这种情况,一般可能是由于克隆的虚拟机,MAC地址与本机的对应不上,所以需要修改MAC地址与本机对应上。ip addr#查看本机的MAC地址vim /etc/sysconfig/network-script/ifcfg-ens33#修改MAC地址有时候ip地址会莫名的消失,因为有2套网络管理工具将NetworkManager关闭systemctl s

2021-05-09 14:16:07 644

原创 flume对接TCP消息,flume无法接收到。

NetCatNetCat默认接收的是tcp消息,如果数据是用udp发送的,则source需要指定netcatudp。它在给定的端口上侦听并将每一行转换为一个事件。行为类似于nc -l -k [host][port],它能够打开指定端口并侦听数据,但是期望提供的数据是换行符分割的文本,每行文本都将变成Flume事件。...

2021-04-26 15:48:17 608

原创 hive-lateral view+视图+索引

hive-lateral view+视图+索引hive Lateral View视图索引hive Lateral ViewLateral View用于和UDTF函数(explode、split)结合来使用。首先通过UDTF函数拆分成多行,再将多行结果组合成一个支持别名的虚拟表。1 小明1 ["lol","book","movie"] {"beijing":"xisanqi","shanghai":"pudong"}2 小明2 ["lol","book","movie"] {"beijing":"x

2021-04-18 16:31:36 221

原创 hive分桶

hive分桶分桶概念开启支持分桶分桶概念分桶:并非所有的数据集都可形成合理的分区,特别之前所提到过的要确定合适的划分大小的疑虑。对于每一个表或者分区,可以进一步细分成桶,桶是对数据进行更细粒度的划分。Hive默认采用对某一列的每个数据进行hash(哈希),使用hashcode对 桶的个数求余,确定该条记录放入哪个桶中。分桶实际上和 MapReduce中的分区是一样的。分桶数和reduce数对应。CREATE [EXTERNAL] TABLE <table_name>(<c

2021-04-17 23:04:26 87

原创 hive分区

hive分区动态分区静态分区半自动分区order by和sort by动态分区如果往hive里面创建的分区有很多,假设按照某个字段进行分区存储,需要写很多sql语句。hive提供了一种动态分区的功能,可以基于查询参数的位置去推断分区的名称,从而建立分区。首先看下数据集:1,小明1,male,24,lol-book-movie,beijing:xisanqi-shanghai:pudong2,小明2,male,25,lol-book-movie,beijing:xisanqi-shanghai:pu

2021-04-17 20:51:22 330

原创 hive执行方式

hive - Beeline注意服务端开启hiveserver2>hive --service hiveserver2客户的通过beeline两种方式连接到hive1)直接启动beeline连接指定的数据库beeline -u jdbc:hive2://hive服务器地址:10000/default -n root2)启动beeline之后再连接数据库>beelinebeeline>!connect jdbc:hive2://<host>:<por

2021-04-14 21:15:28 431 1

原创 hive数据库数据库表操作

hivehive架构antrl语法树执行流程图解hive数据类型数据值日期时间类型String类型其他类型复合类型字符串hive数据库操作创建数据库删除数据库修改数据库使用数据库hive表的操作copy数据like && as创建表创建分区添加分区删除分区:使用load添加分区同时向多个表插入数据正则表达式hive提供了HiveQL方言来查询存储在hadoop集群中的数据。hive可以将大多数的查询转换为MapReduce作业hive最适合于数据仓库,使用数据仓库进

2021-04-14 18:13:06 780

原创 hive-remote(一体--分离式搭建)

hive-remote 一体--分离式搭建Remote一体Remote分离启动首先将hive/lib下的jline-x.x.jar包发送到所有主机的hadoop/share/hadoop/yarn/lib中这种存储方式需要在远端服务器运行一个mysql服务器,并且需要在Hive服务器启动metastore服务。所以将mysql连接驱动mysql-connector-java.jar包放到hive/lib下mysql中创建hive的用户grant all privileges on *.* t

2021-04-13 15:32:07 210

原创 mysql安装后未及时修改密码报错ERROR(1820)

mysql首次登录未及时修改密码在初次下载mysql时,由于没有及时修改密码,提示需要先修改密码。ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.根据要求修改密码时,执行sql命令时报错如下:mysql> alter user 'root'@'localhost' identified by '123456';ERROR 1

2021-04-12 23:21:22 622

原创 YARN RM-HA搭建

YARN RM-HA搭建mapred-site.xmlyarn-site.xml在Hadoop-ha的基础之上mapred-site.xml<property> <name>mapreduce.framework.name</name> <value>yarn</value></property>yarn-site.xml<!-- 让yarn的容器支持mapreduce的洗牌,开启shuffle服务 -

2021-04-09 21:25:24 136

原创 HDFS完全分布式搭建(HA搭建)

完全分布式搭建完全分布式HDFSHadoop HA搭建core-site.xmlhdfs-site.xml完全分布式HDFS配置java环境变量rpm -ivh jdk-8u191-linux-x64.rpm配置环境变量vim /etc/profilenode1node2node3node4NameNodeSecondaryNameNodeDataNode-1DataNode-2DataNode-3a、首先在四台服务器上都要执行:ssh-keyge

2021-04-09 21:12:14 268

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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