自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Flink简介

1、概念Apache Flink is a framework and distributed processing engine for stateful computations over unbounded and bounded data streams.即:Apache Flink 是一个框架和分布式处理引擎,用于对无界和有界数据流进行状态计算。Flink是有状态的流式处理,如图:2、传统数据处理架构(1)事务处理优点:快速响应;缺点:数据量大时,数据库压力大

2020-07-06 15:19:09 348

原创 SparkStreaming与Kafka整合及相关案例

目录1、SparkStreaming与Kafka-0-8整合1.1、Receiver-based Approach(不推荐使用)1.2、Direct Approach(No Receivers)1.3、SparkStreaming与Kafka0.8版本整合数据不丢失方案(自己管理offset)2、SparkStreaming与Kafka-0-10整合2.1、只有Direct Approach(No Receivers)2.2、SparkStreaming与Kafka0....

2020-05-24 20:43:50 972

原创 SparkStreaming入门及数据丢失处理、容错

目录1、SparkStreaming2、SparkStreaming程序入口3、SparkStreaming初始理解4、什么是DStream5、数据源5.1、Socket数据源5.2、HDFS数据源5.3、自定义数据源5.4、kafka数据源6、Spark任务设置自动重启步骤一:设置自动重启Driver程序步骤二:设置HDFS的checkpoint目录步骤三:代码实现7、数据丢失如何处理步骤一:设置checkpoint目录步骤二:开启WA.

2020-05-24 15:07:51 1382

原创 Kafka内核原理之ISR-HW-LEO机制、producer核心流程、producer核心参数、consumer消费原理、consumer核心参数

目录1. kafka内核原理1.1、ISR机制1.2 HW&LEO原理(1)LEO(2)HW(3)更新LEO的机制(4)更新HW的机制(5)LEO、HW更新逻辑的顺序2. producer相关2.1 producer消息发送原理(核心流程)2.2、producer核心参数(1)常见异常处理(2)提升消息吞吐量(3)请求超时(4)ACK参数(5)重试乱序3. broker核心参数(server.properties配置文...

2020-05-23 00:12:05 1620

原创 kafka监控工具的安装及使用

1、Kafka ManagerkafkaManager它是由雅虎开源的可以监控整个kafka集群相关信息的一个工具。(1)可以管理几个不同的集群;(2)监控集群的状态(topics, brokers, 副本分布, 分区分布);(3)创建topic、修改topic相关配置。1.1、上传安装包使用上传工具将安装包kafka-manager-1.3.0.4.zip上传至指定目录。1.2、解压安装包unzip kafka-manager-1.3.0.4.zip -d /install(

2020-05-22 22:16:20 670

原创 Kafka消息系统

目录1. Kafka概述1.1、消息系统的特点1.2、Kafka集群架构1.3、kafka特性2 .kafka的命令行的管理使用2.1、创建topic2.2、查询所有的topic2.3、查看topic的描述信息2.4、删除topic2.5、模拟生产者写入数据到topic中2.5、模拟消费者拉取topic中的数据3. kafka的生产者和消费者api代码开发3.1、生产者代码开发3.2、消费者代码开发4. kafka分区策略(4种)4.1、.

2020-05-22 21:48:08 995

原创 Spark调优(5类调优)

目录1、资源调优1.1、分配更多的资源1.2、提高并行度2、开发调优2.1、RDD的重用和持久化2.2、广播变量的使用2.3、尽量避免使用shuffle类算子2.4、使用高性能的算子2.5、使用Kryo优化序列化性能2.6、使用fastutil优化数据格式2.7、调节数据本地化等待时长3、基于spark内存模型调优3.1、spark中executor内存划分3.2、spark的内存模型3.3、任务提交脚本参考4、shuffle相关参...

2020-05-22 17:00:51 2254

原创 spark相关案例

1、使用IDEA基于java语言开发spark的wordcount程序1.1、创建maven工程,引入依赖<dependencies><dependency><groupId>org.apache.spark</groupId><artifactId>spark-core_2.11</artifactId><version>2.3.3</vers...

2020-05-21 23:13:33 1933

原创 sparkSQL相关应用案例

1、sparksql操作hivesql(1)pom文件添加相关maven依赖添加依赖<dependency><groupId>org.apache.spark</groupId><artifactId>spark-hive_2.11</artifactId><version>2.3.3</version>...

2020-05-16 15:43:57 429

原创 sparkSQL基础

目录1.sparksql概述1.1、什么是Spark SQL1.2、SparkSQL的数据源1.3、SparkSQL底层架构2. sparksql的四大特性2.1、易整合2.2、统一的数据源访问2.3、兼容hive2.4、支持标准的数据库连接3. DataFrame概述3.1、DataFrame是什么3.2、DataFrame和RDD的优缺点3.4、DataFrame常用操作4. DataSet概述4.1、DataSet是什么4.2、RDD、D

2020-05-16 15:07:25 399

原创 spark的任务调度、运行架构及基于实例的任务提交、划分和调度流程

目录1、spark的任务调度2、spark的运行架构3、基于wordcount程序剖析spark任务的提交、划分、调度流程1、spark的任务调度(1) Driver端运行客户端的main方法,构建SparkContext对象,在SparkContext对象内部依次构建DAGScheduler和TaskScheduler对象; (2) Driver端按照rdd的一系列算子操作顺序,来生成DAG有向无环图; (3) DAGScheduler对象在拿到DAG有向无环图之后,.

2020-05-16 09:40:54 370

原创 Spark核心RDD及相关算子

目录1. RDD是什么2. RDD的五大属性3.RDD图及相关理解4.RDD的创建方式(共三种)5.RDD的算子分类6.cache ,persist ,checkpoint 区别1. RDD是什么RDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是Spark中最基本的数据抽象,它代表一个不可变、可分区、里面的元素可并行计算的集合。Dataset: 就是一个集合,存储很多数据。 Distributed:它内部的元素进行了分布式存储.

2020-05-15 19:36:14 771

原创 spark提交任务的几种方式

1、Standalone模式两种提交任务方式1.1、Standalone-client提交任务方式(1)提交命令:bin/spark-submit \--master spark://node1:7077 \--class org.apache.spark.examples.SparkPi \examples/jars/spark-examples_2.11-2.3.3.jar \1000或者bin/spark-submit \--master spark://

2020-05-15 18:23:50 2084

原创 spark内存计算框架基础

1. spark是什么Apache Spark™is a unified analytics engine for large-scale data processing。即:spark是针对于大规模数据处理的统一分析引擎。2. spark的四大特性2.1 速度快运行速度提高100倍:Apache Spark使用最先进的DAG调度程序,查询优化程序和物理执行引擎,实现批量和流式数据的高性能。2.2 易用性可以快速去编写spark程序通过 java/scala/pytho.

2020-05-15 17:23:15 1208

原创 ELK之LogStash日志数据采集

目录1、概述2、Input插件2.1、stdin标准输入和stdout标准输出2.2、监控日志文件变化3、jdbc插件(1)开发脚本配置文件(2)上传mysql连接驱动包到指定路劲(3)检查配置文件是否可用(4)启动服务(5)数据库当中添加数据4、systlog插件(1)编写脚本(2)检查配置文件是否可用(3)启动服务(4)发送数据...

2020-04-30 02:33:58 2023

原创 ElasticSearch集群生产调优

1、服务器硬件以及内存调优1.1、调整交换区的swap大小(1)尽量关闭linux的交换区的内存空间swapoff-a(2)若不能完全禁用swap交换区的空间,则调整swap参数值(尽量调低)vim /etc/sysctl.confvm.swappiness=1(各节点都需要设置)swappiness参数值可设置范围在0到100之间。低参数值会让内核尽量少用...

2020-04-30 01:54:15 648

原创 ElasticSearch之使用javaAPI来实现基于地理位置的搜索

第一步:创建索引库并添加数据直接在kibana当中通过以下操作创建索引库,并添加一条数据(暂略),添加数据(暂略);第二步:添加以下jar包坐标依赖暂略第三步:使用javaAPI来实现基于地理位置的搜索@Test public void locationQuery() throws UnknownHostException { //获取settings...

2020-04-30 01:16:03 1362

原创 ElasticSearch之高级javaAPI操作

目录1、现有结构化数据内容如下:2、初始化一批数据到es索引库当中去3、需求一:统计每个球队当中球员的数量5、需求三:分组求各种值6、需求四:统计每个球队年龄最小值7、需求五:分组求平均值8、需求六:分组求和9、需求七:聚合排序1、现有结构化数据内容如下: name age salary ...

2020-04-30 01:07:24 1160

原创 ElasticSearch之JavaAPI更新索引和删除索引(3种)

1、更新索引/*** 更新索引* 根据数据id来进行更新索引*/@Testpublic void updateIndex(){Person guansheng = new Person(5, "宋江", 88, 0, "水泊梁山", "17666666666", "wusong@kkb.com","及时雨宋江");client.prepareUpdate().setI...

2020-04-30 00:47:58 3413 2

原创 ElasticSearch之JavaAPI查询索引(9种)

查询索引1、初始化一批数据到索引库中准备查询(建里索引、添加数据等略)2、通过数据id使用prepareGet来查询索引@Testpublic void query1() {//查询索引名称为indexsearch、索引类型是mysearch,id为11的索引GetResponse documentFields = client.prepareGet("indexs...

2020-04-30 00:36:38 5740 3

原创 ElasticSearch之JavaAPI创建索引(5种)

1、先创建客户端对象@BeforeEachpublic void test1() throws UnknownHostException {//创建settings对象,设置es集群名称Settings settings = Settings.builder().put("cluster.name", "myes").build();//创建客户端对象client ...

2020-04-30 00:04:22 3345

原创 ELK之ElasticSearch

1、ELK日志协议栈ELK是三个软件产品的首字母缩写,Elasticsearch,Logstash 和 Kibana。Elasticsearch是个开源分布式搜索引擎,它的特点有:分布式,零配置,自动发现,索引自动分片,索引副本机制,restful风格接口,多数据源,自动搜索负载等。Logstash是一个完全开源的工具,他可以对你的日志进行收集、过滤,并将其存储供以后使用(如,搜索)。...

2020-04-29 23:21:54 1016

原创 JVM调优总结

1、堆内存(1)调整最大堆内存和最小堆内存-Xmx:堆内存最大值(默认值是物理内存的1/4(<1GB))–Xms:初始堆内存最小值(默认值是物理内存的1/64(<1GB))默认(MinHeapFreeRatio参数可以调整)空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制;默认(MaxHeapFreeRatio参数可以调整)空余堆内存大于70%时,JVM会...

2020-04-17 23:48:23 235

原创 JVM常用调整参数

参数名称 含义 默认值 -Xms 初始堆大小 物理内存的1/64(<1GB) 默认(MinHeapFreeRatio参数可以调整)空余堆内存小于40%时,JVM就会增大堆直到-Xmx的最大限制. -Xmx ...

2020-04-17 23:07:50 103

原创 大数据相关组件调优参数

目录1、hadoop调优实战(1)调整namenode启动的堆内存大小(2)调整jobHisotryServer的堆内存大小(3)调整yarn的堆内存大小(4)调整yarn内存大小2、flume组件内存调优3、Hbase内存调优1、hadoop调优实战(1)调整namenode启动的堆内存大小cd /hadoop-2.6.0-cdh5.14.2/etc...

2020-04-17 21:10:41 593

原创 scala之下划线"_"的使用场景总结

1、方法转化为函数 例如:def m1(x:Int,y:Int)=x*y val f1=m1 _ #(注意中间的空格)2、集合中的每一个元素 例如: val list=List(1,2,3,4) val list1=list.map(_ * 10) 3、获取元组Tuple中的元素例如: val t=("hadoop",...

2020-04-16 23:18:44 195

原创 scala之函数式编程及高阶函数

1、 函数式编程使用Spark/Flink的大量业务代码都会使用到函数式编程。1.1 遍历 - foreach(1)方法描述foreach(f: (A) ⇒ Unit): Unit(2)方法说明 foreach API 说明 参数 f: (A) ⇒ Unit ...

2020-04-15 01:19:52 372

原创 Scala之数组、元组、映射Map、Set集合和List列表

1. 数组scala中数组的概念是和Java类似,可以用数组来存放同类型的一组数据; scala中,有两种数组,一种是定长数组,另一种是变长数组。1.1 定长数组定长数组指的是数组的长度是不允许改变的; 数组的元素是可以改变的; 语法:// 通过指定长度定义数组val/var变量名 = newArray[元素类型](数组长度)// 用元素直接初始化数组val/var变量名...

2020-04-14 23:54:29 422

原创 Scala基础语法

1. scala简介scala是运行在 JVM 上的多范式编程语言,同时支持面向对象和函数式编程。2. 为什么要使用scala开发大数据应用程序(Spark程序、Flink程序); 表达能力强,一行代码抵得上Java多行,开发速度快; 由于运行在JVM上,所以它兼容Java,可以访问庞大的Java类库,与Java框架进行互操作。3. Scala与java的区别(1)Java程...

2020-04-14 22:33:44 1054

原创 辅助框架之azkaban工作流调度器

1. 为什么需要工作流调度系统(1)完整的数据分析系统通常都是由大量任务单元组成;包括:shell脚本程序、java程序、mapreduce程序、hive脚本等(2)各任务单元之间存在时间先后及前后依赖关系;(3)为了很好地组织起这样的复杂执行计划,需要一个工作流调度系统来调度执行。2. Azkaban是什么(1)Azkaban是由Linkedin开源的一个批量工作流任务调度器...

2020-04-14 20:51:35 199

原创 辅助框架之Sqoop数据迁移工具

1. Sqoop是什么?Sqoop是apache旗下的一款 ”Hadoop和关系数据库之间传输数据”的工具。(1)导入数据:将MySQL,Oracle导入数据到Hadoop的HDFS、HIVE、HBASE等数据存储系统;(2)导出数据:从Hadoop的文件系统中导出数据到关系数据库。2. Sqoop的工作机制将导入和导出的命令翻译成mapreduce程序实现;在翻译出的...

2020-04-14 19:52:20 287

原创 辅助框架之Flume日志采集

1. Flume是什么 在完整的离线大数据处理系统中,除了hdfs+mapreduce+hive组成分析系统的核心之外,还需要数据采集、结果数据导出、任务调度等不可或缺的辅助系统,而这些辅助工具在hadoop生态体系中都有便捷的开源框架。Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统; Flume支持在日志系统中定制各类数据发送方,用...

2020-04-14 19:06:00 341

原创 Zookeeper成功启动,但是查看状态提示It is probably not running.

(1)启动zookeeper,zkServer.sh start成功启动(Starting zookeeper ... STARTED);(2)但是查看其状态zkServer.sh status时,提示:Using config: /kkb/install/zookeeper-3.4.5-cdh5.14.2/bin/../conf/zoo.cfgError contacting ser...

2020-04-11 17:14:14 2977 2

原创 centos7安装教程、多节点克隆及网络设置

(1)打开VMware Workstation软件,选择创建新的虚拟机,如图:(2)选择自定义安装(3)选择对应的workstation版本(4)选择稍后安装操作系统(5)选择linux以及对应版本(6)给种子机命名(以后只需要在种子机基础上克隆即可)(7)选择处理器数量及内核数(一般默认即可)(8)根据实际情况设置内存大小(9)网络...

2020-04-10 21:43:21 544

原创 HBase协处理器及二级索引

1. HBase协处理器官网文档 起源: Hbase 作为列族数据库的缺点: 无法轻易建立“二级索引” 难以执行求和、计数、排序等操作。 虽然 HBase 在数据存储层中集成了 MapReduce,能够有效用于数据表的分布式计算。然而在很多情况下,做一些简单的相加或者聚合计算的时候, 如果直接将计算过程放置在 server端,能够减少通讯开销,从而获得很好的性能提升。...

2020-04-05 15:31:32 373

原创 HBase表的rowkey设计及热点解决方案

1. HBase表的rowkey设计rowkey设计三原则1.1 rowkey长度原则rowkey是一个二进制码流,可以是任意字符串,最大长度62kb,实际应用中一般为10-100bytes,以byte[]形式保存,一般设计成定长。 建议尽可能短;但是也不能太短,否则rowkey前缀重复的概率增大 设计过长会降低memstore内存的利用率和HFile存储数据的效率。1.2 row...

2020-04-05 15:10:47 329

原创 HBase集成Hive

1. HBase集成HiveHive提供了与HBase的集成,使得能够在HBase表上使用hive sql 语句进行查询、插入操作以及进行Join和Union等复杂查询,同时也可以将hive表中的数据映射到Hbase中1.1 HBase与Hive的对比1.1.1 Hive数据仓库 用于数据分析、清洗:Hive适用于离线的数据分析和清洗,延迟较高 基于HDFS、MapReduce:...

2020-04-05 15:06:28 236

原创 Hbase集成MapReduce

1. HBase集成MapReduce(重点 难点)HBase表中的数据最终都是存储在HDFS上,HBase天生的支持MR的操作,我们可以通过MR直接处理HBase表中的数据,并且MR可以将处理后的结果直接存储到HBase表中。 参考地址:http://hbase.apache.org/book.html#mapreduce 三种整合方案: (1)MapReduce读取Hbase表数...

2020-04-05 14:43:32 542

原创 HBase的数据存储原原理、读写流程、预分区与合并

1. HBase的数据存储原理(掌握)一个HRegionServer会负责管理很多个region 一个region包含很多个store 一个列族就划分成一个store 如果一个表中只有1个列族,那么每一个region中只有一个store 如果一个表中有N个列族,那么每一个region中有N个store 一个store里面只有一个memstore me...

2020-04-05 14:26:54 1129

原创 大数据数据库之HBase

1. HBase是什么(5分钟)1.1 HBase的概念HBase即Hadoop Database,是Hadoop的分布式的数据库。 HBase是参考Google的BigTable论文的开源实现版,HBase的存储基于HDFS,提供高可靠性、高性能、列存储、可伸缩、实时读写的分布式数据库系统。 在需要实时读写随机访问超大规模数据集时,可以使用HBase。1.2 HBase的特点海...

2020-04-05 13:57:05 835

空空如也

空空如也

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

TA关注的人

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