自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Flink基础学习(五)

Flink-SQL 开发背景Flink SQL 是 Flink 实时计算为简化计算模型,降低用户使用实时计算门槛而设计的 一套符合标准 SQL 语义的开发语言。自 2015 年开始,阿里巴巴开始调研开源流计算引擎,最终决定基于 Flink 打造新一 代计算引擎,针对 Flink 存在的不足进行优化和改进,并且在 2019 年初将最终代码开源, 也就是我们熟知的 Blink。Blink 在原来的 Flink 基础上最显著的一个贡献就是 Flink SQL 的实现。Flink SQL 是面向用户的 AP

2020-09-18 10:38:06 189

原创 Flink基础学习(四)

DataStream API 开发1.Time 与 Window1.1 Time在 Flink 的流式处理中,会涉及到时间的不同概念,如下图所示:Event Time:是事件创建的时间。它通常由事件中的时间戳描述,例如采集的日志数据中, 每一条日志都会记录自己的生成时间,Flink 通过时间戳分配器访问事件时间戳。Ingestion Time:是数据进入 Flink 的时间。Processing Time:是每一个执行基于时间操作的算子的本地系统时间,与机器相关,默认 的时间属性就是 Proc

2020-09-18 10:00:20 317 1

原创 Flin基础学习(三)

DataStream API 开发1 入门案例1.1 Flink 流处理程序的一般流程获取 Flink 流处理执行环境构建 source数据处理构建 sink1.2 示例编写 Flink 程序,用来统计单词的数量。1.3 步骤获取 Flink 批处理运行环境构建一个 socket 源使用 flink 操作进行单词统计打印说明:如果 linux 上没有安装 nc 服务 ,使用 yum 安装yum install -y nc2 输入数据集 Data SourcesF

2020-09-18 09:24:07 385

原创 Flink基础学习(二)

Flink基础学习1.入门案例1.1Flink 批处理程序的一般流程1) 获取 Flink 批处理执行环境2) 构建 source3) 数据处理4) 构建 sink1.2 示例编写 Flink 程序,用来统计单词的数量。1.3 步骤1) IDEA 创建项目2) 导入 Flink 所需的 Maven 依赖3) 创建 scala 单例对象,添加 main 方法4) 获取 Flink 批处理运行环境5) 构建一个 collection 源6) 使用 flink 操作进行单词统计

2020-09-18 08:55:31 317

原创 Flink基础学习(一)

Flink基础学习Flink基础学习1.Flink的简介2.Flink的架构体系3.Flink的集群搭建4.Flink的运行架构5.Flink的批处理开发(DataSetApi)6.Flink的流处理开发(DataStreamApi)7.Flink-sql开发1.Flink简介1.1flink的引入1.2什么是Flink?1.3Flink流处理计算的特性1.4Flink的四大基石1.5批处理与流处理2.Flink的架构体系2.1Flink中的角色2.2无界数据流与有界数据流2.3Flink数据流编程模型2.

2020-09-10 21:05:17 647

原创 HIVE三种启动方式

第一种交互方式:Hive交互shellcd /export/servers/hive-1.1.0-cdh5.14.0bin/hive查看所有的数据库hive (default)> show databases;创建一个数据库hive (default)> create database myhive;使用该数据库并创建数据库表hive (default)> ...

2019-11-25 21:39:04 1685 1

原创 手把手教你安装Hive

HIVE的安装部署安装derby版hive直接使用:解压hivecd /export/softwarestar -zxvf hive-1.1.0-cdh5.14.0.tar.gz -C ../servers/1、直接启动 bin/hivecd ../servers/cd hive-1.1.0-cdh5.14.0/bin/hivehive> create databa...

2019-11-25 21:35:36 151

原创 Hive基本概念

Hive简介什么是HiveHive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供类SQL查询功能(HQL)。其本质是将SQL转换为MapReduce的任务进行运算,底层由HDFS来提供数据的存储,hive可以理解为一个将SQL转换为MapReduce的任务的工具。为什么使用Hive直接使用hadoop所面临的问题人员学习成本太高项目周期要求太短...

2019-11-22 09:44:32 113

原创 shuffle阶段数据的压缩机制

在shuffle阶段,可以看到数据通过大量的拷贝,从map阶段输出的数据,都要通过网络拷贝,发送到reduce阶段,这一过程中,涉及到大量的网络IO,如果数据能够进行压缩,那么数据的发送量就会少得多,那么如何配置hadoop的文件压缩呢,以及hadoop当中的文件压缩支持哪些压缩算法呢??接下来一一细看MapReduce的执行流程为什么要配置压缩:MapReduceinputmapper...

2019-11-22 09:39:24 154

原创 MapReduce各部位运行机制详解

MapTask运行机制详解以及Map任务的并行度整个Map阶段流程大体如上图所示。简单概述:inputFile通过split被逻辑切分为多个split文件,通过Record按行读取内容给map(用户自己实现的)进行处理,数据被map处理结束之后交给OutputCollector收集器,对其结果key进行分区(默认使用hash分区),然后写入buffer,每个map task都有一个内存缓冲区,...

2019-11-21 08:17:09 202

原创 MapReduce的分区与ReduceTask的数量

在MapReduce中,通过指定分区,会将同一个分区的数据发送到同一个reduce中,例如为了数据的统计,可以把一批类似的数据发 送到同一个reduce当中去,在同一个reduce中统计相同类型的数据,就可以实现类似数据的分区,统计等直观的说就是相同类型的数据,送到一起去处理,在reduce当中默认分区只有1个。MapReduce当中的分区类图需求:将以下数据进行分开处理详细数据参见pa...

2019-11-21 07:58:42 589

原创 Mapper以及Reducer抽象类详细介绍

为了开发MapReduce程序,一共可以分为以上八个步骤,其中每个步骤都是一个class类,通过job对象将程序组装成一个任务提交即可。为了简化MapReduce程序的开发,每一个步骤的class类,都有一个既定的父类,直接继承即可,因此可以大大简化MapReduce程序的开发难度,也可以快速的实现功能开发。MapReduce编程当中,其中最重要的两个步骤就是Mapper类和Reducer类1...

2019-11-19 09:06:58 1211

原创 MapReduce编程规范及示例

编程规范mapReduce编程模型的总结:事实上MapReduce的开发一共有八个步骤其中map阶段分为2个步骤,shuffle阶段4个步骤,reduce阶段分为2个步骤Map阶段2个步骤第一步:设置inputFormat类,将数据切分成key,value对,输入到第二步第二步:自定义map逻辑,处理第一步的输入数据,然后转换成新的key,value对进行输出第三步:对输出的key,...

2019-11-19 08:10:54 206

原创 手把手教你MapReduce编程初体验

MapReduce编程初体验需求:在给定的文本文件中统计输出每一个单词出现的总次数数据格式准备如下:cd /export/serversvim wordcount.txthello,world,hadoophello,hive,sqoop,flumekitty,tom,jerry,worldhadoophdfs dfs -mkdir /wordcount/hdfs dfs ...

2019-11-14 21:41:50 228

原创 分布式并行计算框架MapReduce详解

分布式并行计算框架MapReduce什么是计算框架?指实现某项任务或某项工作从开始到结束的计算过程或流的结构。用于去解决或者处理某个复杂的计算问题。什么是分布式计算?是一种计算方法,是将该应用分解成许多小的部分,分配给多台计算机进行处理。这样可以节约整体计算时间,大大提高计算效率。Hadoop为什么比传统技术方案快?核心原因一:使用分布式存储。核心原因二:使用分布式并行计算框架。...

2019-11-13 21:53:48 1656

原创 Datanode多目录配置及block块手动拼接

Datanode多目录配置datanode也可以配置成多个目录,每个目录存储的数据不一样。即:数据不是副本。具体配置如下:cd /export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoop<!-- 定义dataNode数据存储的节点位置,实际工作中,一般先确定磁盘的挂载目录,然后多个目录用,进行分割 --><property&g...

2019-11-12 21:43:41 359

原创 HDFS新增节点与删除节点

HDFS新增节点准备新节点第一步:复制一台新的虚拟机出来将我们纯净的虚拟机复制一台出来,作为我们新的节点第二步:修改mac地址以及IP地址修改mac地址命令vim /etc/udev/rules.d/70-persistent-net.rules.修改ip地址命令vim /etc/sysconfig/network-scripts/ifcfg-eth0第三步:关闭防火墙,关闭...

2019-11-12 20:56:51 225

原创 手把手教你NameNode故障恢复

SecondaryNameNode 对 NameNode 当中的 FSimage 和 Edits 进行合并时,每次都会先将 NameNode 的 FSimage 与 Edits 文件拷贝一份过来,所以 FSimage 与 Edits 文件在 SecondaryNameNode 当中也会保存有一份,如果 NameNode 的 FSimage 与 Edits 文件损坏,那么我们可以将 Secondar...

2019-11-12 15:49:52 448

原创 Fsimage,Edits详解

NameNode元数据解析第一次启动 NameNode 格式化后,创建 FSimage 和 Edits 文件。如果不是第一次启动,直接加载 Edits 和 FSimage 文件到内存。客户端对元数据进行增删改的请求。NameNode 记录操作日志,更新滚动日志。NameNode 在内存中对数据进行增删改查FSimage 保存了最新的元数据检查点,在 HDFS 启动时加载 FSima...

2019-11-11 20:48:39 285

原创 HDFS文件的读写流程

HDFS 文件上传流程详细步骤解析:client 发起文件上传请求,通过 RPC 与 NameNode 建立通讯,NameNode 检查目标文件是否存在,父目录是否存在,返回是否可以上传;client 请求第一个 block 该传输...

2019-11-11 09:46:50 155

转载 【强悍】分布式与女朋友的神奇组合

你女朋友是高可用么?分布式系统的概念,技术来源于恋爱,又高于恋爱1.高可用:就算失恋了,可以迅速和另一个女生恋爱,永远不会是单身状态2.注册中心:你和你女朋友去民政局登记,民政局就是注册中心,掉线的代价就是离婚3.负载均衡:你和多个女朋友轮流约会。星期一,三,五跟A约会,二,四,六和B约会,叫RoundRibon算法4.熔断限流:跟多个女朋友约会,你身体吃得消么?你要保护自己,星期天就好好...

2019-11-08 15:45:45 317

原创 Hadoop的文件基本系统介绍

HDFS基本介绍HDFS 是 Hadoop Distribute File System 的简称,意为:Hadoop 分布式文件系统。是 Hadoop 核心组件之一,作为最底层的分布式存储服务而存在。分布式文件系统解决的问题就是大数据存储。它们是横跨在多台计算机上的存储系统。分布式文件系统在大数据时代有着广泛的应用前景,它们为存储和处理超大规模数据提供所需的扩展能力。简记:将多个节点上的容...

2019-11-06 15:00:05 255

空空如也

空空如也

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

TA关注的人

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