自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Druid学习

Druid的优缺点优点:海海量量数据亚秒级分析 响应、端到端实时 (⼊入库、预聚合、查 询)、⾃自成体系、原 ⽣生⽀支持Lambda和 Kappa架构。缺点:不不适合即席查询分析(提前定义模型预聚合了了)、不不 ⽀支持明细数据查询、不不⽀支持原⽣生Join、不不⽀支持精确去 重、SQL⽀支持处于实验阶段(0.10之前第三⽅方提供SQL ⽀支持,0.10开始提供实验性SQL,截⽌止Druid0.12.3还 是处于实验性阶段)、内部组件多运维繁琐。Druid的架构druid的架构较为复杂,运

2022-02-17 10:31:56 593

原创 Flink java 流处理API

一、创建执行环境 //创建批处理执行环境 ExecutionEnvironment env = ExecutionEnvironment.getExecutionEnvironment(); //创建流处理执行环境 StreamExecutionEnvironment env_stream = StreamExecutionEnvironment.getExecutionEnvironment();..

2022-01-19 18:15:11 1915

原创 es学习笔记

2022-01-11 11:40:47 856

原创 docker学习笔记

一、什么是docker技术Docker 可以让开发者打包他们的应用以及依赖包到一个轻量级、可移植的容器中,然后发布到任何流行的 Linux 机器上,也可以实现虚拟化。比如说我创建了一个docker conbainer,我可以在这个conbainer里面搭建我需要的任何环境,当我需要将这个环境整体进行迁移的时候,我就可以将这个conbainer导出快照,然后根据这个快照就可以创建镜像,再根据镜像去创建一个新的conbainer。那么这个新的conbainer就是完全复制了之前的conbainer。实现

2021-12-08 22:20:34 844

原创 Linux笔记

一、常用命令ls通配符的使用*:匹配任意个数的字符,包括0个?:匹配一个字符[abc ]:匹配三个中的一个[a-f]:匹配a到f的字符cdcd -:在最近两次的工作目录之间切换touch当touch的文件不存在的时候,会创建一个空白的文件。当touch的文件存在的时候,会修改一下该文件的末次修改时间。mkdirmkdir -p :可以创建多级目录。cpcp -i:覆盖文件前提示cp -r:拷贝目标文件下的所有文件。 目标必须为目录

2021-11-12 20:37:14 1012

原创 MapReduce复习

1.什么是MapReduceMapReduce 是一个分布式运算程序的编程框架,是用户开发“基于Hadoop 的数据分析应用”的核心框架。MapReduce 核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序,并发运行在一个Hadoop 集群上。2.Hadoop 序列化1)什么是序列化和反序列化 序列化就是把内存中的对象转换成字节序列或者其他数据传输协议,以便于存储到磁盘和网络传输。 反序列化就是将...

2021-10-27 10:49:40 736

原创 HDFS复习

HDFS的组成架构

2021-10-22 11:22:41 815

原创 Scala学习笔记

一、与Java不同处二、特有处1.插值器(字符串模板)1.1.s插值器//在任何字符串前加上s,就可以直接在串中使用变量了val age = 22val name = "alice"println(s"${age}岁的${name}在读大学")//字符串插值器也可以处理任意的表达式。例如:println(s"1+1=${1+1}") //将会输出字符串1+1=2。任何表达式都可以嵌入到${}中。1.2.f插值器在任何字符串字面前加上 f,就可以生成简单的格式化串,功能相似

2021-10-18 22:12:49 177

原创 Flume操作手册

1.flume基础组件的使用2.flume事务2.1事务原理put事务流程:doPut:将批处理的数据先写入putList中。doCommit:检查channel内存队列是否足够合并。doRollback:channel内存队列空间不足,回滚数据。take事务流程:doTake:将数据拉取到临时缓冲区takeList,并将数据发送到指定目的地。doCommit:如果数据全部发送成功就清理临时缓冲区takeList。doRollback:数据发送过程中如果出现异常.

2021-10-08 10:08:09 180

原创 Druid数据库连接池 + Spring JDBC:JDBCTemplate让数据库操作得心应手

1.数据库连接池数据库连接池其实就是一个容器,这个容器中有很多个连接对象,当需要操作数据库的时候只需要在数据库连接池中获取一个连接对象即可。访问完数据库后,就会把连接对象归还给数据库连接池。并不会将连接对象给销毁而是归还给数据库连接池。当然这些操作都由底层进行封装,用户只需要调用方法即可。使用druid以及JDBCTemplate操作数据库的步骤:1.导入依赖: <!-- 阿里巴巴数据库连接池druid --> <dependency>

2021-09-23 23:35:22 727

原创 编程小技巧

位运算相关1.M << N <==> M*2n2.在进行右移(>>)时,在左边补位的时候正数补0 负数补13.eor & (~eor + 1) 可以得到eor这个数右边第一个为1的位异或的两条性质:1.任何数异或0等于本身 => n ^ 0 = n2.一个数异或自己等于0 => n ^ n = 0...

2021-09-14 09:20:27 64

原创 二叉树动态规划算法基础

动态规划理解需要使用到动态规划算法的问题都是原问题可以拆分为小问题,而大的问题是受小问题影响的。树型动态规划通用公式1.首先分析出要满足当前要求需要从左右孩子获取到说明信息。2.将需要用到的信息进行封装(如果只有单条数据就不用封装了)3.编写递归函数 函数的返回值就是2中封装的信息体3.1在递归函数中首先写出最小问题的信息体并返回3.2从左右子树获取它们的信息体3.3通过左右子树获得的信息体来推算出自己的信息体并将其返回即可题1:判断二叉树是否是满二叉树分析:1.

2021-09-13 23:37:32 354

原创 ERROR server.datanode.DataNode: BlockSender.sendChunks() exception问题解决

增加yarn-site-xml的配置<!-- 每个容器请求的最小内存资源(以MB为单位)。--><property> <name>yarn.scheduler.minimum-allocation-mb</name> <value>512</value></property><!-- 每个容器请求的最大内存资源(以MB为单位)。--><property> <name>y

2021-09-13 15:57:52 1454

原创 二叉树的前中后序非递归实现:

非递归的实现需要用到栈结构1.前序遍历:分析:前序遍历顺序为 根 -> 左 -> 右通过先入栈根节点再入栈其右孩子然后在入栈其左孩子就可以控制输出顺序为根 -> 左 -> 右首先根能排在最前面是因为根出栈打印完才将其右左孩子依次入栈,这就保证了根节点优先于右左孩子输出,二之所以要先入栈右孩子再入栈左孩子正是利用了栈结构的先进后出的特性。由此可知任何一个父节点先于左孩子输出 左孩子先于右孩子输出而这满足了先序遍历的定义:对于每一颗子树满足输出顺序为根 -&gt...

2021-09-13 10:16:12 94

原创 MapReduce框架 当javaBean作为key时 自定义分组规则一定要将排序字段作为分组的字段 否则分组可能会失效。

以手机流量统计案例举例分析:原始文件格式:手机号(phone): 上行流量(upFlow) 下行流量(downFlow) 总流量(sumFlow)13865424521 100 100 20013548796531 200 ...

2021-09-12 19:51:30 197

空空如也

空空如也

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

TA关注的人

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