自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 2022-08-16 特此纪念,PCA证书取得

线上上课一个星期,考试很简单,很容易过,8.8块的学费,报个名,怎么都不亏。

2022-08-16 15:27:01 490 1

原创 Kafka的配置文件说明

目录Server.properties配置文件说明producer生产者配置文件说明consumer消费者配置详细说明Server.properties配置文件说明#broker的全局唯一编号,不能重复broker.id=0#用来监听链接的端口,producer或consumer将在此端口建立连接port=9092#处理网络请求的线程数量num.network.threads=3#用来处理磁盘IO的线程数量num.io.threads=8

2022-05-29 08:40:45 466

原创 Kafka当中的数据不丢失机制

生产者生产数据不丢失生产者数据不丢失过程图说明:有多少个分区,就启动多少个线程来进行同步数据发送数据方式可以采用同步或者异步的方式-过程图可以采用同步或者异步的方式同步:发送一批数据给kafka后,等待kafka返回结果1、生产者等待10s,如果broker没有给出ack相应,就认为失败。2、生产者重试3次,如果还没有响应,就报错异步:发送一批数据给kafka,只是提供一个回调函数。1、先将数据保存在生产者端的buffer中。buffer大小是2万条

2022-05-29 08:35:10 222

原创 Kafka的log存储以及查询机制

kafka中log日志目录及组成kafka在我们指定的log.dir目录下,会创建一些文件夹;名字是【主题名字-分区名】所组成的文件夹。 在【主题名字-分区名】的目录下,会有两个文件存在,如下所示:#索引文件00000000000000000000.index#日志内容00000000000000000000.log在目录下的文件,会根据log日志的大小进行切分,.log文件的大小为1G的时候,就会进行切分文件在kafka的设计中,将offset值作为了文件名的一部分

2022-05-29 08:26:06 1317

原创 Kafka的JavaAPI操作

1、创建maven工程并添加jar包创建maven工程并添加以下依赖jar包的坐标到pom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://mav.

2022-05-29 07:43:51 1518

原创 Kafka集群环境搭建

目录一、初始化环境准备二、下载安装包并上传解压三、node01服务器修改kafka配置文件四、安装包分发到其他服务器上面去五、node02与node03服务器修改配置文件六、kafka集群启动与停止一、初始化环境准备安装jdk,安装zookeeper并保证zk服务正常启动二、下载安装包并上传解压通过以下地址进行下载安装包node01执行以下命令,下载并解压cd /export/softwareswget http://archive.apache.o

2022-05-23 22:58:11 578

原创 Kafka 认证登录注意事项

最近,在写关于Kafka的消费端代码,发现若要消费,需要登录的时候,对对端Kafka服务进行认证,研究了一番,以下将代码放出来参考了文章Kafka配置安全认证_月下茶凉的博客-CSDN博客_kafka安全认证Kafka配置安全认证提示:本人提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录系列文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人

2022-05-18 22:08:20 1094

原创 解决使用maven打jar包缺失依赖包问题

问题描述今日,遇到一个问题,在用IDEA写好Java 代码之后,在IDEA运行没有问题,但是用maven打成jar包再运行的时候,却报缺失依赖包的情况。例如下面情况pom.xml配置<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-in

2022-05-14 22:54:20 17928 2

原创 Kafka 简单介绍

1、消息队列的介绍消息(Message)是指在应用之间传送的数据,消息可以非常简单,比如只包含文本字符串,也可以更复杂,可能包含嵌入对象。消息队列(Message Queue)是一种应用间的通信方式,消息发送后可以立即返回,有消息系统来确保信息的可靠专递,消息发布者只管把消息发布到MQ中而不管谁来取,消息使用者只管从MQ中取消息而不管谁发布的,这样发布者和使用者都不用知道对方的存在2、常用的消息队列介绍2.1、RabbitMQRabbitMQ 2007年发布,是一个在AMQP(高级消息

2022-05-10 23:23:34 2226

原创 Impala基本介绍及架构介绍

impala基本介绍impala是cloudera 提供的一款高效率的sql查询工具,提供实时的查询效果,官方测试性能比hive快3到10倍,其sql查询比sparkSQL还要更加快速,号称是当前大数据领域最快的查询sql工具。impala是基于hive并使用内存进行计算,兼顾数据仓库,具有实时,批处理,多并发等优点。impala数据流理解impala优点与缺点优点1、基于内存运算,不需要把中间结果写入磁盘,省掉了大量的I/O开销。2、无需转换为Mapreduce,

2022-01-09 21:40:52 2639

原创 sqoop应用

本文章只是简单介绍了sqoop应用有空我会写一篇datax的使用,以及datax和sqoop的组件区别~1、sqoop1 与 sqoop2 的区别架构区别sqoop1架构sqoop2 架构可以看出sqoop2多了一层服务层一般项目实际应用中使用的是sqoop1版本!sqoop下载地址(appach版本)Index of /dist/sqoophttp://archive.apache.org/dist/sqoop/2、sqoop工作原理...

2021-12-20 22:38:26 187

原创 flume的负载均衡load balancer

负载均衡是用于解决一台机器(一个进程)无法解决所有请求而产生的一种算法。Load balancing Sink Processor 能够实现 load balance 功能,如下图Agent1 是一个路由节点,负责将 Channel 暂存的 Event 均衡到对应的多个 Sink组件上,而每个 Sink 组件分别连接到一个独立的 Agent 上,示例配置,如下所示:在此处我们通过三台机器来进行模拟flume的负载均衡三台机器规划如下:node01:采集数据,发送到node02和n...

2021-12-04 08:55:28 213

原创 使用sshxcute来操作ssh端

本文介绍使用sshxcute的JAR包,通过SSH协议在远程Linux/Unix系统上执行命令1、JAR准备下载地址文件分享https://share.weiyun.com/ZGkRvUQ9

2021-11-23 10:16:47 879

原创 Flume简单安装及使用

1、Flume的安装1.1、下载下载地址Download — Apache Flumehttp://flume.apache.org/download.html下载 binary版本1.2、安装解压文件修改配置文件vi flume-env.sh填写JAVA_HOME 路径查看版本有显示的话,即可表示完成2、简单使用2.1、需求将日志文件 test.log内容输入到 hdfs上准备脚本#!...

2021-11-14 09:39:36 962

原创 Hive调优

1、Fetch抓取(Hive可以避免进行MapReduce)Hive中对某些情况的查询可以不必使用MapReduce计算。例如:SELECT * FROM employees;在这种情况下,Hive可以简单地读取employee对应的存储目录下的文件,然后输出查询结果到控制台。在hive-default.xml.template文件中hive.fetch.task.conversion默认是more,老版本hive默认是minimal,该属性修改为more以后,在全局查...

2021-10-27 23:18:25 343

原创 Hive权限管理,增加用户,授权

目标:Hive添加用户,并授予不同的权限用户TRoot:拥有超级权限,由root用户授权 用户Auser:由TRoot授权,不能create database/drop database,拥有名为 Gdb1 的 database 所有权限 用户Buser:由用户Auser授权,拥有 Gdb1 的读写权限 用户Cuser:由用户Buser授权,只能够拥有Gdb1的读权限 用户Duser:由TRoot授权,可以同时拥有Gdb1、Gdb2的读写权限 用户Euser:由TRoot授权,只能够拥有G

2021-10-17 11:14:30 8437

原创 Hive安装部署

1、安装1.1derby版hive直接使用1.1.1解压hivecd /export/softwarestar -zxvf hive-1.1.0-cdh5.14.0.tar.gz -C ../servers/1.1.2直接启动bin/hivecd ../servers/cd hive-1.1.0-cdh5.14.0/bin/hivehive> create database mytest;缺点:多个地方安装hive后,每一个hive是拥有一套自...

2021-10-06 12:34:39 123

原创 HIVE简单介绍

1、HIVE简介什么是HiveHive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能。其本质是将SQL转换为MapReduce的任务进行运算,底层由HDFS来提供数据的存储,说白了hive可以理解为一个将SQL转换为MapReduce的任务的工具,甚至更进一步可以说hive就是一个MapReduce的客户端为什么使用Hive直接使用hadoop所面临的问题人员学习成本太高 项目周期要求太短 MapReduce实现复杂查询

2021-10-06 12:26:07 213

原创 Yarn资源调度

目录1、web界面查看2、Yarn介绍3、Yarn的主要组件介绍与作用3.1、yarn当中的各个主要组件的介绍3.2、yarn当中各个主要组件的作用resourceManager主要作用NodeManager主要作用ApplicationMaster主要作用Container主要作用3.3、yarn的架构3.4、yarn当中的调度器3.5、yarn常用参数设置1、web界面查看yarn集群的监控管理界面:http://192.168.52.100

2021-09-22 23:02:23 272

原创 MapReduce参数优化

MapReduce重要配置参数1、资源相关参数以下调整参数都在mapred-site.xml这个配置文件当中有//以下参数是在用户自己的mr应用程序中配置就可以生效(1) mapreduce.map.memory.mb: 一个Map Task可使用的资源上限(单位:MB),默认为1024。如果Map Task实际使用的资源量超过该值,则会被强制杀死。(2) mapreduce.reduce.memory.mb: 一个Reduce Task可使用的资源上限(单位:MB),默认为1024。如果Red

2021-09-22 22:31:15 292

原创 MapReduce多Job串联

多Job串联一个稍复杂点的处理逻辑往往需要多个mapreduce程序串联处理,多job的串联可以借助mapreduce框架的JobControl实现示例代码:ControlledJob cJob1 = new ControlledJob(job1.getConfiguration());ControlledJob cJob2 = new ControlledJob(job2.getConfiguration());ControlledJob cJob3 = new Controlled

2021-09-22 22:19:28 251

原创 mapreduce高阶内容(三) 自定义inputFormat

1、需求现在有一些数据,将数据原封不动地输出到两个不同的文件夹当中。2、分析程序的关键点是要在一个mapreduce程序中根据数据输出结果到不同目录,这类灵活的输出需求可以通过自定义outputformat来实现3、实现实现要点:在mapreduce中访问外部资源 自定义outputformat,改写其中的recordwriter,改写具体输出数据的方法write()第一步:自定义一个outputformatpackage cn.laojiajun.myform

2021-09-12 07:10:21 129

原创 Java抽象类小记,踩踩多态的坑!

今天学习写MapReduce的时候,遇到下面这样的一个代码:如图所见,context.getInputSplit() 返回的是 InputSplit 类型,而 InputSplit 是父类,FileSplit 是子类,我们知道,Java里,父类不能够强制转换成子类,那为什么这里又可以呢?带着这个疑问,我做了一个小实验,详见下面代码:Father类:public abstract class Father { public void sayFather() {

2021-09-06 22:36:14 202 1

原创 mapreduce高阶内容(二) 自定义inputFormat

1、需求无论hdfs还是mapreduce,对于小文件都有损效率,实践中,又难免面临处理大量小文件的场景,此时,就需要有相应解决方案2、分析小文件的优化无非以下几种方式:在数据采集的时候,就将小文件或小批数据合成大文件再上传HDFS 在业务处理之前,在HDFS上使用mapreduce程序对小文件进行合并 在mapreduce处理时,可采用combineInputFormat提高效率注意:本文介绍的是第二种处理方法!!!!3、实现本文实现的是上述第二种方式程序的核心机制:

2021-09-05 22:52:08 106

原创 reduce端Join算法实现以及map端Join算法实现

reduce端Join算法实现需求订单数据表t_order id date pid amount 1001 20150710 P0001 2 1002 20150710 P0001 3 1002 2015071

2021-09-05 22:37:59 106

原创 mapreduce高阶内容(一)

1、MapReduce的分区与reduceTask的数量在MapReduce中,通过我们指定分区,会将同一个分区的数据发送到同一个reduce当中进行处理,例如我们为了数据的统计,我们可以把一批类似的数据发送到同一个reduce当中去,在同一个reduce当中统计相同类型的数据,就可以实现类似数据的分区,统计等说白了就是相同类型的数据,送到一起去处理,在reduce当中默认分区只有1个。MapReduce当中的分区类图需求:将以下数据进行分开处理详细数据参见partition.cs.

2021-08-17 10:59:26 260

原创 Java编写mapreduce单词统计

使用Java编写mapreduce程序,核心思想是 分治简单来说,mapreduce编程需要经过以下8个步骤map阶段第一步:读取文件,解析成key value 对 k1 v1第二步:指定map逻辑,接收 k1 v1 转换成新的 k2 v2shuffle阶段第三步:分区...

2021-08-04 16:34:34 444 1

原创 使用org.apache.hadoop.hive.ql.tools.LineageInfo 找出sql的血缘关系

最近遇到一个需求需求就是,给你一段sql,然后解析这段sql里面用了哪些表。然后将这些表,跟数据库里面的表做匹配,数据库里面的表,会记录哪些表你有权限查询,哪些表没有权限查询需求重点:找出这段sql中使用了哪些表使用org.apache.hadoop.hive.ql.tools.LineageInfo即可找出sql使用到哪些表mvn依赖配置 <dependencies> <dependency> ...

2021-07-18 11:25:00 657

原创 Java代码获取HDFS文件系统操作对象

代码如下package cn.laojiajun.hdfs_project;import org.apache.commons.io.IOUtils;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.FileSystem;import org.apache.hadoop.fs.FsUrlStreamHandlerFactory;import org.junit.jupiter.api.Test;

2021-07-18 09:40:42 243

原创 HDFS简单命令

基本命令lsUsage:hdfs dfs -ls [-R] <args>Options:The -R option will return stat recursively through the directory structure.For a file returns stat on the file with the following format:permissions number_of_replicas userid groupid filesize m.

2021-07-11 11:25:42 105

原创 Hadoop分布式环境搭建练习

1、集群规划集群运行服务规划 192.168.88.3 192.168.88.4 192.168.88.5 zookeeper zk zk zk HDFS JournalNode JournalNode JournalNode NameNode (active) NameNode (standBy) ZKFC ZKFC DataNode DataNode DataNode YARN

2021-06-30 23:48:54 198 2

原创 Hadoop伪分布式搭建练习

1、基础环境Linux版本CentOS Linux release 7.6.1810 (Core)内核版本

2021-06-19 17:36:35 208 1

原创 zookeeper增删改查、监听,java练习

import org.apache.curator.RetryPolicy;import org.apache.curator.framework.CuratorFramework;import org.apache.curator.framework.CuratorFrameworkFactory;import org.apache.curator.framework.recipes.cache.NodeCache;import org.apache.curator.framework.reci.

2021-06-12 18:43:15 1232 3

原创 Shell练习(批量更改文件名)

Shell练习(批量更改文件名)需求:输入路径(参数1)和后缀名(参数2),更改表名如下图,建立测试

2021-06-02 17:35:15 198

原创 Hadoop环境准备

1、首先准备好系统镜像文件,我这里是CentOS 8.3下载地址https://mirrors.bfsu.edu.cn/centos/8.3.2011/isos/x86_64/我这里下载的是CentOS-8.3.2011-x86_64-dvd1.iso2、打开Vmware 加载镜像文件2.1新建虚拟机,并设置相关配置​2.2、编辑虚拟机设置,加载镜像文件2.3、启动虚拟机​,选择 Install CentOS Linux 8 选项​...

2021-05-23 15:58:55 192

原创 Maven简单练习

1、安装配置一般情况下,类似IDEA这样的IDE会自带Maven插件,不需要专门安装软件!下面介绍手动安装步骤如下: (1)下载软件包 下载地址: http://maven.apache.org/download.cgi选择下面红框这两个都可以下载之后解压包,得到压缩包然后可以配置环境变量,或者可以不用配置,直接切换到文件夹目录,并进入bin目录,就可以运行了。Linux环境同样道理(两个环境前提都是要配置好java环境变量,否则会报错)...

2021-05-14 20:35:57 283

原创 Java字节流文件复制练习

Java字节流文件复制练习参考代码import java.io.BufferedInputStream;import java.io.BufferedOutputStream;import java.io.FileInputStream;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;public class CopyDemo { .

2021-05-03 14:54:23 57

原创 Java异常处理

JAVA 异常分类及处理1、概念如果某个方法不能按照正常的途径完成任务,就可以通过另一种路径退出方法。在这种情况下会抛出一个封装了错误信息的对象。此时,这个方法会立刻退出同时不返回任何值。另外,调用这个方法的其他代码也无法继续执行,异常处理机制会将代码执行交给异常处理器。 2、异常分类Throwable 是 Java 语言中所有错误或异常的超类。下一层分为 Error 和 ExceptionError1. Error 类是指 java 运行时系统的内部错...

2021-04-30 10:01:53 50

原创 Java集合

JAVA 集合1.接口继承关系和实现集合类存放于 Java.util 包中,主要有 3 种:set(集)、list(列表包含 Queue)和 map(映射)。1. Collection:Collection 是集合 List、Set、Queue 的最基本的接口。 2. Iterator:迭代器,可以通过迭代器遍历集合中的数据 3. Map:是映射表的基础接口...

2021-04-18 21:44:15 96

原创 数据结构(Java版)

1、数据结构的存储方式数据结构的存储方式只有两种:数组(顺序存储)和链表(链式存储)。散列表、栈、队列、堆、树、图等等各种数据结构,其基础存储结构都是从数组或链表实现而来的用数组实现,就要处理扩容缩容的问题;用链表实现,没有这个问题, 但需要更多的内存空间存储节点指针。数组 访问快,修改慢链表 访问慢,修改快数组由于是紧凑连续存储,可以随机访问,通过索引快速找到对应元素,而且相对节约存储空间。但正因为连续存储,内存空间必须一次性分配够,所以说数组...

2021-04-14 10:25:10 106

空空如也

空空如也

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

TA关注的人

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