- 博客(26)
- 收藏
- 关注
原创 Phase01 Day3_FastDFS
Phase01 Day3_FastDFS分布式⽂件系统集成概述分布式⽂件系统(Distributed File System)是指⽂件系统管理的物理存储资源不⼀定直接连接在本地节点上,⽽是通过计算机⽹络与节点相连。计算机通过⽂件系统管理、存储数据,⽽信息爆炸时代中⼈们可以获取的数据成指数倍的增⻓,单纯通过增加硬盘个数来扩展计算机⽂件系统的存储容量的⽅式,在容量⼤⼩、容量增⻓速度、数据备份、数据安全等⽅⾯的表现都差强⼈意。分布式⽂件系统可以有效解决数据的存储和管理难题:将固定于某个地点的某个⽂
2020-11-23 17:38:22
209
1
原创 Phase01 Day2_缓存,读写分离
User_Model Day2依赖中添加<!--Spring Redis 二级缓存--><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-redis</artifactId></dependency> <dependency> <groupId>
2020-11-23 17:37:48
194
原创 Phase01 Day1_搭建项目,测试接口
Phase_1_User_Model Day1_配置清单依赖<!--SpringWeb Test--><dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId></dependency><!--⽂件⽀持--><dependency>
2020-11-23 17:36:16
270
原创 Apache Spark Day6
Apache Spark Day6自定义函数spark内置很多函数都定义在org.apache.spark.sql.functions单例对象中,如果不满足实际需求,大家可以考虑对Spark函数库进行扩展。√单行函数1、定义函数val sexFunction=(sex:Boolean)=> sex match { case true => "男" case false => "女" case default => "unkonwn"}val com
2020-11-05 09:22:39
304
原创 Apache Spark Day5
Apache Spark Day5Window OperationsSpark Streaming还提供了窗口计算,可让您在数据的滑动窗口上应用转换。下图说明了此滑动窗口。如图所示,每当窗口在源DStream上滑动时,落入窗口内的源RDD就会合并并对其进行操作,以生成窗口DStream的RDD。在上图中,该操作将应用于数据的最后3个时间单位,并以2个时间单位滑动。这表明任何窗口操作都需要指定两个参数。窗口长度-窗口的持续时间(3倍时间单位)。滑动间隔-进行窗口操作的间隔(2倍时间单位)。注
2020-11-03 18:15:09
226
原创 Apache Spark Day4
Apache Spark Day4Spark流计算概述一般流式计算会与批量计算相比较。在流式计算模型中,输入是持续的,可以认为在时间上是无界的,也就意味着,永远拿不到全量数据去做计算。同时,计算结果是持续输出的,也即计算结果在时间上也是无界的。流式计算一般对实时性要求较高,同时一般是先定义目标计算,然后数据到来之后将计算逻辑应用于数据。同时为了提高计算效率,往往尽可能采用增量计算代替全量计算。批量处理模型中,一般先有全量数据集,然后定义计算逻辑,并将计算应用于全量数据。特点是全量计算,并且计算结果一次
2020-11-01 13:51:05
178
原创 Apache Spark Day3
Apache Spark Day3RDD进阶(面试)分析WordCountsc.textFile("hdfs:///words/t_word") //RDD0 .flatMap(_.split(" ")) //RDD1 .map((_,1)) //RDD2 .reduceByKey(_+_) //RDD3 finalRDD .collect
2020-10-30 09:13:29
228
原创 Apache Spark Day2
Apache Spark Day2DD OperationsRDD支持两种类型的操作:transformations-转换,将一个已经存在的RDD转换为一个新的RDD,另外一种称为actions-动作,动作算子一般在执行结束以后,会将结果返回给Driver。在Spark中所有的transformations都是lazy的,所有转换算子并不会立即执行,它们仅仅是记录对当前RDD的转换逻辑。仅当Actions算子要求将结果返回给Driver程序时transformations才开始真正的进行转换计算。这种设
2020-10-29 09:03:56
184
原创 Apache Spark Day1
Apache Spark概述Spark是一个快如闪电的统一分析引擎(计算框架)用于大规模数据集的处理。Spark在做数据的批处理计算,计算性能大约是Hadoop MapReduce的10~100倍,因为Spark使用比较先进的基于DAG任务调度,可以将一个任务拆分成若干个阶段,然后将这些阶段分批次交给集群计算节点处理。[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7iiljcWL-1603847802041)(D:/sources/大数据/Hadoop/spark内存计
2020-10-28 09:17:01
318
原创 Scala Day3
Scala Day3集合/数组(重点)Array-数组//伴生对象创建数组var a1=Array(1,2,3,5,4)//创建长度为5的数组,所有值都是0var a2=new Array[Int](5)//获取长度a1.lengtha2.size//修改a1(1) = -1a1.update(1,-2)//遍历数组for(i <- a1) println(i)Range-区间产生的是一个只读区间和数组类似,但是内容不可以修改。//创建区间var r1=new
2020-10-27 09:24:37
218
原创 Scala Day2
Class & object由于Scala没有静态方法和静态类,通过object去定义静态方法或者静态对象。当object和Class放在一个文件中时候称该object为当前Class的伴生对象。单例类单例类使用object修饰,所有声明在object中的方法都是静态方法,类似于Java中声明的工具类的作用。//虚拟机仅仅只可以做类加载,无法创建该类的对象【私有构造】object HelloObject {//用于声明一个类 私有构造 所有方法都是静态的 单例类 def sayHell
2020-10-25 14:58:49
362
原创 Scala Day1
Scala Day1概述Scala用一种简洁的高级语言将面向对象和函数式编程结合在一起。传统业务开发, 领域模型设计(面向对象开发); 大数据开发 - 数据集计算模型-(函数式编程)。函数编程强调的是程序对数据的运行算能力。在面向对象计算数据的时候采取代码不动移动数据.在函数式编程计算的时候数据不动代码动。Scala是一门多范式的编程语言,同时支持面向对象和面向函数编程风格。它以一种优雅的方式解决现实问题。虽然它是强静态类型的编程语言,但是它强大的类型推断能力,使其看起来就像是一个动态编程语言一样。Sc
2020-10-23 09:37:42
137
原创 Apache Flume
Apache Flume概述Flume是一种分布式,可靠且可用的服务,用于有效地收集,聚合和移动大量日志数据。Flume构建在日志流之上一个简单灵活的架构。它具有可靠的可靠性机制和许多故障转移和恢复机制,具有强大的容错性。使用Flume这套架构实现对日志流数据的实时在线分析。Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力。当前Flume有两个版本Flume 0.9X版本的统称Flume-og,Flume1.X版本的
2020-10-21 20:51:23
143
原创 Apache Kafka
概述Apache Kafka是Apache软件基金会的开源的流处理平台,该平台提供了消息的订阅与发布的消息队列,一般用作系统间解耦、异步通信、削峰填谷等场景。同时Kafka又提供了Kafka streaming插件包实现了实时在线流处理。相比较一些专业的流处理框架不同,Kafka Streaming计算是运行在应用端,具有简单、入门要求低、部署方便等优点。总体来说Kafka这门课程需要大家掌握以下两个方面:消息队列Message QueueKafka Streaming 流处理消息队列是一种
2020-10-20 16:40:34
593
原创 Apache Hive Day3
Apache Hive Day3※自定义UDFUDF函数其实就是一个简单的函数,执行过程就是在Hive转换成MapReduce程序后,执行java方法,类似于像MapReduce执行过程中加入一个插件,方便扩展。目前Hive除去一些内置的函数以外,还提供了一些内置的函数的扩展接口:UDF:针对单行数据操作,需要继承UDFUDTF:操作一个数据行,产生多个数据行或者是多个列,需要用户继承GenericUDTFUDAF:操作多个数据行,产生一个数据行,主要用以聚合统计,需要继承AbstractGen
2020-10-18 14:56:27
155
原创 Apache Hive Day2
Apache Hive Day2常规操作DDL操作※Database1、查看数据库0: jdbc:hive2://CentOS:10000> show databases;+----------------+--+| database_name |+----------------+--+| default || test |+----------------+--+2 rows selected (0.441 seconds)2、切换数
2020-10-15 19:13:41
155
原创 Apache Hive Day1
Apache Hive Day1背景Hive是建立在 Hadoop 上的数据仓库基础构架。它提供了一系列的工具,可以用来进行数据提取转化加载(ETL-Extract-Transform-Load),这是一种可以存储、查询和分析存储在 Hadoop 中的大规模数据的机制。 Hive 查询操作过程严格遵守Hadoop MapReduce 的作业执行模型,Hive 将用户的HiveQL 语句通过解释器转换为提交到Hadoop 集群上,Hadoop 监控作业执行过程,然后返回作业执行结果给用户。 Hive 并非
2020-10-14 16:23:51
289
原创 Apache Hbase Day4
Apache Hbase Day4hoenix集成Phoenix是构建在HBase上的一个SQL层,能让我们用标准的JDBC APIs而不是HBase客户端APIs来创建表,插入数据和对HBase数据进行查询。Phoenix完全使用Java编写,作为HBase内嵌的JDBC驱动。Phoenix查询引擎会将SQL查询转换为一个或多个HBase扫描,并编排执行以生成标准的JDBC结果集。下载apache-phoenix-4.10.0-HBase-1.2-bin.tar.gz,注意下载的Phoenix版本必须
2020-10-13 17:40:33
190
原创 Apache HBase Day3
Apache HBase Day3EndpointEndpoint 协处理器类似传统数据库中的存储过程,客户端可以调用这些 Endpoint 协处 理器执行一段 Server 端代码,并将 Server 端代码的结果返回给客户端进一步处理,最常见 的用法就是进行聚合操作。如果没有协处理器,当用户需要找出一张表中的最大数据,即 max 聚合操作,就必须进行全表扫描,在客户端代码内遍历扫描结果,并执行求最大值的 操作。这样的方法无法利用底层集群的并发能力,而将所有计算都集中到 Client 端统一执行,
2020-10-12 19:07:41
203
原创 Apache HBase Day2
Apache HBase√Java API需要在maven工程中导入如下依赖:<dependency> <groupId>org.apache.hbase</groupId> <artifactId>hbase-client</artifactId> <version>1.2.4</version></dependency><dependency> <
2020-10-11 14:07:57
171
原创 Apache HBase Day1
Apache HBase介绍HBase是一个分布式的、面向列的开源数据库,该技术来源于 Fay Chang 所撰写的Google论文“Bigtable:一个结构化数据的分布式存储系统”。就像Bigtable利用了Google文件系统(File System)所提供的分布式数据存储一样,HBase在Hadoop的HDFS之上提供了类似于Bigtable的能力。HDFS和HBase之间的关系HBase的全称Hadoop Database,HBase是构建在HDFS之上的一款数据存储服务,所有的物理数据都
2020-10-09 19:06:00
260
原创 Apache Hadoop Day5
Apache Hadoop Day5MapReduce Shuffle定义MapReduce 中,mapper 阶段处理的数据如何传递给 reducer 阶段,是 MapReduce 框架中 最关键的一个流程,这个流程就叫 Shuffle。总体来说shuffle核心流程主要包括以下几个方面:数据分区、排序、局部聚合/Combiner、缓冲区、溢写、抓取/Fetch、归并排序等。常见问题1、MapReduce能否实现全局排序?默认情况下MapReduce是无法实现全局有序的,因为底层MapRe
2020-10-03 15:17:25
218
原创 Apache Hadoop Day4
Apache Hadoop Day4InputForamt&OutputFormat整体设计InputFormat该类是Hadoop提供的顶层抽象类,该类主要定制切片计算逻辑和切片数据的读取逻辑。InputFormat.javapublic abstract class InputFormat<K, V> { public InputFormat() { } //计算切片/ 数据拆分逻辑 区间 public abstract List&l
2020-09-30 12:15:49
207
原创 Apache Hadoop Day3
Apache Hadoop Day3MapReduce概述MapReduce是一个 Hadoop 的并行计算框架,借鉴了函数式编程思想和矢量编程。Hadoop 中是充分利用了存储节点/Data Node运行所在主机的计算资源(CPU、内存、网络、少许磁盘)完成对任务的并行计算。Map Reduce框架会在所有的DataNode所在的物理主机启动一个计算资源管理者Node Manager用于管理本地的计算资源,默认系统会将计算资源均分8个等份,每个等份抽象成一个Container,该Container
2020-09-28 19:13:54
206
原创 Apache Hadoop Day2
Apache Hadoop Day2NameNode启动流程在启动过程中会先进入到安全模式,在safemode下HDFS不会进行数据块的复制,NameNode在安全模式下接收来自DataNode的心跳和Blockreport信息,NameMode会在启动时检查所有汇报的块是否满足所设置的最小副本数(默认值是1),达到要求才会认定当前块是安全的,NameNode会等待30秒然后尝试检查汇报的安全的代码块的比列是否达到了99.9%,如果达到该阈值,NameNode退出safemode模式,然后开始检查副本
2020-09-27 20:04:11
146
原创 Apache Hadoop Day1
Day1(随堂笔记):随着互联网的高速发展,其架构模式也随之发生演变:单一架构→高并发分布式架构:单机储存→分布式储存JavaWeb:为了应对高并发和分布式提出的是LNMP(Linux、Nginx、MySQL、PHP)思想。分布式:提供服务时出现跨机器,跨进程通信都统一称为分布式。储存单机存储:容量限制,扩展性差,数据灾备问题分布式存储:使用存储的集群去实现对海量数据的并行化操作,提升系统的效率。目前针对传统业务领域的分布式文件存储方案有:文件存储,块存储Ha
2020-09-26 13:56:12
149
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅