自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

liwenjie001的博客

天下事有难易乎?为之,则难者亦易矣;不为,则易者亦难矣。人之为学有难易乎?学之,则难者亦易矣;不学,则易者亦难矣。

  • 博客(41)
  • 资源 (1)
  • 收藏
  • 关注

原创 2021年过了四天了,才想起来写2020年的总结

其实在12月31号的时候就想写一下年终总结,但是由于没有心情,所以一拖再拖,今天终于开工了,简单先总结一下,2020年虽然世界都不太好,但是我个人还是比较好的,顺利了换了一个工作,读了几本书,虽然有些不开心的事情,但是都是小事,而且还让我意外收获了很多内容,下面我将以多个纬度总结一下2020年做成功的、失败的事情。一、2020年总结1.简单小总结一下读书先上书单,平均每个月读一本书,总体读书数量还可以,质量也都可以。《少有人走的路》这是一本关于心理学、心智成熟的书,本来也没有打算读这本书.

2021-01-05 02:29:41 583 4

原创 Java之HashSet的底层原理:面试常问考点

HashSet 在很多面试中都是一个高频的考点。那么我们看看HashSet面试都问什么?面试官常问你HashSet的底层数据结构是什么? HashMap ,这个 时候面试官又问HashMap 怎么能对呢? HashMap 是<k,v >的数据结构啊,而HashSet 是一个v的数据结构啊,这个时候面试官会说我觉得你对源码了解的不多。但是其实顶层就是HashMap的数据结构,用Ha...

2020-03-30 21:30:50 1044

原创 Java之ArrayList的底层原理:面试常考考点

定义java.util.ArrayList类就是传说中的动态数组,相当于Array的复杂版本,也就是说,ArrayList对象既有数组的特征,也有列表的特征。ArrayList实现了List接口,允许对元素进行快速随机访问。结构源码 public class ArrayList<E> extends AbstractList<E> im...

2020-03-29 23:10:41 1025

原创 JVM 面试考点

现在JVM 在很多大厂面试中都有问道,并且在我们实际开发中这个也是对我们实际的开发有重大帮助的,也是你走到高级程序员道路的必修之路。那么我们先看看整体的架构图,然后在把架构图里面的内容一一讲解那么JVM 到底是什么呢? 首先他是一个虚拟机,然后它是运行在操作系统上的,它又硬件没有直接交互。类装载器ClassLoader负责加载class文件,class文件在文件的开头有...

2020-03-29 01:42:23 371

原创 Java泛型中E、T、K、V等的含义

在看Java 很多源码的是否总有一些泛型,有的时候泛型里面的字母还不一样,所以我们如果想看清楚源码到底是意思,所以我们看看各个字母的含义。E-Element(在集合总总使用,因为集合中存放的元素),看看集合中有用到ET (Tpye) Java 类。K (Key) 健V (Value) 值N (Number) 数值类型? 不确定的Java 类型泛型带来的好处在没有泛型的情...

2020-03-26 20:17:51 628

原创 Java之线程池ThreadPoolExecutor技术

近年来由于互联网的兴起,所以现在Java 面试题中也经常会问到线程池技术,所以今天我们就说一说面试中经常问道的知识点。一 、 基础知识为什么要使用线程池呢?在实际使用中,线程是很占用系统资源的,如果对线程管理不善很容易导致系统问题。因此,在大多数并发框架中都会使用线程池技术来管理线程,那么使用线程池管理线程主要有下面三点好处:降低资源消耗。 通过复用已经存在的线程和降低线程关闭的...

2020-03-26 17:59:19 98

原创 Java之HashMap的底层原理:面试常考知识点

一、 面试知识点随着18年以来现在互联网对java面试题也是越问越深,其中hashmap更是java必问问题,那么我们今天就来总结一下hashmap 的底层原理和面试常考知识点。HashMap 是一种存储高校但是不保证有序的容器,它的数据结构为"数组+链表/红黑树"的结构(当链表长度到8以后数据结构改为红黑树)底层实现了Map<k,v> 的接口并实现了浅拷贝和序列化,Ha...

2020-03-24 23:57:35 425

原创 Spark SQL 开窗函数

谈到 SQL 的开窗函数,要说到HIVE了,因为这个是HIVE支持的特性,但是在Spark SQL中支持HIVE 的。那么让我们看一看开窗函数是什么吧。什么是开窗函数呢 ?开窗函数也叫分析函数,有两类:一类是聚合开窗函数,一类是排序开窗函数。开窗函数的调用格式为: 函数名(列名) over(partition by 列名 order by 列名)如果你没有接触过开窗函数上面这个格式...

2020-03-23 22:28:09 786

原创 java单例模式各种实现方式

Java中单例模式是一种经常用到的模式,并且在面试中是经常出现的,那么我们今天就看看各种实现方式。单例模式(Singleton Pattern)是 Java 中最简单的设计模式之一。这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式。这种模式涉及到一个单一的类,该类负责创建自己的对象,同时确保只有单个对象被创建。这个类提供了一种访问其唯一的对象的方式,可以直接访问,不需要实例化该...

2019-03-14 22:57:49 232

原创 解决linux ping 宿主机不需要关闭防火墙问题

一.背景:在学习大数据的时候,往往需要宿主机和虚拟机之间互相访问,所以我们需要把linux和windows的防火墙都关闭;而关闭windows的防火墙就有安全隐患,而且每次开启关闭的很烦人,所以就有了今天的解决办法;二.解决方案利用windows防火墙里面的高级工具(废话不多说,上图) 点击类别,选择小图标 选择防火墙 点击高级设置 点击入站规则,右键新建规...

2018-03-16 17:06:17 2104

原创 LInux挂载新硬盘

使用命令lsblk可以看到 sdb就是我们新加入的硬盘命令行输入 fdisk /dev/sdb [sdb]为你新添磁盘名称],开始对磁盘的进行设置。我们输入n 添加分区,然后输入 p 设置当前分区为主分区。在分区完成以后 记得输入 w进行保存操作,否则上面的操作都不会生效此时我们再输入lsblk -f 查看当前的磁盘信息。我们可以看到sdb下面的分支上出现了sdb1节点。这说明我们的分区成功了格式化 分区完后,我们需要对每一个分区格式化在命令行输入 mkfs -..

2021-08-10 23:57:55 187

原创 PostgreSQL 使用存储过程定时给某些表进行授权

最近公司有个需求就是需要给每张表给其他用户授权,但是由于表在一段时间内都会增加,所以,如果每增加一张表就授权一次,特别麻烦(程序员都是最懒的),刚开始打算写shell脚本的形式进行授权,但是由于生仓库是使用的云,我们不能通过linux进行登录,所以只能放弃使用shell脚本每天定时授权,只能通过定时的跑sql去授权,于是就想到了写一个存储过程定时去跑就可以了。先熟悉一下存储过程的语法和思路,以一个计算两数之和的存储过程为例。create or replace function summation (.

2021-03-16 18:59:45 881

原创 git于github 常见问题汇总

在提交代码到github 上报 Failed to connect to github.com port 443:connection timed out 问题解决方法:取消全局代理git config --global --unset http.proxy git config --global --unset https.proxy

2021-03-03 00:15:57 205

原创 Zepplin安装与链接hive使用

安装直接到官网下载对应的版本上传到集群上解压即可.解压 tar -zxvf zeppelin-0.8.0-bin-all.tgz -C /opt/module/启动进到刚才解压的目录下运行启动脚本 bin/zeppelin-daemon.sh start访问zepplin 默认的端口号为8080,如果和集群的其他端口号冲突的,可以去配置文件里面进行修改。下面的ip地址改成你安装的机器的地址就可以了。http://192.168.1.102:8080/链接hive.

2020-10-21 23:35:01 285

原创 Flume 日志采集启动停止脚本

背景一般我们在实际的生产环境中,进行日志采集的时候一般都是,写一个脚本的,不可能一台一台机器上去登录进行开启flume或者停止flume,那样效率就太低了,于是我们就需要开发一个脚本来启动和关闭。#! /bin/bashcase $1 in"start"){ for i in s102 s103 do echo " --------启动 $i 采集flume-------" ssh $i "nohup /o..

2020-08-11 22:43:30 1878

原创 IDEA快捷键总结(不定期更新)

IDEA 格式化代码快捷键Ctrl+Alt+L

2020-08-10 22:40:51 103

原创 linux系统下面所有命令都失效了,显示bash: xxxxx: command not found...

问题最近在给搭建数仓的时候,在安装一些软件,然后使用linux各种命令就都不好使了。解决思路这种情况,一般都是自己在安装软件修改环境变量的时候,环境变量写错了,导致整个系统都找不到各种命令的位置。解决方法导入临时环境变量 export PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin然后再把之前错误的环境变量修改过来就可以了。...

2020-08-06 11:58:58 819

原创 Linux下shell显示用户名和主机名出错

问题最近在linux上安装了几个软件,并且添加了几个环境变量但是导致登录shell的时候显示**-bash-4.2$**,很难看且不方便,于是一顿google,找到了解决办法,今天记录一下。解决办法修改当前用户 .bash_profile 文件,在里面加入(文件在家目录下 )。export PS1='[\u@\h \W]$ '然后 source .bash_profile 就可以了。含义PS1 是linux 终端用户的一个环境变量,用来说明命令行提示符的一个设置,其中\u,\h,..

2020-08-05 23:55:50 934 1

原创 大数据之编写集群分发脚本

一、linux系统之间的文件拷贝一般在大数据领域当中,当我们搭建大数据框架的时候,特别是集群,我们不可能一台一台的手动搭建,我们一般都是在一台电脑上搭建好了,然后把搭建好的框架分发给不同的机器,这样既节省时间,又可以轻松搭建框架,是大数据工程师必备的技能。那么我们首先了解一下scp (secure copy)scp 定义scp 可以实现服务器和服务器之间的数据拷贝。(from server1 to server2)基本语法scp -r pdir/pdir/pdir/fna

2020-08-04 00:49:33 417

原创 Hive踩坑之动态和静态分区混合使用

分区是hive非常高效的一种存储方式,将列值作为目录进行存储数据,当使用where条件过滤的时候就会直接扫描对应的目录下的数据,不扫描其他不关联的分区,快速定位,查询节约大量时间。分区分为动态和静态两种分区。那么今天我们就来看看这其中需要注意的事项和容易采的坑。动态分区不显示的给出分区名,根据列的取值自动建立对应的分区,有多少种取值就有多少种分区,所以这在实际生产中很容易导致生成大量的分区,也就导致HDFS生成大量的小文件(这里是需要注意的),所以我们要设置最大分区数。SET hive.e..

2020-07-22 20:09:20 2635 1

原创 SQL常用语法、函数笔记(不定期更新)

今天在刷LeetCode SQL题目的时候,遇到一个查找ID是否为奇数的题目,于是发现了一个比较神器的语法。-- 这样就判断出来是否为奇数了。 如果要偶数就用2,可以结合where条件进行过滤。id & 1...

2020-07-22 16:35:46 141

原创 每日一图之Flume基本架构

比较简单,过一段时间要画一个比较详细的架构图

2020-07-17 18:40:40 220

原创 每日一图之Yarn调度流程

今天画了一个非常重要的流程图就是yarn 调度流程图。

2020-07-16 19:56:01 180

原创 每日一图之HBase架构图简版

今天由于加班,所以下班时间比较晚,所以今天就没有画特别复杂的架构图,就画了一个简版的Hbase架构图

2020-07-13 23:21:29 288 2

原创 每日一图之Hadoop MapReduce 详细过程。

这个是重点中的重点,基本上面试官都会问你这个流程。

2020-07-10 20:15:05 108

原创 每日一图之HIVE架构图

今天画了一下HIVE的架构图,比较简单的,在大数据领域中其实也不是很重要简单了解一下吧。

2020-07-09 21:03:38 514

原创 每日一图之HDFS写流程

今天画的是HDFS文件系统的写流程图。

2020-07-08 23:46:47 103

原创 每日一图之HDFS读流程

从今天起打算每天画一个有关大数据框架的架构图,用来锻炼自己的画图和知识储备能力,希望可以坚持每天画一张吧。那么今天画的是HDFS读文件流程图

2020-07-07 16:51:27 93

原创 大数据开发Linux 常用命令

以下内容是记录自己开发的时候常用的linux 命令,会不断的增加我用到的常用命令top 查看内存 。df -h 查看磁盘存储情况。iotop 查看磁盘IO读写性能。iotop -o 直接查看IO比较高的磁盘读写程序。uptime 查看系统运行时长以及平均负载情况。ps aux 查看进程netstat -tunlp | grep 查看端口号占用情况。...

2020-07-07 16:19:07 333

原创 Android Flutter 安装与使用笔记

最近想写个安卓程序玩一玩,于是就找了找安卓开发的教程,最后发现使用Flutter开发安卓比较简单,并且还可以跨平台开发,于是就搞了起来。安装flutter直接按照官网的方式windows安装,我安装在C盘的android目录下,没有自己创建一个。安装完了在命令行 futter doctor 检测一下然后下载安装 android Studio 其实以上这些内容都比较简单,也就不多介绍了,重要的在下面。打开android 创建一个flutter 项目点击Tools> A..

2020-07-01 22:05:22 182

原创 centOS6.5 网络问题

一、centOS6.5 网络问题。经常出现centos6.5出现网络连接失败 eth0 connection failed: Device not managed by NetworkManager 这个原因,修改网卡MAC地址也不对,最后google一下得到解决办法。 修改网络配置文件 /etc/sysconfig/network-scripts/ifcfg-eno*$ NM_CO...

2018-09-03 22:02:50 339

原创 python3.6安装mysqllab

一、安装经过查资料python3.x不再支持mysqldb。其替代模块是PyMySQL用管理员打开cmdpip3 install PyMySQL链接数据库创建一个数据库mysql -uroot -prootcreate database python;use python;创建一个表CREATE TABLE `users` ( `id` int(11) NO...

2018-06-12 20:51:34 530 1

原创 storm安装笔记

一、准备条件安装jdk安装zookeeper下载 storm官网 二、storm安装1.上传、解压并创建一个符号链接$ tar -xzvf apache-storm-1.0.4.tar.gz -C /opt/module/ $ ln -s apache-storm-1.0.4 storm2.配置环境变量$ vi /etc/profile#STORMexpo...

2018-05-31 21:33:58 390

原创 hive和hbase集成使用出现兼容问题重新编译源码

一、版本和兼容问题hive1.2.1hbase1.3.1兼容问题报错(最后查看社区发现版本问题)hive-hbase-handler-1.2.1.jar 二、编译源码去官网下载hive1.2.1的源码。解压到桌面。创建一个java项目。 1.把hive1.2.1lib和hbase1.3.1下面到jar包导入到项目的libs目录下(把里面重复的jar包去掉),...

2018-05-27 14:50:18 1185

原创 hbase主节点HMaster启动失败等问题

一、hbase shell错误运行hbase shell的list时报错:hbase(main):001:0&gt; listERROR: Can't get master address from ZooKeeper; znode data == nullHere is some help for this command:List all tables in hb...

2018-05-26 12:10:51 7491

原创 详解数据仓库和数据库的区别

一、数据仓库什么是数据仓库? 数据仓库(Data Warehouse),可简写为DW或DWH,数据仓库,是为了企业所有级别的决策制定计划过程,提供所有类型数据类型的战略集合。它出于分析性报告和决策支持的目的而创建。为需要业务智能的企业 ,为需要指导业务流程改进、监视时间,成本,质量以及控制等;数据仓库能干什么?(举几个栗子)年度销售目标的制定,需要根据以往的历史报表进行决策,不能随便...

2018-05-19 08:50:20 83080 11

原创 java集合总结

一、集合的基本概念总结Collection(单列集合)List(有序,可重复)ArrayList 底层数据结构为数组,查询快,增删慢,线程不安全,效率高Vector 底层数据结构为数组,查询快,增删慢,线程安全,效率低LinkedList 底层数据结构为链表,查询慢,增删快,线程不安全,效率高Set(无序,唯一)HashSet 底层数据结构为哈希表哈希表依赖两个方法:hashC

2018-04-01 00:22:14 223

原创 String、StringBuffer和StringBuilder

一、详解String操作详解 StringBuilder>StringBuffer>String why? String:字符串常量 StringBuffer:字符串变量 StringBuilder:字符串变量 从名字分析来看,String是一个常量,也就是它产生之后就不能被改变,那么等等看看下面的代码String s = "hello";s+="world";System.ou

2018-03-29 23:31:26 198

原创 CentOs7安装hadoop3(二)

一、准备工作配置hadoop环境变量$ vi /etc/profile export HADOOP_HOME=/usr/hadoop export PATH=$PATH:$HADOOP_HOME/sbin:$HADOOP_HOME/bin:wq$ source /etc/profile然后通过Hadoop version查看结果 二、搭建伪分布式1.进入配...

2018-03-18 22:23:34 2982

原创 CentOs7安装hadoop3.0(一)

一、准别工作需要安装java环境,如果需要请看我Centos7安装jdk二、下载去阿帕奇官网下载hadoop(这里以hadoop3.0为主,如果需要其他版本自己去官网下载)下载hadoop3.0三、上传到CentOs7然后解压安装$ rz -e //上传文件$ tar -xzvf hadoop-3.0.0.tar.gz //解压结果为: $ cp -r...

2018-03-17 22:42:04 1335

LINUX就这么学

这个是电子版的LINUX就这么学的书籍,大家可以看看,书籍内同是很适合小白学习;

2017-12-07

空空如也

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

TA关注的人

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