自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(234)
  • 收藏
  • 关注

转载 kudu 性能优化:

kudu 性能优化: 1,maintenance_manager_num_threads Kudu后台对数据进行维护操作,如flush、compaction、inserts、updates、and deletes,一般设置为4,官网建议的是数据目录的3倍 2,block_cache_capacity_mb 分配给Kudu Tablet Server...

2019-08-19 23:52:00 787

转载 kudu 使用以及架构

kudu的介绍: KUDU在 HDFS 和 HBase 这两个中平衡了随机读写和批量分析的性能,既支持了SQL实时查询,也支持了数据更新插入操作kudu 术语: Tablet(段):一个tablet是一张table连续的segment,与其它数据存储引擎或关系型数据库partition(分区)相似。在一定的时间范围内,tablet的副本冗余到多个tserver服务器上,其中一...

2019-08-16 00:46:00 411

转载 kafka 常用组件以及说明

kafaka 常用组件: 1,producer:消息的生产者, 自己决定哪个 partions 中生产消息, 两种机制:hash 与 轮询 2,consumer:通过 zookeeper 进行维护消费者偏移量, consumer有自己的消费组,不同组之间维护同一个 topic 数据,互不影响.相同组的不同 consumer消费同一个 topic,这个 topic相同的数据只被...

2019-08-14 00:27:00 524

转载 hadoop 源码解析其二(reduce)

reduce 过程的实现(不包含数据拉取部分)首先调用 ReduceTask run 方法开始: 1, 实现 shuffer 拉取数据 返回是迭代器 ,然后构造reducerContext(Reducer 上下文),返还给 reducer.run(reducerContext) 2, 在 reducer.run(reducerContext)之中 调用 ReduceConte...

2019-07-28 00:40:00 217

转载 spark 源码解析其一(资源的申请,任务调度)

一,资源的申请 以下来自于 Master 1,首先receiveAndReply 方法接收EndpointRef ask及其衍生方法发送的信息(模式匹配RequestSubmitDriver) 1),创建 driver 信息 2),driver 持久化 , 存储 driver 运行记录, 以便于恢复信息 3), 调用 schedule() 检查并配置 ...

2019-07-27 12:18:00 138

转载 hive 便签(分桶与自定义函数):

hive 分桶与便签: 1,分桶表是对列值进行 hash 的方式,将不同的数据放到不同的文件之中存储 2,对 hive中每一个表,分区都可以进行分桶 3,由列的hash值除以桶的个数来决定每条数据划分到哪个桶之中 4,适用于数据抽样,与 map-join开启分桶机制# 可以通过 mapred.reduce.tasks 设置 reduce 个数,不推荐#...

2019-07-23 23:36:00 239

转载 hadoop 源码解析其一(map 端)

一, block,map 关系,以及客户端提交信息 切片的计算方式: 1,每个文件是单独计算切片大小的 2,maxSize(默认是无穷大)与blocksize取最小值,和minSize(默认是1)取最大值,所以框架默认切片的大小等于块大小 3,map 数量小于 块数量,调参数maxSize(io密集型)FileInputFo...

2019-07-23 23:07:00 344

转载 hbase 常见操作:

hbase 常见操作: # 新建表 fs与 fs2 为列族 create 's1','fs','fs2' ''' BLOCKCACHE : 读缓存 BLOCKSIZE : 缓存块大小 INMEMORY: 是否在缓存在内存 '''常见表操作 # 添加 s1 表中 r...

2019-07-20 12:20:00 107

转载 hbase 数据模型与架构

一,HBASE 数据库 1,非关系型数据库 2,hadoop databases 简称 hbase ,是一个高可靠性,高性能,面向列(按照列,在添加数据时候,进行创建表结构),可伸缩,实时读写的分布式数据库 3,主要是用来存储非结构化和半结构化的松散模型二,数据模型 Row Key: 1,row key是用来检索记录的主键 2,决定一行数据 ...

2019-07-19 00:06:00 535

转载 apache flink

apache flink 介绍 1,apache flink 是为分布式,高性能,随时可用以及准确的流处理应用程序打造的开源流处理框架 2,apache flink 是一个框架和分布式处理引擎,用于对有界和无界数据进行状态计算,以内存速度和任意规模来执行计算批处理与流处理: 1,批处理是从数据仓库读取某一天,某一个月数据进行处理,需要访问全套记录才能完成计算工作,关注高...

2019-07-16 00:07:00 163

转载 大数据集群部署 CDH以及管理工具 ClouderaManager

CDH 简介与优点: 1,像 linux 发行版一样, 将 大数据 大部分技术,挑选合适的版本号打成的包. 2,提供了大数据技术的整合,解决了技术之间的版本依赖问题 3,只需要web页面点击,就可以完成部署(hadoop,spark等) 4,可以监控集群的健康状况 5, 版本划分清晰,版本更新速度快 6,支持Kerberos 安全认证 7,支持多...

2019-07-09 23:18:00 472

转载 hadoop 的 map reduce实现(其一)

一,map 阶段:   1,切片是由输入格式化类来实现的,默认切片大小等于block size 2,一个切片(逻辑概念,一个map处理数据的大小)对应一个map, 所有的 map 执行完之后才执行 reduce 3,默认的情况下 一个 block对应一个map程序,也可以使用窗口机制(切片) 使得一个 block(很多的 cpu 密集型) 很多 map 4,每个切片以 ...

2019-07-09 00:11:00 125

转载 hadoop hdfs 流程解析(其一):

一,namenode 介绍说明: 1,namenode 保存的是文件元数据(namenode进程维护者虚拟的目录树) 2,namenode 接受来自 datanode 的block 列表提交 3,namenode 完全基于内存存储(新建元数据等),namenode 是通过快照与log信息来实现恢复的 4,namenode 保存 metadata 信息包括: ...

2019-07-06 23:50:00 107

转载 impala 使用介绍

impala 介绍: 1,impala 提供对 hdfs, hbase 数据的高性能,低延迟的交互式 sql查询功能 2,impala 是完全基于hive 的内存计算(中间计算不落地磁盘),spark 中间可以落地 3,impala 完全依赖于 hive, 一次性将 hive 中所有的元数据加载到内存之中 4,c++ 编写,LLVM 统一编译运行(executor...

2019-07-04 23:50:00 175

转载 dataframe dataset 与 SparkSession(代码示例)

dataframe dataset 与 SparkSession 1,dataframe 是 dataset[Row] 2,dataframe 存储着 schema(数据的结构信息,字段与类型等) 信息 3,dataset 可以实现实时批量处理的一种方式 4,RDD dataframe DataSet 可以互相转换 5,SparkSession(编程入口) ...

2019-07-03 23:34:00 161

转载 SparkStreaming 使用

Spark Streaming 架构: 1,Spark Streaming为每个输入源启动对应的接收器。接收器以任务的形式运行在应用的执行器进程中,从输入源收集数据并保存为 RDD。 2,收集到输入数据后会把数据复制到另一个执行器进程来保障容错性(默 认行为)。数据保存在执行器进程的内存中,和缓存 RDD 的方式一样。 3,驱动器程序中的 StreamingContex...

2019-06-27 23:50:00 145

转载 scala 密封类与样例类

密封类: 1,使用 sealed 修饰的类或者特质,不能在类定义文件之外定义它的子类 2,可以避免滥用继承 3,用在模式匹配之中,可以让编译器在编译阶段进行检查,确保当前匹配的完整性package day01sealed abstract class Furniture//定义两个样例类case class Couch() extends Furniture...

2019-06-25 23:14:00 152

转载 spark 缓存操作(cache checkpoint)与分区

spark cache: 1,cache 方法不是被调用时立即缓存,而是触发后面的action时,该RDD将会被缓存在计算节点的内存中,并供后面重用 2, cache 是调用的 persist() 默认情况下 persist() 会把数据以序列化的形式缓存在 JVM 的堆空间中 3,cache 默认的存储级别都是仅在内存存储一份,Spark的存储级别还有好多种,存储级别...

2019-06-23 19:27:00 252

转载 Spark 通信架构

Actor 通信架构: 1,Spark2.x 版本使用 Netty通讯框架作为内部通讯组件。spark 基于netty新的rpc框架借鉴了 Akka 的中的设计, 它是基于 Actor 模型 2,Endpoint( Client/Master/Worker)有 1 个 InBox 和 N 个 OutBox( N>=1,N 取决于当前 Endpoint 与多少其他的 En...

2019-06-16 21:34:00 153

转载 flume 使用整合

flume 定义: 1,从节点使用 sources 指定数据与获取方式,使用channels, 然后 Sink到 主节点 2, 在主节点之中, sources 来源于从节点的sink,使用channels Sink 对象为 hbase 与 kafka,本次使用 apache-flume-1.7.0-bin 安装从节点 配置(另一个节点是 agent2)#三个线程使...

2019-05-28 23:50:00 125

转载 hbase 集群部署与故障转移(HA)与伪分布式搭建

hbase 搭建说明: 1,hbase 自带 zookeeper(export HBASE_MANAGES_ZK=true), 这也就是伪分布式需要配置 zookeeper 原因, 当然 完全分布式则需要使用自定义 zookeeper(export HBASE_MANAGES_ZK=false) 1,Hadoop的数据运算是由MapReduce完成的,而数据存储是由HDFS...

2019-05-19 12:41:00 211

转载 hadoop 集群部署与故障转移其一(hdfs HA与yarn HA)

hadoop 集群部署与故障转移: 高可用: 1, 主要是指 hdfs HA(高可用) 与 yarn 的 HA 2, 保证 namenode 与 ResouceManager 不在一个节点(主句)之上,hdfs 的 HA 是通过 多个 namenode 来实现的: 1,namenode 由元数据(Fslmage) 与 Edits(日志) 组成,Edits 会记...

2019-05-14 00:12:00 236

转载 jenkins 集群搭建过程

使用 jenkins.war 搭建jenkins过程: 一,配置时间服务器 1),安装 ntp 软件(主从都需要) yum install ntp yum install ntpdate    2),配置主服务器(选取一台) # 编辑配置文件 vim /...

2019-05-12 18:43:00 173

转载 zookeeper 集群搭建以及kafka集群配置(基于zk)

zookper 运行机制(以 Hadoop HA 为例): 1),zookeeper 使用目录树维护集群信息, 首先在目录树上创建成功节点的namenode为active 2),zeekeeper 主节点为每个从节点准备一个 message quene,通过 message quene 来实现事件的触发 3), Hadoop HA 是由 ZKFC 进程与 zookeeper ...

2019-05-11 15:42:00 446

转载 spark core 便签

存储内存管理:RDD的持久化 1,如果持久化的级别是纯磁盘级别,直接调用BlockManager的toPut方法写入磁盘 2,持久化的级别是内存级别,此时尝试使用 UnRoll方法,尝试将数据安全的保存的内存之中,如果内存不够,就会淘汰,再将数据写入内存之中 1),淘汰: 新的block缓存到内存不足时,淘汰掉旧的block 2),落盘:如果设定存...

2019-05-05 23:39:00 84

转载 spark 常见"便签"

变量传参: 1,在 spark 编写的程序之中是没有全局变量的,是因为在 driver设置的全局变量,在 execute 可以使用,但是不会返回给driver,除非使用累加器 2,累加器只能在 driver端进行使用,因为它是来自于 sc(只存在于 driver)package day01import org.apache.spark.{Accumulator, Spar...

2019-05-01 00:16:00 111

转载 spark sql 技术说明与常见的操作(其三)

scala 内置函数 1,DataFrame API之中的内置函数进行了优化,不再返回一个结果,而是返回一个 Column对象,并且在并行作业之中 2, Column 可以用来在 DataFrame 的操作之中,比如 select filter和 groupBy计算 3, scala 内置函数分为 聚合函数,集合函数(例如,array_contains),日期时间函数,混合函数(例...

2019-04-29 00:24:00 154

转载 spark sql 技术说明与常见的操作(其二)

Parquet 支持元数据合并: 1,主要是针对多个 Parquet文件,并且有着可以互相兼容进行合并 2,开启自动合并的两种方式: 1),读取 Parquet文件时将数据源选项 mergeSchema 设置为true 2),使用 SQLContext.setConf() 将 spark.sql.parquet.mergeSchema设置为 truepac...

2019-04-14 12:06:00 130

转载 docker 打包应用程序

docker 打包应用程序: 1,针对经常更换的环境问题部署的一套系统 2,部署web项目(python程序)是为了项目测试使用首先配置 centso 环境 docker pull centos # 指定 <image id> 启动 --net=host 可以和宿主机通信 docker run --net=host -ti 9ae...

2019-04-13 15:25:00 486

转载 docker 安装 实时监控系统 grafana+influxDB

docker 常用命令: 1,首先停止容器运行,然后删除容器,最后删除镜像 # 查看所有的容器( -a 表明包括没有运行) docker ps -a # 停止 容器 containerId docker stop f23d164a204a # 删除所有的 容器 docker rm $(docker ps -a -q)...

2019-04-13 00:02:00 139

转载 大数据ui界面 zeppelin的使用

本次使用 hadoop-2.7.0+spark-2.1.1-bin-hadoop2.7+zeppelin-0.8.1-bin-all使用步骤: 1,配置 zeppelin-env.sh export JAVA_HOME=/home/hadoop/jdk-11.0.2 export SPARK_HOME=/home/hadoop/spark-2.1...

2019-04-10 20:11:00 325

转载 hive 数据结构与查询

hive 常见数据结构: 1,struct 大约 c语言之中的结构体,都可以使用'.'来进行访问元素的内容 2,map 键值对 3,array 数组创建文件xiaoming,lili_bingbing,xiao xiao:18_xiaoqiang song :19 tong luo wan针对以上数据创建表:根据行来进行创建 ,指定每一行的数据类型与分隔...

2019-04-05 14:15:00 267

转载 hive-on-spark 安装 以及 scala 实例

hive 安装与 have-on-spark: 1,hive 默认是启用的 derby 数据库,在当前路径(hive/bin下)创建元数据 2,derby只能单用户使用,mysql 支持多用户使用!安装hive: 1,下载 apache-hive-1.2.2-bin.tar.gz 2,配置 $HIVE_HOME/conf/hive-env.sh 指定 HADOO...

2019-04-02 00:16:00 255

转载 maven使用

maven 是 apache 的一个开源项目.maven依赖管理: 1,maven依赖管理实际上就是jar包管理的过程 2,maven 将jar包放置到maven仓库之中,获取jar包是通过坐标(公司名称+项目名称+版本信息)来实现的 3,我们只需要在maven项目之中配置jar包的坐标信息,maven程序根据坐标信息去maven仓库查找jar包 4,坐标是以目录...

2019-03-31 11:48:00 96

转载 spark sql 技术说明与常见的操作(其一)

spark sql 性能技术简介: 1,内存列存储(in-memory columnar storage):Spark sql 的数据,不是使用 java 对象的方式来进行存储,而是使用了面向列的方式进行存储。每一列作为一个数据存储的单位,从而大大的优化了内存的使用效率,减少了对内存的消耗,也就避免了gc的大量数据的性能消耗 2,字节码生成技术(byte-core gener...

2019-03-30 13:05:00 118

转载 Spark-Submit 工作流程(SparkContext的初始化)

DriverApplication 的执行与输出都是通过 SparkContext 来完成, 在正式提交之前,首先启动 SparkContext , sparkContext 隐藏了网络通新,分布式部署,消息通信,存储能力, 计算能力, 缓存能力,文件服务,web 服务等,应用程序开发者只需要使用 SparkContext 提供的 API 进行开发SparkContext的初始化 ...

2019-03-26 23:25:00 199

转载 spark shuffle调优

关于shuffle 参数的说明: 1,参数一般成倍增加或者减少 2,可以再提交任务时,使用 -conf 来进行指定,这样比在代码之中或者spark-defaults.conf之中较好(相当于写死)一:spark.shuffle.file.buffer: 默认为 32k 参数说明:该参数用于设置shuffle write task的BufferedOutputStream...

2019-03-26 00:14:00 108

转载 scala 函数式编程与隐式函数

scala 函数式编程: 1,函数式编程强调的函数可以像变量一样被创建,修改,并当成变量一样传递,返回或是在函数中嵌套函数 2,Scala混合了面向对象和函数式的特性,我们通常将可以做为参数传递到方法中的表达式叫做函数 3,函数柯里化指的是将原来接受两个参数的方法变成新的接受一个参数的方法的过程 4,引用透明指的是函数的运行不依赖于外部变量或“状态”,只依赖于输入...

2019-03-23 22:35:00 142

转载 spark 计算模式与RDD(划分与依赖)

RDD 依赖: 1,RDD 宽依赖(会有shuffle过程):父EDD与子RDD partition之间关系是一对多(groupByKey) 2,RDD 窄依赖:父EDD与子RDD partition之间关系是一对一(map,union等)或者多对一(多个分区看成逻辑上的 partition,合并成一个分区),多个父RDD也就有了shuffer过程spark 计算...

2019-03-21 23:35:00 129

转载 shuffler 文件寻址与内存管理

shuffle 组件MapOutputTracker 磁盘管理小文件 1,主 MapOutputTrackerMaster(存在于Driver) 2,从 MapOutputTrackerWorker(存在于Executor)BlockManager 块管理者 1,BlockManagerMaster(存在于Driver) 1),DiskStore 管理磁盘...

2019-03-20 23:24:00 100

空空如也

空空如也

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

TA关注的人

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