- 博客(370)
- 资源 (52)
- 收藏
- 关注
原创 Nacos的安装和部署
接下来的时间,我会将Nacos的安装部署,以及在微服务中将其作为配置中心,注册中心,以及它的高级应用会一一为大家分享,今天为大家分享的是Nacos的安装和部署,以windows为例。
2023-06-20 19:26:00 3818
原创 Lombok你不知道的用法
Lombok是大家经常用的一款工具,它可以帮我们减少很多重复代码的书写,但是我们对它的使用,可能更多局限于实体类的编写,比如说通过@Data注解实现减少getter/setter/toString等方法的编写,其实它还有更多的注解功能,让我们一起来了解Lombok更多的注解吧!
2023-06-20 19:25:26 131
原创 架构设计我们要注意什么?
这几天我正在做一个新项目的架构设计,关于动态流程引擎平台的搭建,涉及到了系统架构的设计,里面涉及了方方面面,所以就想着结合自己的实际经验,遇到的问题,以及自己的理解,为大家做一个简单的分享。我今天主要从这么几个方面来为大家说一下。
2023-06-20 19:23:42 748
原创 让我们彻底了解Maven(二)--- Maven私服的搭建
Name:仓库的名字;Type:仓库的类型;Format:仓库的格式;Status:仓库的状态;URL:仓库的网络地址。仓库总共分为四种类型,如下:注意的是,本地的Maven需要配置私服地址,当项目需要的依赖,在本地仓库没有,就会去到相应的宿主/远程仓库拉取;如果宿主仓库也没有,就会根据配置的代理仓库地址,去到中央仓库拉取。
2023-06-08 05:54:00 2864
原创 让我们彻底了解Maven(一)--- 基础和进阶
Maven大家都很熟悉,但是我们很多人,对它其实都是似乎很熟,但是又好像不熟悉的感觉,包括我,今天咱们就一起来彻底了解Maven的所有功能,我们从入门,到原理剖析,再到实践操作,最后是私服的搭建以及配置,整体并彻底了解一下Maven。
2023-06-07 05:34:13 434
原创 《彻底掌握索引》—— 要点问题(3)
这时候我们会感觉奇怪,idx_name_age(name,age)是联合索引,为什么选出包含“小”字后,不再顺便看下年龄age再回表呢,所以在MySQL 5.6就引入了索引下推优化,可以在索引遍历过程中,对索引中包含的字段先做判断,直接过滤掉不满足条件的记录,减少回表次数。如果是Mysql5.6之前,在idx_name_age索引树,找出所有名字第一个字是“小”的人,拿到它们的主键id,然后回表找出数据行,再去对比年龄和性别等其他字段。对于InnoDB表,此数字是估计值,并非一定是个准确值。
2023-03-15 16:00:30 357 1
原创 《彻底掌握索引》—— 要点问题(2)
当查询的数据在索引树中,找不到的时候,需要回到主键索引树中去获取,这个过程叫做回表。回表查询可以理解为普通索引的查询,先定位主键值,再定位行记录,它的性能较扫一遍索引树更低。主键索引的叶子结点存储的是一行完整的数据。非主键索引的叶子结点存储的则是主键值。叶子结点不包含行记录的全部数据;非主键的叶子结点中,除了用来排序的key还包含一个bookmark;该书签存储了聚集索引的key。所以,当我们需要查询的时候:如果是通过主键索引来查询数据,例如。
2023-03-15 14:20:55 314
原创 《彻底掌握索引》—— 要点问题(1)
B+树的优点:它每个节点可以存储更多的数据,树的高度会随之降低,读取磁盘的次数就会降低(和二叉树,平衡二叉树的区别)。它的非叶子节点上存储的都是键值数据,而非表数据,这样就会存储更多的键值,相对应的树的叶子节点就会更多,树就变得会矮胖,这样对磁盘的IO就会再次减少(和B树的区别)。B+树的所有数据都在叶子节点上存储,并且数据是按照顺序排列,链表连接,这样它的查询就会变得异常简单。当查询的数据在索引树中,找不到的时候,需要回到主键索引树中去获取,这个过程叫做回表。使用的查询SQL。
2023-03-13 17:07:39 244
原创 Spark学习(8)-SparkSQL的运行流程,Spark On Hive
将Filter这种可以减少数据集的操作下推,放在Scan的位置,这样可以减少操作时候的数据量。RDD的运行会完全按照开发者的代码执行, 如果开发者水平有限,RDD的执行效率也会受到影响。当使用ThriftServer后,相当于是一个持续性的Spark On Hive集成模式,它提供10000端口,持续对外提供服务,外部可以通过这个端口连接上来,写sql,让Spark运行。上面的过程生成的AST其实最终没有办法直接运行,AST叫做逻辑计划,结束后需要生成物理计划,从而生成RDD来运行。
2023-01-07 09:04:18 2695
原创 Spark学习(7)-SparkSQL函数定义
目前在SparkSQL中,仅仅支持UDF和UDAF函数,python仅支持UDF。注册的UDF可以用于DSL和SQL,返回值用于DSL风格,传参内的名字用于SQL风格。udf对象 = sparksession . udf . register(参数 1 ,参数 2 ,参数 3 )参数1:UDF名称,可用于SQL风格参数2:被注册成UDF的方法名参数3:声明UDF的返回值类型udf对象: 返回值对象,是一个UDF对象,可用于DSL风格仅能用于DSL风格。
2022-11-29 18:31:57 1489
原创 Spark学习(6)-Spark SQL
在RDD阶段,程序的执行入口对象是:。在Spark 2.0后,推出了对象,作为Spark编码的统一入口对象。用于SparkSQL编程作为入口对象。用于SparkCore编程,可以通过SparkSession对象中获取到。所以,后续执行环境入口对象,统一变更为SparkSession对象。2.4 SparkSession对象。
2022-11-28 18:58:17 3103
原创 Spark学习(5)-Spark Core之RDD
RDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是Spark中最基本的数据抽象,代表一个不可变、可分区、里面的元素可并行计算的集合。一个数据集合,用于存放数据的。Distributed:RDD中的数据是分布式存储的,可用于分布式计算。Resilient:RDD中的数据可以存储在内存中或者磁盘中。RDD(Resilient Distributed Dataset)弹性分布式数据集,是Spark中最基本的数据抽象,
2022-11-22 06:06:28 1080
原创 Python语法(3)- 面向对象
class 类名称:类属性类行为对象 = 类名称()在类中定义成员方法和定义函数基本一致,但仍有细微区别:可以看到,在方法定义的参数列表中,有一个:self关键字self关键字是成员方法定义的时候,必须填写的。它用来表示类对象自身的意思当我们使用类对象调用方法的是,self会自动被python传入在方法内部,想要访问类的成员变量,必须使用self注意事项self关键字,尽管在参数列表中,但是传参的时候可以忽略它。
2022-11-12 13:27:59 806
原创 Python语法(2)- 数据容器,函数进阶,匿名函数
基本语法:列表内的每一个数据,称之为元素以 [] 作为标识列表内每一个元素之间用, 逗号隔开注意:列表可以一次存储多个数据,且可以为不同的数据类型,支持嵌套。元组定义:定义元组使用小括号,且使用逗号隔开各个数据,数据可以是不同的数据类型。语法如下:注意:元组只有一个数据,这个数据后面要添加逗号。是否支持下标索引支持:列表、元组、字符串 - 序列类型不支持:集合、字典 - 非序列类型是否支持重复元素:支持:列表、元组、字符串 - 序列类型。
2022-10-13 16:54:32 1016 1
原创 Python语法(1)- 基础语法,判断语句,循环语句,函数
单引号定义法:双引号定义法:三引号定义法:三引号定义法,和多行注释的写法一样,同样支持换行操作。使用变量接收它,它就是字符串,不使用变量接收它,就可以作为多行注释使用。引号嵌套单引号定义法,可以内含双引号双引号定义法,可以内含单引号可以使用转移字符(\)来将引号解除效用,变成普通字符串def 函数名(传入参数) : 函数体 return 返回值。
2022-10-12 14:19:16 2917 2
原创 利用POI对Word的一些操作(替换段落内容,替换表格里面的变量,页脚插入图片,页眉的关键字替换,多个Word合并)
替换段落内容,替换表格里面的变量,页脚插入图片,页眉的关键字替换,多个Word合并。
2022-09-21 15:17:54 1572
原创 Spark学习(3)-Spark环境搭建-Standalone
Standalone模式是Spark自带的一种集群模式,不同于前面本地模式启动多个进程来模拟集群的环境,Standalone模式是真实地在多个机器之间搭建Spark集群的环境,完全可以利用该模式搭建多机器集群,用于实际的大数据处理。这个文件的修改不是必须的,为什么修改为WARN.因为Spark是个话痨,会疯狂输出日志,设置级别为WARN只输出警告和错误日志,不要输出一堆废话。注意,上面的配置的路径要根据你自己机器实际的路径来写。进入到spark的配置文件目录中,同时不要忘记都创建。...
2022-07-27 20:07:30 1241
原创 Spark学习(2)-Spark环境搭建-Local
注意Local模式只能运行一个Spark程序,如果执行多个Spark程序,那就是由多个相互独立的Local进程在执行。打开监控页面后,可以发现在程序内仅有一个Driver,因为我们是Local模式,Driver即管理又干活。的Python解释器环境,在这里面可以写普通python代码,以及spark代码。不同的是,这个解释器环境运行的不是python代码,而是scala程序代码。Spark程序在运行的时候,会绑定到机器的。在这个环境内,可以运行spark代码。...
2022-07-27 13:39:20 577
原创 Spark学习(1)-Spark基础
定义ApacheSpark是用于大规模数据(large-scaladata)处理的统一(unified)分析引擎。Spark是一款分布式内存计算的统一分析引擎。其特点就是对任意类型的数据进行自定义计算。结构化、半结构化、非结构化等各种类型的数据结构,同时也支持使用Python、Java、Scala、R以及SQL语言去开发应用程序计算数据。Spark的适用面非常广泛,所以,被称之为统一的(适用面广)的分析引擎(数据处理)。...
2022-07-15 13:42:31 1308
原创 Python学习(6)-基础语法(异常和面向对象)
异常捕捉可以使用 try/except 语句。一个 try 语句可能包含多个except子句,分别来处理不同的特定的异常。最多只有一个分支会被执行。处理程序将只针对对应的 try 子句中的异常进行处理,而不是其他的 try 的处理程序中的异常。一个except子句可以同时处理多个异常,这些异常将被放在一个括号里成为一个元组,例如:最后一个except子句可以忽略异常的名称,它将被当作通配符使用。你可以使用这种方法打印一个错误信息,然后再次把异常抛出。1.2 try/except…else 语句还有一
2022-07-02 13:59:40 233
原创 Python学习(5)-基础语法(输入和输出)
Python两种输出值的方式: 表达式语句和 print() 函数。第三种方式是使用文件对象的 write() 方法,标准输出文件可以用 引用。如果你希望输出的形式更加多样,可以使用 函数来格式化输出值。如果你希望将输出的值转成字符串,可以使用 repr() 或 str() 函数来实现。注意:在第一个例子中, 每列间的空格由 print() 添加。str.format() 的基本使用如下:返回值:括号及其里面的字符 (称作格式化字段) 将会被 format() 中的参数替换。在括号中的数字
2022-07-01 16:42:55 506
原创 Python学习(4)-基础语法(模块)
模块是一个包含所有你定义的函数和变量的文件,其后缀名是.py。模块可以被别的程序引入,以使用该模块中的函数等功能。这也是使用 python 标准库的方法。案例:在pycharm中配置自动导入,然后输入类名,直接点击出方法即可引入,和javaIDEA一致。想使用 Python 源文件,只需在另一个源文件里执行 import 语句,语法如下:当解释器遇到 import 语句,如果模块在当前的搜索路径就会被导入。搜索路径是一个解释器会先进行搜索的所有目录的列表。注意:一个模块只会被导入一次,不管你执行
2022-07-01 12:03:16 125
原创 Python学习(3)-基础语法(字典,函数)
字典是另一种可变容器模型,且可存储任意类型对象。字典的每个键值 key=>value 对用冒号 : 分割,每个对之间用逗号(,)分割,整个字典包括在花括号 {} 中 ,格式如下所示:键必须是唯一的,但值则不必。值可以取任何数据类型,但键必须是不可变的,如字符串,数字。举例:1.2 创建空字典使用大括号 { } 创建空字典:使用内建函数 dict() 创建字典:1.3 访问字典里的值把相应的键放入到方括号中,如下实例:1.4 修改字典向字典添加新内容的方法是增加新的键/值对,修改或删除
2022-06-30 13:46:06 692
原创 Python学习(2)-基础语法(字符串,列表,元组)
1.3 下标1.8 字符串连接 join()常见的方法列表推导式提供了从序列创建列表的简单途径。通常应用程序将一些操作应用于某个序列的每个元素,用其获得的结果作为生成新列表的元素,或者根据确定的判定条件创建子序列。每个列表推导式都在 for 之后跟一个表达式,然后有零到多个 for 或 if 子句。返回结果是一个根据表达从其后的 for 和 if 上下文环境中生成出来的列表。如果希望表达式推导出一个元组,就必须使用括号。可以用 if 子句作为过滤器以下是一些关于循环和其它技巧的演示:
2022-06-16 17:59:13 98
原创 Python学习(1)-基础语法(数据类型和运算)
4.1 ⽐较运算符⽐较运算符的结果是 bool 类型, 即 True,或者是 False。4.2 逻辑运算符逻辑运算符可以连接连个表达式, 两个表达式共同的结果决定最终的结果是 True,还是 False。5 if 判断语句5.1 if6 三⽬运算7 循环7.1 while循环7.2 for 循环遍历Python靠缩进来看代码的作用域。...
2022-06-16 16:28:49 90
原创 Hadoop学习(17)-- Flume 企业开发案例
1. 复制和多路复用1. 1 案例需求使用 Flume-1 监控文件变动,Flume-1 将变动内容传递给 Flume-2,Flume-2 负责存储到 HDFS。同时 Flume-1 将变动内容传递给 Flume-3,Flume-3 负责输出到 Local FileSystem。1.2 需求分析单数据源多出口案例(选择器)1.3 实现步骤准备工作job 目录下创建 group1 文件夹,datas/目录下创建 flume3 文件夹创建 flume-file-flume.conf
2022-05-13 17:08:15 293
原创 Hadoop学习(15)-- Flume 入门案例
1. 监控端口数据官方案例案例需求:首先,Flume监控本机44444端口,然后通过telnet工具向本机44444端口发送消息,最后Flume将监听的数据实时显示在控制台。1.1 实现步骤安装telnet工具判断44444端口是否被占用sudo netstat -tunlp | grep 44444创建Flume Agent配置文件flume-telnet-logger.conf在flume目录下创建job文件夹并进入job文件夹。mkdir jobcd job/在job文件夹下
2022-05-05 20:20:30 2425
原创 Hadoop学习(14)-- Flume介绍和安装
Flume定义Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统。Flume基于流式架构,灵活简单。Flume组成架构2.1 AgentAgent是一个JVM进程,它以事件的形式将数据从源头送至目的,是Flume数据传输的基本单元。Agent主要有3个部分组成,Source、Channel、Sink。2.2 SourceSource是负责接收数据到Flume Agent的组件。Source组件可以处理各种类型、各种格式的日志数据,包括avro
2022-04-28 16:22:16 164
原创 Hadoop学习(12)-- Hadoop生态综合案例-陌陌聊天数据分析
1 陌陌聊天数据分析案例需求1.1 目标基于Hadoop和Hive实现聊天数据统计分析,构建聊天数据分析报表。1.2 需求统计今日总消息量统计今日每小时消息量、发送和接收用户数统计今日各地区发送消息数据量统计今日发送消息和接收消息的用户数统计今日发送消息最多的Top10用户统计今日接收消息最多的Top10用户统计发送人的手机型号分布情况统计发送人的设备操作系统分布情况1.3 数据内容数据大小:两个文件共14万条数据列分隔符:制表符 \t数据字典及样例数据2 基于H
2022-04-18 08:49:58 3877 9
原创 Hadoop学习(11)-- Apache Hive DML语句与函数使用
1 Hive SQL DML语法之加载数据1.1 Hive SQL-DML-Load加载数据1.1.1 背景在Hive中建表成功之后,就会在HDFS上创建一个与之对应的文件夹,且文件夹名字就是表名;文件夹父路径是由参数hive.metastore.warehouse.dir控制,默认值是/user/hive/warehouse;不管路径在哪里,只有把数据文件移动到对应的表文件夹下面,Hive才能映射解析成功;最原始暴力的方式就是使用hadoop fs –put|-mv等方式直接将数据移动到表
2022-04-18 08:09:20 498
原创 Hadoop学习(10)-- Hive SQL语言:DDL建库、建表
Hive SQL之数据库与建库Hive数据模型总览SQL中DDL语法的作用数据定义语言 (Data Definition Language, DDL),是SQL语言集中对数据库内部的对象结构进行创建,删除,修改等的操作语言,这些数据库对象包括database、table等。DDL核心语法由CREATE、ALTER与DROP三个所组成。DDL并不涉及表内部数据的操作。数据库database在Hive中,默认的数据库叫做default,存储数据位置位于HDFS的/user/hive/ware
2022-04-17 23:24:54 1168
原创 数据结构学习(1)- 绪论
1.绪论1.1 数据结构的基本概念数据元素是数据的基本单位,通常作为一个整体来考虑。一个数元素可由若干数据项组成,数据项是构成数据元素的不可分割的最小单位。数据结构是相互之间存在一种或多种特定关系的数据元素的集合。数据对象是具有相同性质的数据元素的集合,是数据的一个子集。数据的逻辑结构集合,线性结构,树形结构,图状结构(网状结构)。数据的存储结构顺序存储:逻辑上相邻的元素存储在物理位置相邻的存储单元上。链式存储:逻辑上相邻的元素元素在物理地址上也可以不相邻,采用指针实现索引存储:存储
2022-03-22 11:05:36 411
原创 C语言核心点(2)
字符串在 C 语言中,字符串实际上是使用空字符 \0 结尾的一维字符数组。因此,\0 是用于标记字符串的结束。空字符(Null character)又称结束符,缩写 NUL,是一个数值为 0 的控制字符,\0 是转义字符,意思是告诉编译器,这不是字符 0,而是空字符。下面的声明和初始化创建了一个 RUNOOB 字符串。由于在数组的末尾存储了空字符 \0,所以字符数组的大小比单词 RUNOOB 的字符数多一个。char site[7] = {'R', 'U', 'N', 'O', 'O', 'B',
2022-03-07 18:55:11 255
原创 C语言核心点(1)
循环和数组的使用#include<stdio.h> int main(){ int n[10]; int i; int j; for(i=0;i<10;i++){ n[i]=i+100; } //获取数组 sizeof(n)/sizeof(n[0]) //循环变量定义在外面定义 for(j=0;j<sizeof(n)/sizeof(n[0]);j++){ printf("打印数
2022-03-07 15:00:46 884
原创 Hadoop学习(9)-- Apache Hive安装部署
Apache Hive元数据什么是元数据元数据(Metadata),又称中介数据、中继数据,为描述数据的数据(data about data),主要是描述数据属性(property)的信息,用来支持如指示存储位置、历史数据、资源查找、文件记录等功能。Hive MetadataHive Metadata即Hive的元数据。包含用Hive创建的database、table、表的位置、类型、属性,字段顺序类型等元信息。元数据存储在关系型数据库中。如hive内置的Derby、或者第三方如MySQL等。
2022-02-25 10:35:26 3032
原创 Hadoop学习(8)-- Apache Hive入门
Apache Hive概述什么是HiveApache Hive是一款建立在Hadoop之上的开源数据仓库系统,可以将存储在Hadoop文件中的结构化、半结构化数据文件映射为一张数据库表,基于表提供了一种类似SQL的查询模型,称为Hive查询语言(HQL),用于访问和分析存储在Hadoop文件中的大型数据集。Hive核心是将HQL转换为MapReduce程序,然后将程序提交到Hadoop群集执行。为什么使用Hive使用Hadoop MapReduce直接处理数据所面临的问题,人员学习成本太高
2022-02-23 15:12:04 3539
原创 Hadoop学习(7)-- Hadoop YARN
Hadoop YARN介绍YARN简介Apache Hadoop YARN (Yet Another Resource Negotiator,另一种资源协调者)是一种新的Hadoop资源管理器。YARN是一个通用资源管理系统和调度平台,可为上层应用提供统一的资源管理和调度。它的引入为集群在利用率、资源统一管理和数据共享等方面带来了巨大好处。YARN功能说明资源管理系统:集群的硬件资源,和程序运行相关,比如内存、CPU等。调度平台:多个程序同时申请计算资源如何分配,调度的规则(算法)。
2022-02-21 17:26:58 1194
原创 Hadoop学习(6)-- Hadoop MapReduce
MapReduce设计构思如何对付大数据处理场景对相互间不具有计算依赖关系的大数据计算任务,实现并行最自然的办法就是采取MapReduce分而治之的策略。首先Map阶段进行拆分,把大数据拆分成若干份小数据,多个程序同时并行计算产生中间结果;然后是Reduce聚合阶段,通过程序对并行的结果进行最终的汇总计算,得出最终的结果。不可拆分的计算任务或相互间有依赖关系的数据无法进行并行计算!构建抽象编程模型MapReduce借鉴了函数式语言中的思想,用Map和Reduce两个函数提供了高层的并行编
2022-02-18 17:21:00 1000
我整理的Spring Security OAuth2.0认证授权资料 手把手教会你如何使用OAuth2.0认证授权原理以及搭建
2024-08-10
微信小程序项目代码+笔记+资料,这是一个完整的项目最新教学,资料和笔记 让你彻底掌握微信小程序的开发
2024-08-10
Kubernetes指南+Kubernetes安装全流程,让你彻底学会Kubernetes
2024-08-10
Java面试虚拟机篇+框架篇,这是我总结出来的Java面试中虚拟机和框架方面的面试题,非常全面,希望大家喜欢
2024-08-10
Java面试基础篇+并发篇,这是我总结出来非常全面的Java面试的基础篇和并发编程方面的面试题
2024-08-10
这是我总结的GoLang学习笔记,是结合工作中的实战,知识点非常全面,非常适合大家学习
2024-08-10
Prometheus监控软件V1,V2版本的学习以及安装全过程,手把手教学步骤
2024-08-10
小程序基础代码.zip
2024-02-25
简历模板,总共14种,均为word版本
2023-07-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人