自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(64)
  • 资源 (2)
  • 收藏
  • 关注

原创 作为项目经理,如何做好项目进度管理

项目经理必看!软考、参加大创的同学们也可以来学习。如何对项目的进度清晰把控。

2023-01-24 14:06:54 1889 1

原创 物联网到底是什么?

物联网主要解决物品与物品、人与物品、人与人的互联

2023-01-23 11:36:40 349

原创 Redis学习

一、引言早期我们解决数据量大、数据索引、访问量问题的时候,用到了:Memcached(缓存)+ MySQL +垂直拆分(读写分离)比如我们一台MySQL服务器不够用,就开启三台(nginx可保证三台服务器数据一致),其中一台可用来写数据,写好之后同步到其他两台,读取时就在这两台读取(读写分离)。多次执行同一个sql会降低效率,同时为了减轻数据库的压力,所以引入缓存。之后随着发展,有了以下的方法:(本质:读、写)分...

2021-10-12 10:27:55 307

原创 ArrayList底层代码

1、首先我们创建一个ArrayList数组ArrayList a=new ArrayList();2、点到底层后,发现我们需要的属性:transient Object[] elementData; // non-private to simplify nested class access这是一个瞬态对象的元素数据、非私有以简化嵌套类访问private static final Object[] DEFAULTCAPACITY_EMPTY_ELEMENTDATA = {}

2021-09-09 12:12:46 258

原创 数据可视化——大数据报表

1、数据可视化项目所需要的技术:servlet / mysql / html / css / js / jquery / echarts2、需要引入如下环境依赖:后端:mysql-connector-javaxxx.jarfastjson-xxx.jarlombok.jar——构建JavaBean的神器前端:jquery-xxx.jsecharts-xxx.jsmaven: <!-- mysql的驱动jar--> ...

2021-09-07 10:16:11 1432

原创 数据导出/迁移(Sqoop技术)

数据导出/迁移的概念在做数据导出之前,我们看一下已经完成的操作:数据分析阶段将指标统计完成,也将统计完成的指标放到Hive数据表中,并且指标数据存储到HDFS分布式文件存储系统。指标统计完成之后,我们最终是想将我们的指标数据做成可视化大屏进行展示,Hive中的数据无法、很难直接连接到JavaWeb或者EE技术直接进行数据展示。 因此我们需要将Hive中统计出来的数据指标表迁移到我们的MySQL数据库中,由MySQL数据库连接web技术进行可视化展示。...

2021-09-03 22:04:41 2189 4

原创 数据清洗/数据预处理(MR程序)

数据质量的好与坏直接关系到我们最终的数据分析结果的正确与否。如果想要保证数据的高质量,我们需要对数据进行清洗,清洗有两个作用:1、将数据质量不好的数据清洗掉,过滤掉不合法的数据2、将原始数据中的某些信息转换成我们容易操作的字段或者模型信息,将数据中的某些数据的格式进行转换,以便我们后期处理。数据预处理/数据清洗(本案例是分析用户使用网站产生的点击流)日志信息:120.191.181.178 - - 2018-02-18 20:24:39 "POST https:...

2021-09-02 12:10:05 2479 3

原创 离线大数据项目流程(点击流日志行为分析)

2021-09-01 22:04:58 236

原创 Hive的连接查询——Join查询

Join语句主要做多表关联查询:当我们需要的数据来自多张表,多张表之间还有连接关系,我们就可以使用连接查询获取我们相关的信息。 Hive中连接查询和sql中的join连接几乎一致,共有四种:内连接、左外连接、右外连接、满外连接。注意在MySQL中支持四种连接的语法,但是不支持满外连接的操作(满外连接的语法是支持的)。Hive都支持。join语句的一般格式:select 查询字段from tableA[inner|left|right...

2021-08-31 16:29:51 2999

原创 Flume框架的高级使用

今天给大家介绍一下Flume的多source channel sink和多Flume操作案例。如果我们想要实现将多个数据源的数据采集到同一个地方,两种实现思路:1、用一个Flume进程,但是在一个Flume进程当中有两个source、两个channel、两个sink2、用三个Flume进程,其中前两个Flume进程分别采集端口和文件的数据,将数据发送给第三个flume,由第三个flume同一将数据采集到HDFS一、多source、channel、sink案例我们知道f...

2021-08-30 17:56:01 310 2

原创 Hive中的自定义hive函数

我们一般只自定义UDF和UDTF函数。

2021-08-28 21:38:51 582 3

原创 Flume的使用

Flume软件的使用是需要我们通过配置文件完成的,编写Flume采集数据的脚本文件,脚本文件我们一般叫xxx.conf这样的文件,这个脚本文件中配置的是flume采集框架中的source连接的数据源、sink连接的目的地,以及source和channel\sink如何连接,配置文件编写完成,然后使用Flume相关命令启动即可实现数据采集。其具体使用可参考官网http://flume.apache.org/documentation.html,选择Flume Develo...

2021-08-28 13:54:15 1533 4

原创 日志采集框架Flume技术

一、Flume简介(1) Flume提供一个分布式的,可靠的,对大数据量的日志进行高效收集、聚集、移动的服务,Flume只能在Unix环境下运行。(2)Flume基于流式架构,容错性强,也很灵活简单。(3)Flume结合Kafka用来实时进行数据收集,Spark、Storm用来实时处理数据,impala用来实时查询。Flume详解官网:flume.apache.orgFlume is a distributed, reliable, and available serv...

2021-08-27 23:37:26 583 3

原创 开发一个大数据项目的架构与流程

如果我们想做一个数据分析项目,我们就应该清楚数据的处理流程。我们大致可以分为:数据采集——数据存储——数据清洗——数据分析——数据可视化和数据挖掘、二次分析在以上流程处理完成之后,会进入调度阶段:将数据采集、清洗、分析、导出、可视化制作成一个 调度任务,一键就可运行所有阶段。所用技术:azkaban技术...

2021-08-27 21:38:19 805 1

原创 数据仓库Hive中的内置函数

函数是hive封装好的一些功能性代码,可以帮助我们快速完成相应的业务逻辑。一、Hive的自带函数1、我们可以先使用命令来查看系统自带的函数:hive>show functions;2、显示自带函数的用法:hive>desc function 函数名;例如:desc function sum;如果我们想了解详细的函数用法,就可以使用如下命令:hive> desc function extended sum;二、Hive函数的分类...

2021-08-26 21:44:40 790 4

原创 数据仓库Hive的分区表与分桶表

一、分区表分区表实际上就是对应一个HDFS文件系统上的独立的文件夹,该文件夹下是该分区所有的数据文件。Hive中的分区就是分目录,把一个大的数据集根据业务需要分割成小的数据集。在查询时通过WHERE子句中的表达式选择查询所需要的指定的分区,这样的查询效率会提高很多。所谓的分区表其实和表中的字段没什么区别,包括其使用,唯一的区别就是在于向hdfs写表数据的时候,会以分区值先在表的hdfs目录下创建一个分区目录,再添加数据。我们举一个具体的案例来讲解一下:...

2021-08-26 18:43:46 2278 4

转载 Leetcode算法题——完美数

题目描述对于一个 正整数,如果它和除了它自身以外的所有 正因子 之和相等,我们称它为 「完美数」。给定一个 整数 n, 如果是完美数,返回 true,否则返回 false示例 1:输入:28输出:True解释:28 = 1 + 2 + 4 + 7 + 141, 2, 4, 7, 和 14 是 28 的所有正因子。示例 2:输入:num = 6输出:true示例 3:输入:num = 496输出:true示例 4:输入:num = 8128输出:tru.

2021-08-23 15:07:53 610

原创 zookeeper的监听器原理

客户端注册监听它关心的目录节点,当目录节点发生变化(数据改变、节点删除、子目 录节点增加删除)时,ZooKeeper 会通知客户端。监听机制保证 ZooKeeper 保存的任何的数据的任何改变都能快速的响应到监听了该节点的应用程序。zookeeper只负责通知,具体做不做还要看客户端1、监听原理详解(1)首先要有一个main()线程(2)在main线程中创建Zookeeper客户端,这时就会创建两个线程,一个负责网络连接通信(connet),一个负责监听(...

2021-08-22 17:12:35 2962 4

原创 zookeeper的命令行语法以及节点类型

命令基本语法 功能描述 help 显示所有操作命令 ls path [watch] 使用ls命令来查看当前znode中所包含的内容 ls -s path [watch] 查看当前节点信息 create 普通创建 -s 含有序列 -e 临时(重启或者超时消失) get path [watch] 获得节点的值 set 设置节点的具体值 stat 查看节点状态 dele...

2021-08-21 20:06:21 960 3

原创 zookeeper的选举机制

zookeeper不仅可以在大数据中使用,在java中用的更多(微服务)。半数机制(Paxos 协议):集群中半数以上机器存活,集群可用。所以zookeeper适合装在奇数台机器上。 在zookeeper集群上,选举过程中只要有超过半数的机器认同了leader,那么他就是leader。Zookeeper虽然在配置文件中并没有指定master和slave。但是,zookeeper工作时,是有一个节点为leader,其他则为follower,Lead...

2021-08-21 18:28:40 453 1

原创 Hive中的数据类型

一、基本数据类型 数据类型 长度 例子 TINYINT 1byte有符号整数 20 SMALINT 2byte有符号整数 20 INT 4byte有符号整数 20 BIGINT 8byte有符号整数 2

2021-08-20 13:55:31 595 3

原创 HDFS的HA高可用机制

不管是伪分布式搭建,还是完全分布式搭建的集群,都会存在单点故障的问题。如何解决单点故障?那就是HA高可用一、概述1)所谓HA(highavailable),即高可用(7*24小时不中断服务)。2)实现高可用最关键的策略是消除单点故障。HA严格来说应该分成各个组件的HA机制:HDFS的HA和YARN的HA。3)Hadoop2.0之前,在HDFS集群中NameNode存在单点故障(SPOF)。4)NameNode主要在以下两个方面影响HDFS集群...

2021-08-18 11:34:12 797 4

转载 Hadoop的企业级优化

在想办法对Hadoop进行优化时,我们应该从Hadoop存在的一些问题来着手。一、Hadoop的一些问题MapReduce程序效率的瓶颈:1、计算机性能 包括CPU、内存、磁盘健康、网络2、I/O操作优化(1)数据倾斜(2)Map和Reduce数设置不合理(3)Map运行时间太长,导致Reduce等待过久(4)小文件过多(5)大量的不可分块的超大文件(6)Spill次数过多(7)Merge次数过多二、MapReduce的优化方...

2021-08-16 22:09:33 93

原创 MapReduce中的Shuffle机制

一、概念Mapreduce确保每个reducer的输入都是按键排序的。系统执行排序的过程(Map方法之后,Reduce方法之前的数据处理过程)称之为Shuffle。二、Shuffle包括哪些阶段Shuffle包括MapTask工作中的Collect收集阶段、Spill阶段、Combine(merge)阶段以及ReduceTask工作中的Copy阶段、Merge阶段、Sort阶段。Shuffle是从map()函数执行结束后开始的,首先将m...

2021-08-15 20:14:27 460

原创 MapReduce中的计算器以及数据清理

一、计数器1、概述 计数器是MR程序在运行过程中记录一些数据信息,比如 Map阶段输入了多少数据 Map阶段输出了多少数据,Combiner输入了多少数据 Combiner输出多少数据。Hadoop为每个作业维护若干内置计数器,以描述多项指标。例如,某些计数器记录已处理的字节数和记录数,使用户可监控已处理的输入数据量和已产生的输出数据量。2、计数器的使用:采用计数器组、计数器名称的方式统计context.getCounter("gro...

2021-08-15 12:00:23 386

原创 MapReduce中的压缩和解压缩

在MR中,压缩是个可选项,是为了减少IO流次数一、概述 压缩技术能够有效减少底层存储系统(HDFS)读写字节数。压缩提高了网络带宽和磁盘空间的效率。在运行MR程序时,I/O操作、网络数据传输、 Shuffle和Merge要花大量的时间,尤其是数据规模很大和工作负载密集的情况下,因此,使用数据压缩显得非常重要。 鉴于磁盘I/O和网络带宽是Hadoop的宝贵资源,数据压缩对于节省资源、最小化磁盘I/O和网络传输非常有帮助。可以在任意MapReduce阶段启用压缩。不过,尽管压缩与解压操作...

2021-08-14 17:23:39 819 1

原创 在windows系统上安装Hadoop

Hadoop都是在Linux上安装、配置、操作的,那么Hadoop可以在Windows上安装、运行吗?答:我们知道Hadoop官网只提供了Hadoop的tar.gz安装包,显然是属于Linux系统的。但其实Windows系统也可以安装Hadoop,如果想在Windows上安装,我们将linux上的tar.gz这个安装包解压缩一下就可以了。(使用软件7-zip)一、Windows上安装hadoop步骤第一步 将linux上的tar.gz安装包解压缩需要解压缩两...

2021-08-14 14:20:58 16126 5

原创 大数据技术Hadoop——YARN

YARN是Hadoop中的分布式资源调度系统,在Hadoop2.x版本才引入的概念。一、概述Yarn是一个资源调度平台,负责为运算程序提供服务器运算资源,相当于一个分布式(不止管自己计算机的调度,还可以管理其他的计算机调度问题)的操作系统平台,而mapreduce等运算程序则相当于运行于操作系统之上的应用程序。二、YARN的基本架构YARN主要由ResourceManager、NodeManager、ApplicationMaster和Container等组件构成。...

2021-08-13 23:19:19 1071 4

原创 MapTask与ReduceTask工作机制!!!

MR的学习接近尾声了,今天我们学习一下两个简单的内容:MapTask与ReduceTask工作机制MapTask与ReduceTask工作流程合起来其实就是我们MR的工作流程。一、MapTask工作机制1、学习MapTask工作机制之前,我们先理解一下并行度决定机制maptask的并行度决定map阶段的任务处理并发度,进而影响到整个job的处理速度。那么,mapTask并行任务是否越多越好呢?MapTask并行度决定机制 一个job的map阶段MapTa...

2021-08-10 22:02:47 432

原创 MapReduce详细工作流程之Combiner合并

今天学习的Combiner合并在MapReduce中是可选项,默认情况下Combiner不会执行,它就像一个可插拔的小组件。Combiner合并相当于MR的一种优化策略一、概念1)Combiner是MR程序中Mapper和Reducer之外的一种组件2)Combiner组件的父类就是Reducer3)Ccombiner和reducer的区别在于运行的位置:Combiner是在每一个maptask所在的节点运行Reducer是接收全局所...

2021-08-09 22:38:48 657 1

原创 快速帮助我们去实现JavaBean对象的创建的技术——lombok

今天我们介绍一个开发Javabean(实体类也是一个JavaBean)对象的一个神器:Lombok一、lombok是什么?JavaBean:Java定义的可重复使用的组件,也就是类。一般Javabean符合如下特征:1、类中的属性必须是私有化的private修饰的(为了保证数据的安全性)2、必须提供公开的getter、setter方法去暴露属性3、必须具备一个无参构造器(公开的)4、提供toString和equals方法等(可选)实体类:实体类也是一种JavaBean对象...

2021-08-09 13:30:44 328

原创 MapReduce的运作详解之分区

分区的概念:Map阶段处理的数据,在向环形缓冲区写的时候 是以分区的方式写的一般情况下,MR程序分区数有多少 reduceTask数量就应该有多少 ,一个分区的数据一个reduceTask去处理,reduceTask处理完成之后都会生成一个结果文件...

2021-08-06 21:30:05 3698 2

原创 JAVA高级排序——希尔排序

为何称高级排序呢?是因为之前学习的基础排序,包括冒泡排序,选择排序还有插入排序,对他们在最坏情况下的时间复杂度做了分析,发现都是O(N^2),而平方阶通过我们之前学习算法分析我们知道,随着输入规模的增大,时间成本将急剧上 升,所以这些基本排序方法不能处理更大规模的问题,接下来我们学习一些高级的排序算法,争取降低算法的时间 复杂度最高阶次幂。希尔排序希尔排序是插入排序的一种,又称“缩小增量排序”,是插入排序算法的一种更高效的改进版本。学习插入排序的时候,我们会发现一...

2021-08-05 19:21:59 128

原创 学习JAVA必会的排序——插入排序

插入排序(Insertion sort)是一种简单直观且稳定的排序算法。插入排序的工作方式非常像人们排序一手扑克牌一样。开始时,我们的左手为空并且桌子上的牌面朝下。然后,我 们每次从桌子上拿走一张牌并将它插入左手中正确的位置。为了找到一张牌的正确位置,我们从右到左将它与已在 手中的每张牌进行比较,如下图所示:需求:排序前:{4,3,2,10,12,1,5,6}排序后:{1,2,3,4,5,6,10,12}排序原理: 1.把所有的元素分为两组,已经排序的和未排序的;2.找..

2021-08-04 23:31:30 198 1

原创 学习JAVA必会的排序——选择排序

选择排序是一种更加简单直观的排序方法。需求: 排序前:{4,6,8,7,9,2,10,1} 排序后:{1,2,4,5,7,8,9,10}一、排序原理:在序列中选择合适的元素放在合适的位置。1.每一次遍历的过程中,都假定第一个索引处的元素是最小值,和其他索引处的值依次进行比较,如果当前索引处 的值大于其他某个索引处的值,则假定其他某个索引出的值为最小值,最后可以找到最小值所在的索引2.交换第一个索引处和最小值所在的索引处的值也就是说,每次选...

2021-08-03 23:01:50 165

原创 Hadoop中的MapReduce——分布式离线计算框架

上次的文章中,我们使用Java代码实现了MapReduce,这次我们正式的来做MapReduce编程运行三个实例进程:分布式计算程序的时候 先分map后合reduce* MapTask----将计算程序分布的运行在多台电脑上 并且是并行运行 互相之前不干扰* ReduceTask----将不同电脑上map计算出来的结果汇总起来 也可以有个reduce 并且* 多个reduce之前是并行运行 互不干扰的*...

2021-08-03 22:01:26 976 2

原创 JAVAWEB中的HTTP协议

HTTP协议:超文本传输协议我们随便去一个网页中去看看HTTP协议包含些什么?可看出有Request、Response这两个东西,分别是请求和响应。请求:HTTP 协议中共定义了九种方法或者叫“动作”来表明对 Request-URI 指定的资源的不同操作方式,具体介绍如下:序号 方法 描述 1 GET 请求指定的页面信息,并返回实体主体。 2 HEAD 类似于 GET 请求,只不过返回的响应中没有具体的内容,用于获取报头 3 P.

2021-08-02 10:49:15 135 3

原创 学习JAVA必会的几个遍历——冒泡排序

学习遍历前,为了让我们的算法更具有通用性,我们先介绍一下Comparable接口。此接口强行对实现它的每个类的对象进行整体排序。这种排序被称为类的自然排序,类的 compareTo 方法被称为它的自然比较方法。int compareTo(T o):比较此对象与指定对象的顺序。如果该对象小于、等于或大于指定对象,则分别返回负整数、零或正整数一、冒泡排序冒泡排序(Bubble Sort),是一种计算机科学领域的较简单的排序算法。需求: 排序前:...

2021-08-01 20:39:02 388 1

原创 二叉树的各种遍历方法!(JAVA)

接着上次对二叉树的创建,获取,删除,添加这次我们做一下查找二叉树的最小的键和最大的键。一、查找二叉树中最小的键和最大的键在某些情况下,我们需要查找出树中存储所有元素的键的最小值,这里我们设计如下两个方法来完成:public Key min() 找出树中最小的键 private Node min(Node x) 找出指定树x中,最小键所在的结点 //找出整个树中最小的键 public Key min(){ return min(ro...

2021-08-01 15:58:08 2390

原创 数据结构——二叉树

回顾一下之前学习的数组和链表:数组拥有查询快,增删慢的特点;链表拥有增删快,查询慢的特点。现在我们利用树的特性:在数组查询快的基础上,利用树的特性,提高其增删的效率;在链表增删快的基础上利用树的特性提高其查询的速率。(本文图片来自黑马程序员)1.1 树的基本定义树是我们计算机中非常重要的一种数据结构,同时使用树这种数据结构,可以描述现实生活中的很多事物,例如家谱、单位的组织架构、等等。树是由n ( n>=1 )个有限结点组成一个具有层次关系...

2021-08-01 10:38:42 193 2

信息可视化——走近人类命运共同体.pptx

答辩PPT,也是项目总体介绍

2021-07-13

信息可视化项目归总文档.docx

这是本人大二参加大学生创新创业比赛作为负责人以新冠疫情为出发点,结合Echarts技术将python爬取的实时数据展现出来

2021-07-13

空空如也

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

TA关注的人

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