自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(106)
  • 资源 (6)
  • 收藏
  • 关注

原创 最详细的Xshell连接Linux

systemctl stop firewalld.service命令关闭防火墙。关闭后防火墙后原点会变成黑色。使用systemctl status firewalld.service命令查看防火墙状态。关闭防火墙自启动命令systemctl disable firewalld.service。因为每次重启的时候防火墙会自启动,所以还要关闭自启动防火墙。(所有不说版本的都是耍流氓,博主使用版本如下)原点是绿色代表防火墙是开启状态,需要使用。Linux版本:CentOS7虚拟机。(下图状态就是开启状态)

2022-10-27 02:03:06 1490

原创 我们的节日,领徽章啦

领徽章

2022-10-24 00:08:18 266

原创 已经21世纪了,你还不会使用Flink实时计算topN热榜吗?点进来手把手教学!

大家好,我是往事随风_h。相信大家和我一样,都有一个大厂梦,作为一名大数据工程师,深知计算topN的重要性,废话不多说,接下来我将用案例给大家演示如何计算topN。文章目录1. 用到的知识点2. 案例介绍3. 数据源4. 主要程序==窗口统计====TopN计算最活跃用户====结果输出==TopN的常见应用场景,最热商品购买量,最高人气作者的阅读量等等。1. 用到的知识点Flink创建kafka数据源;基于 EventTime 处理,如何指定 Watermark;Flink中的W.

2021-07-16 16:52:03 1539 55

原创 修改IDEA创建maven-archetype-webapp项目时的web.xml默认头文件版本号

1.找到maven-archetype-webapp jar包的位置2.找到本地仓库的路径3.找到maven-archetype-webapp.jar 文件路径有点长别点错了4.用WinRAR打开 maven-archetype-webapp.jar(是打开而不是解压!)5.找到web.xml,并删除web.xml6.创建web.xml添加头版本,编码为UTF-8<?xml version="1.0" encoding="UTF-8"?><web-app xmlns

2021-07-06 14:07:33 10120 36

原创 maven配置本地仓库、maven配置阿里中央仓库

一、maven配置本地仓库路径1.打开安装好的maven目录2.进入conf–>编辑settings.xml文件3.修改< localRepository>找到并修改< localRepository>,最初是注释掉的,取消注释就可以 < localRepository>你想存放的本地仓库路径< /localRepository>(不修改默认${user.home}/.m2/repository这个路径)二、配置中央仓库我这里用的阿里

2021-07-06 13:39:49 9874 4

原创 Java并发 - 工具篇

文章目录简介正文1. 什么是并发工具2 . 倒计数器 CountDownLatch3. 倒计数器升级版 CyclicBarrier【循环栅栏】4. 信号量 Semaphore5.区别总结后记简介前面我们介绍了 JUC 中的并发容器,它相当于一个同步容器的升级版,很大程度上提高了并发的性能今天我们来介绍 JUC 中的并发工具,它主要是通过改变自身的状态来控制线程的执行流程;常见的有如下几种:CountDownLatch:倒计时器(属于闭锁的一种实现),用来阻塞线程CyclicBarrier:循

2021-06-18 10:59:23 4427 3

原创 Java并发 - 同步容器篇

文章目录简介目录正文1 . 什么是同步容器2. 为什么要有同步容器3. 同步容器的优缺点4. 同步容器的使用场景总结简介同步容器主要分两类,一种是Vector这样的普通类,一种是通过Collections的工厂方法创建的内部类虽然很多人都对同步容器的性能低有偏见,但它也不是一无是处,在这里我们插播一条阿里巴巴的开发手册规范:高并发时,同步调用应该去考量锁的性能损耗。能用无锁数据结构,就不要用锁;能锁区块,就不要锁整个方法体;能用对象锁,就不要用类锁。可以看到,只有在高并发才会考虑到锁的性能问

2021-05-30 14:16:10 4477

原创 线程的安全性 - 并发基础篇

简介当多个线程访问某个类时,这个类始终都能表现出正确的行为,那么就说这个类是线程安全的。目录这次分三步走:关于相关知识点,放在文末的脑图里了,大家想看结论的,可直接下拉观看哦。1.创建一个线程安全的类2.创建一个线程不安全的类:有一个状态变量3.创建一个线程不安全的类:有多个状态变量正文线程的安全性主要是针对对象的状态(实例属性或静态属性)而言的,如果在多线程中,访问到的对象状态不一致(比如常见的自增属性),那么就是线程不安全的下面我们一步步来先来个无状态类第一步:无状态类这里我们写

2021-05-26 01:39:22 3405 1

原创 Java中的IO流 - 入门篇

简介文件IO流,主要有两种方式字节流:基于各种文件,包括普通文本txt,音频文件mp3,视频文件mp4等字符流:基于普通的文本字符串,比如普通文本txt等本例中用到的相关类如下:所有的读写操作都是针对内存而言的,因为程序就是运行在内存中读操作就是从磁盘文件或网络流读到内存,对于内存而言就是Input写操作就是从内存写到磁盘文件或网络流,对于内存而言就是Output下面分别介绍这两种方式字节流本例子,字节流中主要讲的是ObjectInputStream和ObjectOut

2021-05-12 15:15:45 4596 4

原创 进程与线程 - 入门篇

文章目录简介1. 进程和线程的关系是怎么样的呢?2.既然有了进程,为啥还要有线程呢?3. 多线程都有哪些好处呢?4. 多线程要怎么确保数据安全呢?5. 线程的生命周期都有哪些呢?6. 这些状态之间的关系是咋样的呢?7. 那么线程的创建 New 有几种方式呢?8. BLOCKED 状态一般什么情况下会出现呢?9. WAITING 和 TIMED_WAITING有啥区别,不都是等待状态吗?总结简介首先用术语来讲一下,进程是系统进行资源调度和分配的基本单元,线程是进程的最小执行单元;比如Windows中

2021-05-12 14:54:16 3139 5

原创 大数据开发-Flink-数据流DataStream和DataSet

Flink主要用来处理数据流,所以从抽象上来看就是对数据流的处理,正如前面大数据开发-Flink-体系结构 && 运行架构提到写Flink程序实际上就是在写DataSource、Transformation、Sink.DataSource是程序的数据源输入,可以通过StreamExecutionEnvironment.addSource(sourceFuntion)为程序添加一个数据源Transformation是具体的操作,它对一个或多个输入数据源进行计算处理,比如Map、Fl.

2021-05-12 01:55:24 5655 6

原创 IntelliJ IDEA 快捷键大全(超级实用,建议收藏)

文章目录1. Editing(编辑)2. Search/Replace(查找/替换)3. Usage Search(使用搜索)4. Compile and Run(编译/运行)5. Debugging(调试)6. Navigation(导航)7. Refactoring(重构)8. VCS/Local History(版本控制/本地历史)9. Live Templates(动态模板)10. General(代码生成)1. Editing(编辑)快捷键介绍Ctrl +Space基本

2021-05-11 14:28:40 3967 7

原创 flume启动报错 java.lang.NoClassDefFoundError: org/htrace/Trace

我在启动Flume对hdfs写入时报如下错误:ERROR [SinkRunner-PollingRunner-DefaultSinkProcessor] (org.apache.flume.sink.hdfs.HDFSEventSink.process:447) - process failedjava.lang.NoClassDefFoundError: org/htrace/Trace at org.apache.hadoop.ipc.ProtobufRpcEngine$Invok

2021-05-10 16:16:45 5382 2

原创 一文搞懂什么是SQL注入---SQL注入详解

文章目录一:什么是sql注入二:SQL注入攻击的总体思路三:SQL注入攻击实例四:如何防御SQL注入1、检查变量数据类型和格式2、过滤特殊符号3、绑定变量,使用预编译语句五:什么是sql预编译1.1:预编译语句是什么1.2:MySQL的预编译功能六:为什么PrepareStatement可以防止sql注入(1)为什么Statement会被sql注入(2)为什么Preparement可以防止SQL注入。一:什么是sql注入SQL注入是比较常见的网络攻击方式之一,它不是利用操作系统的BUG来实现攻击,而

2021-04-26 11:38:23 20353 15

原创 数据库 与 数据仓库的本质区别是什么?

数据库:传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易。数据仓库:数据仓库系统的主要应用主要是OLAP(On-Line Analytical Processing),支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。我尝试着再补充些具体的事例来说明,这样更可以帮助大家更好理解一些。举个最常见的例子,拿电商行业来说好了。基本每家电商公司都会经历,从只需要业务数据库到要数据仓库的阶段。电商早期启动非常容易,入行门槛低。找个外包团队,做了一个可以下单的网页前端

2021-04-25 00:17:11 11154 2

原创 一文搞懂MySQL触发器trigger的使用

文章目录药引子:一、创建触发器二、查看触发器三、删除触发器药引子:Q:什么是触发器?A:触发器是与表有关的数据库对象,在满足定义条件时触发,并执行触发器中定义的语句集合。触发器的特性:1、有begin end体,begin end;之间的语句可以写的简单或者复杂2、什么条件会触发:I、D、U3、什么时候触发:在增删改前或者后4、触发频率:针对每一行执行5、触发器定义在表上,附着在表上。也就是由事件来触发某个操作,事件包括INSERT语句,UPDATE语句和DELETE语句;可以协助

2021-04-21 02:32:34 13546 2

原创 让你一分钟搞明白MySQL视图(view)

文章目录一、基本概念二、视图的基本使用三、具体的创建视图的方式:四、使用视图的好处一、基本概念视图是一个虚拟表,是sql的查询结果,其内容由查询定义。同真实的表一样,视图包含一系列带有名称的列和行数据,在使用视图时动态生成。视图的数据变化会影响到基表,基表的数据变化也会影响到视图[insert update delete ] ; 创建视图需要create view 权限,并且对于查询涉及的列有select权限;使用create or replace 或者 alter修改视图,那么还需要改视图的dro

2021-04-21 01:31:48 6397

原创 一文搞懂Hive MapJoin的作用以及如何使用它

摘要MapJoin是Hive的一种优化操作,其适用于小表JOIN大表的场景,由于表的JOIN操作是在Map端且在内存进行的,所以其并不需要启动Reduce任务也就不需要经过shuffle阶段,从而能在一定程度上节省资源提高JOIN效率使用方法一:在Hive0.11前,必须使用MAPJOIN来标记显示地启动该优化操作,由于其需要将小表加载进内存所以要注意小表的大小SELECT /*+ MAPJOIN(smalltable)*/ .key,valueFROM smalltable JOIN

2021-04-16 17:07:37 11063 4

原创 一文搞懂MySQL/MariaDB中游标如何使用

1.游标说明:游标,有些地方也称为光标。它的作用是在一个结果集中逐条逐条地获取记录行并操作它们。例如:其中select是游标所操作的结果集,游标每次fetch一行中的name和age字段,并将每一行的这两个字段赋值给变量var1和var2。**有很多、很多、很多人,很多、很多、很多书都强烈建议:能不用游标尽量不要用游标。**因为它违背了集合的理论,集合取数据是一把一把抓,游标取数据的时候一行一行取,每取一行操作一行,而且在每一行上都有额外的资源消耗。总之,游标效率低、资源消耗高。其实很多领域

2021-04-16 14:24:42 10911

原创 MySQL集群结构说明

在以前,数据库的集群配置一直很难,难点在于MySQL主从结构的高可用和读写分离。万幸的是,Galera/GR的出现,让整个集群的配置都极大程度地简化了。以下是一个简单的MySQL集群拓扑图:1.MySQL中间件:对MySQL Server的读写操作进行路由(即读写分离);分库分表(sharding)(1).MySQL Router:MySQL官方提供的轻量级MySQL代理(路由),只提供读写分离功能,前身为SQL Proxy。(2).ProxySQL:类似于MySQL Router,轻量级M.

2021-04-16 11:52:20 8262

原创 非常全面的 JavaSE 知识点总结

文章目录1.你使用过的JDK版本有哪些?2.面试题或者考试题:JAVA_HOME,Path和ClassPath的区别?3.java数据类型分为几类几种4.&&和&的区别?||与|的区别?5.前++和后++的区别?前--和后--的区别?6.质数【编程题】7.while与do-while的区别?8.break,continue,return三者的区别?9.switch支持的数据类型有哪些?10.数组的定义方式有哪些?11.冒泡排序【编程题】12.面向对象三大特征13.static关键字1

2021-04-16 11:34:11 9062 5

原创 数据仓库 是什么?

数据仓库是伴随着信息技术和决策支持系统(DSS,Decision Support System)的发展而产生的,利用历史的操作数据进行管理和决策。数据仓库是一个面向主题的、集成的、非易失的、随着时间变化的,用于支持管理人员决策的数据集合,数据仓库包含粒度化的企业数据,在不同的粒度级别上对数据进行聚合,这样,数据仓库中就存在最细节的原始数据、轻度聚合数据、高度聚合数据。一,体系结构的变迁早期的数据分析系统是通过“抽取”方式来处理数据,从在线事务处理(OLTP)数据库中,把相关的数据抽取到一个特定.

2021-04-12 15:39:54 8436

原创 MySQL 经典面试题(面试秘籍)

文章目录1、MySQL的复制原理以及流程2、MySQL中myisam与innodb的区别,至少5点3、MySQL中varchar与char的区别以及varchar(50)中的50代表的涵义4、innodb的事务与日志的实现方式5、MySQL binlog的几种日志录入格式以及区别6、MySQL数据库cpu飙升到500%的话他怎么处理?7、sql优化8、备份计划,mysqldump以及xtranbackup的实现原理9、mysqldump中备份出来的sql,如果我想sql文件中,一行只有一个insert...

2021-04-12 01:33:54 14260 5

原创 一分钟了解Apache Kafka 2.4.0 新特性

Apache Kafka 2.4.0 已发布,此版本新增了不少新功能,其中包括:允许消费者从最近的副本进行获取为 Consumer Rebalance Protocol 增加对增量协同重新均衡(incremental cooperative rebalancing)的支持新增 MirrorMaker 2.0 (MM2),新的多集群跨数据中心复制引擎引入新的 Java 授权程序接口支持 KTable 中的非密钥连接用于重新分配副本的 Administrative API保护内部连接的 REST

2021-03-16 19:16:19 4574

原创 ODS& DWD& DWS& ADS 数仓分层

数仓分层ODS:Operation Data Store原始数据DWD(数据清洗/DWI ) data warehouse detail数据明细详情,去除空值,脏数据,超过极限范围的明细解析具体表DWS(宽表-用户行为,轻度聚合) data warehouse service ----->有多少个宽表?多少个字段服务层–留存-转化-GMV-复购率-日活 、点赞、评论、收藏;轻度聚合对DWDADS(APP/DAL/DF)-出报表结果 Application Data Store做分析

2021-02-28 14:17:11 9793 2

原创 一分钟搞明白什么是维度,什么是事实,什么是度量,什么是粒度

维度在《数据仓库工具箱》一书中对维度的定义是:维度表是事实表不可或缺的组成部分。维度表包含业务过程度量事件有关的文本环境。他用来描述与"谁、什么、哪里、何时、如何、为什么"有关的事件。维度用来描述事实,他从不同角度描述事实,也就是说维度是描述事实的角度。我们描述事实的何时,那么就是时间维度。比如我们描述这件商品的何时售出,那就是时间维度比如我们描述这件商品的何地售出,那就是地理维度比如我们描述这件商品的被谁买了,那就是人员维度等等等事实在《数据仓库工具箱》一书中对事实的定义是:事

2021-02-28 14:02:10 18827 1

原创 流式大处理的三种框架对比:Storm,Spark和Flink

storm、spark streaming、flink都是开源的分布式系统,具有低延迟、可扩展和容错性诸多优点,允许你在运行数据流代码时,将任务分配到一系列具有容错能力的计算机上并行运行,都提供了简单的API来简化底层实现的复杂程度。Apache Storm在Storm中,先要设计一个用于实时计算的图状结构,我们称之为拓扑(topology)。这个拓扑将会被提交给集群,由集群中的主控节点(master node)分发代码,将任务分配给工作节点(worker node)执行。一个拓扑中包括spout和.

2021-02-19 20:29:02 7222 4

原创 MongoDB特点和使用场景

文章目录Mongodb的优点与不足(1)Mongodb的不足之处(2)Mongodb的过人之处MongoDB 的应用场景和不适用场景1.适用场景2.不适合场景Mongodb的优点与不足(1)Mongodb的不足之处在集群分片中的数据分布不均匀单机可靠性比较差大数据量持续插入,写入性能有较大波动磁盘空间占用比较大(2)Mongodb的过人之处无模式查询与索引方式灵活,是最像SQL的Nosql支持复制集、主备、互为主备、自动分片等特性MongoDB 的应用场景和不适用场景1.适用

2021-02-19 20:18:53 4446

原创 Flink 实现Locality 模式调度

背景在计算与存储一体化的情况,spark任务在调度task时会优先将其调度在数据所在的节点上或者相同的rack上,这样可以减少数据在不同节点或者不同rack上移动所带来的性能消耗;目前在Flink on yarn模式下,TaskExecutor的资源位置完全由yarn自主控制的,那么就可能会造成任务所在的节点与kafka数据所在的节点不在同一个机房,从而产生跨机房的流量消耗,在这样的一个环境背景下,需要将任务调度在数据所在机房,以减少流量消耗。(注:基于Flink-1.10.1)Flink on Yar

2021-02-09 00:53:01 5336

原创 kafka消费者参数配置

参数默认配置auto.commit.interval.ms = 5000check.crcs = trueclient.id = connections.max.idle.ms = 540000enable.auto.commit = falseexclude.internal.topics = truefetch.max.wait.ms = 500fetch.min.bytes = 1group.id = bigdataheartbeat.interval.ms = 3000inte

2021-02-07 21:55:15 4880 2

原创 Flink 1.11.2 SQL 读写 MySQL

FlinkSQL读取MySQL大多用作维表关联, 聚合结果写入MySQL,简单记录一下用法。JDBC SQL Connector添加依赖 <groupId>org.apache.flink</groupId> <artifactId>flink-connector-jdbc_2.12</artifactId> <version>1.11.2</version> .

2021-02-07 21:22:37 3051

原创 spark 1.6 和spark 2.0读写csv文件

如果是spark1.6.0请添加maven: <dependency> <groupId>com.databricks</groupId> <artifactId>spark-csv_2.10</artifactId> <version>1.4.0</version> <scope>compile&lt

2021-02-07 21:01:47 3631

原创 flinkSQL 追加模式(toAppendStream)与缩进模式(toRetractStream)的区别

追加模式(toAppendStream)与缩进模式(toRetractStream)简介使用flinkSQL处理实时数据当我们把表转化成流的时候,需要使用toAppendStream与toRetractStream这两个方法。稍不注意可能直接选择了toAppendStream。这个两个方法还是有很大区别的,下面具体介绍。toAppendStream与toRetractStream的区别:追加模式: 只有在动态Table仅通过INSERT更改修改时才能使用此模式,即它仅附加,并且以前发出的结果永远不会

2021-01-29 17:20:32 2758

原创 flink Caused by: java.net.BindException: Could not start rest endpoint on any port in port range 808

问题描述:flink 启动,standalone 模式 StandaloneSessionClusterEntrypoint 进程起不来。解决办法:查看log日志文件org.apache.flink.runtime.entrypoint.ClusterEntrypointException: Failed to initialize the cluster entrypoint StandaloneSessionClusterEn at org.apache.flink.runtime.entry

2021-01-19 05:54:25 3520

原创 一分钟搞明白hive分区表和分桶表的区别

1.两者的区别(1)分区和分桶都是细化数据管理,但是分区表是手动添加区分,由于hive是读模式,所以对添加进分区的数据不做模式校验。分桶表的数据时按住某些分桶字段进行hash散列 相乘的多个文件,所以数据的准确性高很多(2)分区表是指按照数据表的某列或某些列分为多个区,区从形式上可以理解为文件夹(3)分桶是相对分区进行更细粒度的划分。分桶将整个数据内容按照某列属性值的hash值进行区分,如要按照name属性分为3个桶,就是对name属性值的hash值对3取摸,按照取模结果对数据分桶。如取模结

2021-01-06 16:32:45 27942

原创 Kafka不丢失数据与不重复消费数据

文章目录一、不丢失数据1.生产者数据不丢失2.消费者数据不丢失二、不重复消费数据一、不丢失数据1.生产者数据不丢失同步模式:配置=1(只有Leader收到,-1所有副本成功,0不等待)。leader partition挂了,数据就会丢失。解决:设置为-1保证produce写入所有副本算成功          producer.type=sync          request.required.acks=-1异步模式,当缓冲区满了,如果配置为0(没有收到确认,一满就丢弃),数据立刻丢弃解

2021-01-01 17:26:37 10118

原创 Gitlab/GitHub:迁移代码,并保留历史记录

文章目录1. 需求2. 实现第1步:从原地址克隆一份裸版本库git clone --bare 解释第2步: 以镜像推送的方式上传代码git push --mirror 解释1. 需求Git仓库地址改变,需要代码迁移,但需要保留之前开发人员的提交记录,方便回溯2. 实现第1步:从原地址克隆一份裸版本库WANGYANFEI+Administrator@wangyanfei MINGW64 /d/JT/java/back// 克隆一份裸版本库$ git clone --bare http:

2020-12-30 11:58:45 6535 2

原创 IDEA:修改JAVA文件自动引入import.*包

问题描述Intellij Idea工具在java文件中,经常会自动导入import java.utils.*这样的导入方式,导致引入不必要的包,使得类的体积变大不推崇导入*这样的做法!问题解决选择 Editor->Code Style->Java->Imports修改Class count和Names count属性Class count to use import with ‘*’:设置500Names count to use static impo

2020-12-30 11:37:15 7160

原创 MySQL: 修改最大连接数

文章目录1. 查看MySQL的最大连接数2. 查看当前状态的连接数量3. 修改MySQL的连接数方法1:MySQL配置文件 my.ini 或 my.cnf方法2:set GLOBAL max_connections1. 查看MySQL的最大连接数show variables like ‘%max_connections%’;max_connections默认值是151该参数设置过小的最明显特征是出现”Too many connections”错误;2. 查看当前状态的连接数量show

2020-12-30 11:13:43 3711

原创 hql中substr函数截取字符串匹配

开发中,经常进行模糊查询或者进行截取字符串进行模糊匹配,常用的就是substr函数或者substring函数。使用语法: substr(string A, int start),substring(string A, int start) 两者用法一样,两个参数 返回值: string 说明:返回字符串A从start位置到结尾的字符串举例演示: hive> select substr('abcde',3) fromlxw_dual; .

2020-12-29 11:55:17 5994

115个Java面试题和答案——终极(下)(1).rar

java面试题汇总,面试必备良药!

2021-07-16

115个Java面试题和答案——终极(上)(1).rar

java面试题汇总,面试必备良药!

2021-07-16

屏幕测量工具,屏幕测量工具(两点间的像素距离)

屏幕测量工具(两点间的像素距离),最实用的屏幕测量工具,适合网页制作时,用CSS-DIV布局时的屏幕测量工具,能够准确测量出·两点间的像素距离,欢迎大家下载,5个币,实惠好用。

2021-07-08

屏幕取色器,CSS取色工具。

屏幕取色器,简单易用,不用安装,打开即可用,是您设计PPT,PS必备,亲测可用!

2021-07-08

图书订阅管理系统JSP+Servlet+mysql.rar

图书订阅管理系统由JSP+Servlet+mysql等技术实现,拿到代码可以直接运行起来,代码有注释,非常适合刚入门的童鞋。

2021-07-07

图书订阅管理系统JSP+Servlet+mysql.rar

图书订阅管理系统由JSP+Servlet+mysql等技术实现,拿到代码可以直接运行起来,代码有注释,非常适合刚入门的童鞋。

2021-07-07

空空如也

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

TA关注的人

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