自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(55)
  • 资源 (1)
  • 收藏
  • 关注

原创 Flume分布式日志采集

Apache Flume概述Flume是一种分布式,可靠且可用的服务,用于有效地收集,聚合和移动大量日志数据。Flume构建在日志流之上一个简单灵活的架构。它具有可靠的可靠性机制和许多故障转移和恢复机制,具有强大的容错性。使用Flume这套架构实现对日志流数据的实时在线分析。Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力。当前Flume有两个版本Flume 0.9X版本的统称Flume-og,Flume1.X版本的

2022-08-01 10:18:02 1546

原创 Flink面试题

1.Flink 相比传统的 Spark Streaming 有什么区别?Flink 是标准的实时处理引擎,基于事件驱动。而 Spark Streaming 是微批(Micro-Batch)的模型。1. 架构模型Spark Streaming 在运行时的主要角色包括:Master、Worker、Driver、Executor,Flink 在运行时主要包含:Jobmanager、Taskmanager和Slot。2. 任务调度Spark Streaming 连续不断的生成微小的数据批次,构建有向无环

2022-08-01 10:15:57 527

原创 Syslog、WMI、Windows日志、FTP、SFTP、SCP、NetFlow、JMS、ActiveMQ采集协议

采集协议

2022-08-01 10:11:58 2676 1

原创 idea快捷键

idea快捷键

2022-06-20 21:59:34 161

原创 Spark SQL面试题

1.RDD DataFrame DataSet的区别(1) 三者之间的关系DataFrame是特殊的RDD(它相当于RDD+schema,即RDD+表信息),可以将他看成数据库中的一张数据表,但是只知道这个"表"中的各个字段,不知道各个字段的数据类型。Dataset是DataFrame的父类,当Dataset中存储Row(Row是一个类型,跟Car、Person这些的类型一样,所有的表结构信息我都用Row来表示)时,两者等价(Dataset[Row]=DataFrame)。(2) 各自优缺点

2022-05-09 16:43:33 1634

原创 Spark streaming知识

目录一.SparkStreaming有哪几种方式消费kafka中的数据,他们之间的区别是什么?二.Spark Streaming窗口函数的原理三.spark streaming 容错原理4.背压机制5.Spark Streaming 如何实现精确一次消费一.SparkStreaming有哪几种方式消费kafka中的数据,他们之间的区别是什么?1.基于Receiver的方式这种方式使用Receiver来获取数据.Receiver是使用kafka的高层次Consumer.

2022-05-09 10:40:55 422 1

原创 Spark知识

1.Spark 的运行流程?1.SparkContext初始化上下文2.SparkContext 向资源管理器注册并向资源管理器申请运行 Executor3.启动计算进程服务,并且告知这些进程服务于哪个job4.ExecutorExecutor 反向注册给Context、Dirver5.SparkContext 构建 DAG 有向无环图6.将 DAG 分解成 Stage(TaskSet)7.把 Stage 发送给 TaskScheduler8.Executor 向 Spa

2022-05-08 22:24:58 789

原创 Hive面试题

目录1.hive架构2.hive如何将hql语法转换成MR执行3.hive和传统的RDBMS数据块比较4.Hive中的压缩格式RCFile、 TextFile、 SequenceFile 各有什么区别?5.Hive中追加导入数据的4种方式是什么?请写出简要语法6.Hive调优7.Hive Stage划分8.内部表与外部表9.分区10.桶11.压缩12.数据倾斜问题13.Hive中order by,sort by,distribute by和...

2021-10-16 17:18:40 483

原创 MyBatis

1、#{}和${}的区别是什么?Mybatis在处理#{}时,会将sql中的#{}替换为?号,调用PreparedStatement的set方法来赋值;mybatis在处理${}时,就是将${}替换成变量的值.PS:使用#{}可以有效的防止SQL注入,提高系统安全性(语句的拼接),如果使用在order by 中就需要使用 ${}。最大区别在于:#{} 传入值时,sql解析参数是带引号的,而${}传入值时,sql解析参数是不带引号的。--Mybatis在处理#{}时select id,na

2021-09-22 17:58:45 870

原创 hive将两列的值拼接为一列,数字前补0

原始数据:①使用 from_unixtime函数将日期转换为数字格式select from_unixtime(unix_timestamp(s_birth,'yyyy-MM-dd hh:mm:ss'),'yyyyMMddhhmmss') from student_hive;②使用concat函数拼接select concat(s_id,(from_unixtime(unix_timestamp(s_birth,'yyyy-MM-dd hh:mm:ss'),'yyyyM...

2021-09-21 21:29:16 3724 1

原创 ERROR tool.ImportTool: Import failed: java.io.IOException: java.lang.ClassNotFoundException: org.apa

原因:缺少hive jar包解决办法:将hive/lib 包下的hive-common-1.2.2.jar和hive-exec-1.2.2.jar 拷贝到sqoop/lib包下[root@CentOS7 sqoop-1.4.7]# cp /usr/apache-hive-1.2.2-bin/lib/hive-common-1.2.2.jar /usr/sqoop-1.4.7/lib/[root@CentOS7 sqoop-1.4.7]# cp /usr/apache-hive-1.2...

2021-09-21 20:15:41 5664 1

原创 请问,计算平均值,在sql语句直接计算,和java后台计算,各自的利弊是什么

如果是大型的应用,比如说大的并发量,数据库是瓶颈的,所以尽可能的采用java代码,毕竟应用服务器的扩展比起数据库的扩展要好的多。小型应用的话,数据库都处于闲置状态不用白不用了,效率肯定要高。 存计算而言,Java和数据库不相上下 如,计算1-10的平均数,两者差不多(目前没有这方面比较的专业资料,个人认为Java略快) 对数据库中多行记录某字段做平均值,数据库比Java快 因此数据库直接在内部处理了数,Java有个转换过程 如,数据库有n条记录,对字段A做计算,Java先

2021-09-18 15:56:19 1401

原创 MySQL

1.MyISAM与InnoDB的区别?InnoDB 支持事务;MyISAM 不支持事务 InnoDB 支持行级锁;MyISAM 支持表级锁 InnoDB 支持 MVCC(多版本并发控制);MyISAM 不支持 InnoDB 支持外键,MyISAM 不支持 MySQL 5.6 以前的版本,InnoDB 不支持全文索引,MyISAM 支持;MySQL 5.6 及以后的版本,MyISAM 和 InnoDB 存储引擎均支持全文索引 InnoDB 不保存表的总行数,执行 select count(*)

2021-09-02 18:43:41 981 1

原创 Oracle

一.Oracle 一.数据库 数据库:数据仓库 电脑存储数据的介质有哪些? 硬盘和内存 内存:程序运行过程中产生数据多存储在内存中 例如:int 5;List list =new ArrayList(); Scanner本质都是在内存中 硬盘:数据会持久化存储在硬盘上的文件系统中 例如:1.txt 呵呵.avi 问题:Oracle数据库中数据是存储在哪呢? ...

2021-09-01 22:04:00 310 1

原创 Java面试题

一.Java基础1.请你谈谈Java中是如何支持正则表达式操作的?Java中的String类提供了支持正则表达式操作的方法,包括:matches()、replaceAll()、replaceFirst()、split()。此外,Java中可以用Pattern类表示正则表达式对象,他提供了丰富的API进行各种正则表达式操作。import java.util.regex.Matcher;import java.util.regex.Pattern;class RegExpTest {

2021-08-24 18:07:13 2118 1

原创 大数据面试题(三)Kafka

三.Kafka目录1.Kafka名词解释和工作方式2.Consumer与topic关系3.kafka中生产数据的时候,如何保证写入的容错性?4.如何保证kafka消费者消费数据是全局有序的5.列举kafka的优点,简述kafka为什么可以做到每秒数十万甚至上百万消息的高效分发?6.为什么离线分析要用kafka7.kafka怎么进行监控8.kafka与传统消息队列有什么不同9.kafka的ISR副本同步队列10.kafka消息数据积压,kafka消费能力不足怎么处.

2021-08-22 21:42:07 1533

原创 大数据面试题(二)HBase

二.HBase目录二.HBase1.HBase调优2.hbase的rowkey怎么创建好?列簇怎么创建比较好?3.hbase过滤器实现用途4.HBase宕机如何处理5.hive和hbase的区别是?6.hbase写流程7.hbase读流程8.hbase数据flush过程9.数据合并过程10.Hmaster和Regionserver职责11.HBase列簇和region的关系12.请简述Hbase的物理模型是什么13.请问如果使用Hbase做即席查询

2021-08-19 21:16:14 313

原创 Apache Kafka消息队列

概述Apache Kafka是Apache软件基金会的开源的流处理平台,该平台提供了消息的订阅与发布的消息队列,一般用作系统间解耦、异步通信、削峰填谷等场景。同时Kafka又提供了Kafka streaming插件包实现了实时在线流处理。相比较一些专业的流处理框架不同,Kafka Streaming计算是运行在应用端,具有简单、入门要求低、部署方便等优点。总体来说Kafka这门课程需要大家掌握以下两个方面:消息队列Message QueueKafka Streaming 流处理消息队列是一种

2021-08-19 15:20:01 457

原创 大数据面试题(一)Hadoop

一.Hadoop目录一.Hadoop1.hdfs写流程2.hdfs读流程3.hdfs体系结构4.一个DataNode宕机,怎么一个流程恢复。5.Hadoop的namenode宕机怎么解决?6.namenode对元数据的管理7.元数据的checkpoint8.yarn资源调度流程9.Hadoop中combiner和partition的作用10.用MapReduce怎么处理数据倾斜问题?11.shuffle阶段,你怎么理解的12.MapReduce的m..

2021-08-18 21:47:03 1299

原创 Sqoop辅助工具

概述Apache Sqoop(TM)是一种旨在在Apache Hadoop和结构化数据存储(例如关系数据库)之间高效传输批量数据的工具。通过内嵌的MapReduce程序实现关系型数据库和HDFS、Hbase、Hive等数据的倒入导出。安装1、访问sqoop的网址http://sqoop.apache.org/,选择相应的sqoop版本下载,本案例选择下载的是1.4.7,下载完相应的工具包后,解压Sqoop:[root@CentOS ~]# tar -zxf sqoop-1.4.7.bin__had

2021-08-12 14:15:33 205

原创 Apache Hive BI分析

Apache Hive背景Hive是建立在 Hadoop 上的数据仓库基础构架。它提供了一系列的工具,可以用来进行数据提取转化加载(ETL-Extract-Transform-Load),这是一种可以存储、查询和分析存储在 Hadoop 中的大规模数据的机制。 Hive 查询操作过程严格遵守Hadoop MapReduce 的作业执行模型,Hive 将用户的HiveQL 语句通过解释器转换为提交到Hadoop 集群上,Hadoop 监控作业执行过程,然后返回作业执行结果给用户。 Hive 并非为联机事务

2021-08-12 14:14:10 406

原创 Java基础(22)设计模式

二十二.设计模式 什么是设计模式? 一些经常被人使用,被多数人知晓的,且被分类编目的程序设计经验的总结 一.单例模式 单例:一个类所创建出的对象在JVM内存中只能有一个,那么该类就是单例的 多例:一个类所创建出的对象在JVM内存中有多个,那么该类就是多例的 如果想保证一个类是单例的就要使用单例模式 1.饿汉式 class MyClass{ public static ...

2021-08-12 14:09:59 49

原创 Java基础(20)线程

二十.线程 进程:在操作系统上(os),一个独立运行的任务被称为进程,进程是可以并发执行的(即多个进程可以同时运行) 线程是进程中,多个并发执行的任务逻辑,线程是进程的组成单位,一个进程至少要有一个线程, 原因是:进程的任务实际的执行者是线程 类比 进程——小组 线程——小组成员 任务是分配给小组的,但实际执行 小组任务的是小组成员 一个进程的任务实际上是由(1——n)个线程来完成的,对于java来说,JVM...

2021-08-12 14:09:46 144

原创 Java基础(19)IO流

十九.IO流 持久化:将内存中的数据 输出到其他设备中(比如硬盘),用于长时间保持数据 流:数据传输的管道或通道 i是in的缩写表示输入,o是out的缩写表示输出,io则表示了两个不同方向流 一般的我们以内存为参照物,往内存中写入的方向我们称之为输入,从内存往外输入的方向我们称之为输出 一.IO流的分类 注意:一般描述一个流时,需要通过方向,内容,功能等三个方面进行描述,所以说不同的分类键 需要三者组...

2021-08-12 14:09:30 102

原创 Java基础(18)异常

十八.异常 异常:程序在执行过程中,出现的非正常现象 异常的处理:程序在执行过程中,出现的非正常现象,而这些非正常现象往往会对用户造成一定的损失 为了规避和减少用户的损失,我们需要在异常出现的时候,做出一些补救措施 一.异常与错误 java中异常与错误都是以对象的形式体现的,所以异常与错误对应的都有自己的类 java中所有异常的父类都是Exception java中所有的错...

2021-08-12 14:09:14 118

原创 Java基础(17)集合

十七.集合 集合:集合是一种容器 是用来进行数据存储的 并提供了丰富的方法 用来操作去所存的内容 集合与数组的区别:数组的长度是固定的,操作繁杂,开发起来效率低(写代码效率低) 集合则提供了很多方法用来操作所存内容操作简单开发起来效率高(写代码效率高) 一.Collection类型集合的体系 二.Collection集合 1.能存什么内容 Collect...

2021-08-12 14:08:57 184

原创 Java基础(16)String

十六.String String实际上就是对一个char类型数组的封装,String中提供了很多方法,用来帮助我们有效的操作这个char类型的数组 一.String类型对象的创建 1.通过字符串常量的形式来创建字符串 String str="HelloWorld"; "HelloWorld"字符串的形式 被称为字符串常量 字符串常量也是String类型的对象,但是该对象的创建不在代码的运行时期,而是在类加载...

2021-08-12 14:08:29 145

原创 Java基础(21)反射

二十一.反射 类对象 当虚拟机进行类加载时,会将读进的信息保存类对中并放置在堆里,类对象对应的模板叫做Class 类的对象 以某个类为模板创建出的对象我们称之为类的对象 一.如何获取一个类对象 需要掌握 1.通过类的对象调用getClass()方法获取类对象 Student student = new Student(); Class class1=student.getClass(); ...

2021-08-12 14:08:10 85

原创 Java基础(15)包装类

十五.包装类 包装类:为了让Object可以统一管理所有的数据类型 JDK为八种基本数据类型 提供了与之一一对应的引用类型 这些数据类型被称为包装类 包装类的意义: a.为了让Oject可以统一管理所有的数据类型 b.提供一些方法与该类型相关的方法,方便开发使用 c.可以通过null值来区分有效与无效数据 一.八种基本数据类型对应的包装类 必须背会 所有的包装类 都被放置在...

2021-08-12 14:07:55 118

原创 HBase分布式数据库(NoSQL)

Apache HBase介绍HBase是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”。就像Bigtable利用了Google文件系统(File System)所提供的分布式数据存储一样,HBase在Hadoop的HDFS之上提供了类似于Bigtable的能力。HDFS和HBase之间的关系HBase的全称Hadoop Database,HBase是构建在HDFS之上的一款数据存储服务,所有的物理数据都

2021-08-10 12:05:25 1211

原创 Java基础(14)常用类

十四.常用类Object java.lang.Object 1.我们称Object类称为超类 Object类时java中所有类的直接父类或间接父类 2.Object可以和任何类型的引用形成多态 3.当Object作为参数时,该方法的实参可以接受任何引用类型的数据 4.当Object作为返回值类型时,该方法可以返回任何引用类型的数据 5.因为Object是所有类的父类,所有每个类中都继承了Obje...

2021-08-10 00:05:10 76

原创 Java基础(13)内部类

十三.内部类 一个类中的类被称为内部类 class Outer{ class Inner{//内部类 } } 一.成员内部类 了解 声明在类以内 方法以外的类被称为成员内部类 地位相当于成员变量 语法: class Outer{ int a; class Inner{} ...

2021-08-10 00:04:50 126

原创 Java基础(12)接口

十二.接口 接口 是一组规范和标准 ,接口的使用者与接口的实现者,都要遵循接口的标准与规范 接口 站在语法的角度,如果一个抽象类中都是抽象方法,那么我们可以将该抽象类声明成一个接口 一.接口的基本语法 1.语法 interface接口名{ } a.接口名命名规范 按照类的命名规范进行命名 所有单词首字母均大写 2.接口与抽象类的区别 阶段性面试 (1)相同...

2021-08-10 00:03:56 144

原创 Java基础(11)三大修饰符

十一.三大修饰符 一.abstract抽象的 1.方法 被abstract修饰的方法叫做抽象方法,抽象方法没有方法体连{}都没有!方法声明结束后,直接以 ; 结束 语法: 修饰符 abstract返回值类型方法名(); 注意: a.访问权限修饰符和其他修饰符都是修饰符所以没有顺序要求,但是都要写在方法的返回值类型之前 b.在子类中重写抽象方法时,和重写普通成员方法的语法要求是一致的 ...

2021-08-10 00:03:36 112

原创 Java基础(10)多态

十.多态 多态 父类引用指向不同的子类对象从而引起父类引用的多种形态 多态的体现父类引用指向子类对象 一.多态的使用 1.语法: a.父类引用 引用名 = new子类类型(); Animal an = new Dog(); Animal an2 = new Cat(); Animal an3 = new Bird(); b.父类类型引用名 =子类引用; Do...

2021-08-09 23:49:31 106

原创 Java基础(9)继承

九.继承 继承是类和类之间的“is -a”,也是一种一般与特殊的关系 思想 将多个子类之间的共性抽取出来形成一个新类这个新类被称为父亲以前的类被称为子类 子类与父类之间的其他称呼 父类-子类 一般类-特殊类 基类-衍生类 超类-子类 一.继承的使用 1.继承的语法: class子类 extends父亲名{ } 2.继承的注意事项 ...

2021-08-09 23:48:53 209

原创 Java基础(8)封装

八.封装 尽可能的屏蔽类的内部构造,对于数据的访问和输入加以权限 一.封装的流程 属性私有化+给属性提供get/set方法 1.将属性进行私有化 在需要被封装的属性前 添加private关键字 class BankUser{ private Strring cid; private String password; private dou...

2021-08-09 23:47:52 99

原创 Java基础(7)面向对象

七.面向对象 对象:一切客观存在的事物,都被称之为对象 万物皆对象 面向对象思想:从对象入手,找出问题中的对象,通过对象与对象之间的关系,从而解决复杂问题 在描述现实生活中的对象时,往往可以通过以下两个维度,就可以完整描述一个对象: 1.对象有什么特征?属性 2.对象有什么功能?方法 计算机中的对象: 1.对象有什么特征?属性计算机中使用数据来描述一个属性 2.对象有什么功能?方法计算机中使用...

2021-08-09 23:47:18 92

原创 Java基础(6)数组

六.数组 数组是计算机内存中一块连续的存储空间,用来存储多个相同的数据类型的数据 一.数组的使用 1.声明一个数组 语法: 数据类型【】数组名;int【】 arr;推荐使用,更符合程序员的阅读习惯 数据类型 【】数组名;int 【】arr; 数据类型 数组名【】; int arr【】; 2.定义数组的长度(空间) 数组长度=数组空间 语法: ...

2021-08-09 23:46:25 162

原创 Java基础(5)函数

五.函数 实现了特定功能的一段代码 可以被反复使用的 如何使用函数?先定义再调用 函数三要素:函数名+参数表+返回值类型 函数的好处: 1.减少了代码的冗余提高了代码的可读性 2.提高代码的复用性 3.提高代码的可维护性 4.代码更具有结构性 ,利于分工——结构化编程 一.函数的定义 1.函数定义的位置:类以内,其他函数以外,与主函数平行 ...

2021-08-09 23:45:30 108

idea快捷键大全^_^

idea快捷键

2022-06-20

空空如也

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

TA关注的人

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