- 博客(90)
- 收藏
- 关注
原创 sparkCore
SparkCore讲解1、RDD基本概念1.1、什么是RDD RDD(Resilient Distributed Dataset)叫做弹性分布式数据集,是Spark中最基本的数据抽象,它代表一个不可变、可分区、里面的元素可并行计算的集合。 Dataset:一个数据集合,用于存放数据的。 Distributed:RDD中的数据是分布式存储的,可用于分布式计算。 Resilien...
2019-10-24 21:35:13
668
原创 spark的shuffle和原理分析
spark的shuffle和原理分析1 、概述 Shuffle就是对数据进行重组,由于分布式计算的特性和要求,在实现细节上更加繁琐和复杂。 在MapReduce框架,Shuffle是连接Map和Reduce之间的桥梁,Map阶段通过shuffle读取数据并输出到对应的Reduce;而Reduce阶段负责从Map端拉取数据并进行计算。在整个shuffle过程中,往往伴随着大量的磁盘和网络I/O...
2019-10-24 21:22:42
433
原创 spark性能优化
1、分配更多的资源1.1、分配哪些资源executor-memory、executor-cores、num-executor1.2、在哪里设置这些资源在生成环境中,提交spark任务时,使用spark-submit shell脚本,可以调整对应的参数提交任务的脚本spark-submit \--master saprk://node01:7077 \--class cn.tuy...
2019-10-23 21:33:22
514
原创 spark数据倾斜情况与解决代码
出现数据倾斜的六种情况1、shuffle的时候,如果这个产生shuffle的字段为空,会出现数据倾斜2、key有很多,分区数设置的过少,导致很多key聚集在一个分区出现数据倾斜3、当某一个表中某一个key数据特别多,然后使用group by 就会出现数据倾斜4、大表 join 小表 ,这两个表中某一个表有某一个key或者某几个key数据比较多,会出现数据倾斜5、大表 join 大表,其...
2019-10-23 19:12:56
611
转载 beeline连接hiveserver2报错:User: root is not allowed to impersonate root
转载自:https://blog.csdn.net/qq_16633405/article/details/82190440最近在生产中搭建HA机制的集群,碰到不少坑,会在接下来的时间里好好总结下,先说下遇到的一个大坑。我们的需求是:希望通过hive的thrift服务来实现跨语言访问Hive数据仓库。但是第一步,你得需要在节点中打通服务器端(启动hiveserver2的节点)和客户端(启动bee...
2019-10-09 19:37:00
624
spark案例解析(全国农产品市场与省份)
需求(一) 数据描述1、数据参数该数据每日进行采集汇总。数据范围涵盖全国主要省份(港澳台西藏海南暂无数据)的 180+的大型农产品批发市场,380+的农产品品类(由于季节性和地域性等特点,每日的数据中不一定会涵盖全部的农产品品类)。2、数据类型(二)功能需求1、农产品市场个数统计统计每个省份的农产品市场总数统计没有农产品市场的省份有哪些2、农产品种类统计根据农产品类...
2019-10-09 15:56:08
1725
原创 Spark篇
问题1、spark-submit几种提交模式的 区别是什么?问题2、spark streming在实时处理时会发生什么故障,如何停止,解决问题3、spark工作机制问题4、Kafka和sparkStreaming的整合,手动提交的offset调用了什么方法?问题5、spark-yarn程序的的调度流程问题6、Scala中协变逆变的应用场景。问题7、Spark中隐式转化的应用场景问题8...
2019-10-08 21:21:40
358
原创 Apache Flume笔记
Apache Flume概述flume是一款大数据中海量数据采集传输汇总的软件。特别指的是数据流转的过程,或者说是数据搬运的过程。把数据从一个存储介质通过flume传递到另一个存储介质中。核心组件source :用于对接各个不同的数据源sink:用于对接各个不同存储数据的目的地(数据下沉地)channel:用于中间临时存储缓存数据运行机制flume本身是ja...
2019-09-26 10:43:09
169
原创 flume+kafka篇
问题1、谈谈对kafka的理解,kafka如何保证数据不丢失问题2、Kafka和sparkStreaming的整合,手动提交的offset调用了什么方法?问题3、hive怎么消费kafka的数据的问题4、kafka如何管理自身的offset问题5、Kafka如何管理自身的offset问题6、kafka如何保证数据不会出现丢失或者重复消费的情况?问题7、kafka消费数据是怎么消费的,用...
2019-09-22 10:37:11
609
原创 Flume拦截器实战
文章目录六、 Flume拦截器实战案例1. 日志的采集和汇总1.1. 案例场景1.2. 场景分析1.3. 数据流程处理分析1.4. 功能实现2. Flume自定义拦截器2.1. 案例背景介绍2.2. 自定义拦截器2.3. 功能实现2.4. 项目实现截图六、 Flume拦截器实战案例1. 日志的采集和汇总1.1. 案例场景A、B两台日志服务机器实时生产日志主要类型为access.log、ng...
2019-09-22 10:21:50
416
原创 Flume自定义组件
文章目录七、 Flume高阶自定义组件1. Flume自定义Source (扩展)1.1. 自定义Source说明1.2. 自定义Source原理1.3. 自定义Source具体实现2. Flume自定义Sink(扩展)2.1. 自定义Sink说明2.2. 自定义Sink原理实现七、 Flume高阶自定义组件1. Flume自定义Source (扩展)1.1. 自定义Source说明Sou...
2019-09-22 10:20:36
380
原创 LogStash安装及综合案例
文章目录14、LogStash介绍及安装1、介绍2 、node01机器安装LogStash3、Input插件1、stdin标准输入和stdout标准输出2、监控日志文件变化3、jdbc插件第一步:编写脚本第二步:上传mysql连接驱动包到指定路劲第三步:检查配置文件是否可用第四步:启动服务第五步:数据库当中添加数据4 systlog插件4、filter插件1、grok正则表达式1、收集控制台输入数...
2019-09-22 10:17:50
1623
原创 ES的javaAPI操作
文章目录12、使用Java API访问集群1、导入pom2、创建索引 prepareIndex1、创建Client2、自己拼装json创建索引保存到myindex1索引库下面的article当中去3、使用map创建索引4、XcontentBuilder实现创建索引5、将对象转换为json格式字符串进行创建索引6、批量创建索引3、更新索引4、删除索引1、按照id进行删除2、删除整个索引库5、查询索引...
2019-09-22 10:09:32
5708
原创 ES整合Hbase实现二级索引
文章目录17、es整合Hbase实现二级索引1 、存储设计2 、索引库设计3、导入jar包4、代码开发17、es整合Hbase实现二级索引需求:解决海量数据的存储,并且能够实现海量数据的秒级查询.实际生产中,一遍文章要分成标题和正文;但是正文的量是比较大的,那么我们一般会在es中存储标题,在hbase 中存储正文(hbase本身就是做海量数据的存储);这样通过es的倒排索引列表检索到关键词的...
2019-09-22 10:05:49
4992
1
原创 HBase与Hue集成
文章目录19、HBase整合hue1、Hue的介绍HUE链接Hue的架构核心功能2、Hue的环境准备及安装第一步:下载依赖包第二步:安装配置maven第三步:为linux操作系统添加普通用户第四步:下载hue压缩包并上传解压第五步:修改配置文件第六步:创建mysql数据库第七步:对hue进行编译第八步:启动hue服务并进行页面访问3、hue与其他框架的集成3.1、hue与hadoop的HDFS以及...
2019-09-22 10:01:46
691
原创 HBase与MR、hive集成
文章目录12、HBase与MapReduce的集成需求一:读取myuser这张表当中的数据写入到HBase的另外一张表当中去第一步:创建myuser2这张表第二步:创建maven工程,导入jar包第三步:开发MR的程序第四步:运行运行第一种方式:本地运行运行第二种方式:打包集群运行第一步:pom.xml当中添加打包插件第二步:代码当中添加第三步:使用maven打包需求二:读取HDFS文件,写入到H...
2019-09-22 09:59:39
606
原创 HBase集群搭建和操作
文章目录6、HBase的集群环境搭建7、HBase常用shell操作1、进入HBase客户端命令操作界面2、查看帮助命令3、查看当前数据库中有哪些表4、创建一张表5、添加数据操作6、查询数据操作1、通过rowkey进行查询2、查看rowkey下面的某个列族的信息3、查看rowkey指定列族指定字段的值4、查看rowkey指定多个列族的信息4、指定rowkey与列值查询5、指定rowkey与列值模糊...
2019-09-22 09:56:59
620
原创 HBase介绍和基础架构
文章目录1、HBase基本介绍简介HBase的发展历程2、HBase与Hadoop的关系1、HDFS2、HBase3、RDBMS与HBase的对比1、关系型数据库2、HBase4、HBase特征简要1)海量存储2)列式存储3)极易扩展4)高并发5)稀疏5、HBase的基础架构1、HMaster2、RegionServer1、HBase基本介绍简介hbase是bigtable的开源java版本...
2019-09-22 09:55:28
706
原创 Kafka操作及原理
文章目录**9、Kafka集群操作****9.1、kafka集群操作-控制台操作****9.1.1、创建一个Topic****9.1.2、查看主题命令****9.1.3、生产者生产数据****9.1.4、消费者消费数据****9.1.5、运行describe topics命令****9.1.6、修改topic属性****9.1.6.1、增加topic分区数****9.1.6.2、增加配置****...
2019-09-22 09:52:01
244
原创 hive篇
问题 1 说一下hive底层转为MapReduce ,底层是怎么转的[外链图片转存失败(img-TM3VhX7p-1567092295330)(assets/1566034076895.png)][外链图片转存失败(img-nOC78XJd-1567092295331)(assets/1566034087115.png)](3) 优化器(Query Optimizer):对逻辑执行计划进行优...
2019-09-21 22:40:11
1027
原创 hive与数据仓库篇
问题1、在hive中如何处理小文件合并问题问题2、hive的存储格式,以及压缩算法问题3、是用什么ETL工具进行hive中数据的ETL问题4、如何保证hive中数据的质量问题5、hive数据仓库的设计,项目中分了几层,每层有什么意义问题6、hive优化经验问题7、hive数据仓库中的建模方式,为什么选择这种建模方式问题8、分布式数据仓库的整体组织结构问题9、数据仓库如何同步,使用什...
2019-09-21 22:34:42
440
原创 scala_Akka并发编程框架
文章目录Akka并发编程框架简介Akka介绍Akka特性Akka通信过程创建ActorAPI介绍入门案例实现步骤1. 创建Maven模块2. 创建并加载Actor3. 发送/接收消息Akka定时任务使用方式示例一示例二实现两个进程之间的通信案例介绍1. Worker实现2. Master实现简易版spark通信框架案例案例介绍实现思路1. 工程搭建2. 构建Master和Worker3. Work...
2019-09-21 11:15:28
436
原创 scala_隐式转换
文章目录隐式转换和隐式参数定义示例隐式转换的时机自动导入隐式转换方法隐式参数定义示例隐式转换和隐式参数隐式转换和隐式参数是scala非常有特色的功能,也是Java等其他编程语言没有的功能。我们可以很方便地利用隐式转换来丰富现有类的功能。后面在编写Akka并发编程、Spark SQL、Flink都会看到隐式转换和隐式参数的身影。定义所谓隐式转换,是指以implicit关键字声明的带有单个...
2019-09-21 11:14:11
391
原创 scala_高阶函数
高阶函数scala 混合了面向对象和函数式的特性,在函数式编程语言中,函数是“头等公民”,它和Int、String、Class等其他类型处于同等的地位,可以像其他类型的变量一样被传递和操作。高阶函数包含作为值的函数匿名函数闭包柯里化等等作为值的函数在scala中,函数就像和数字、字符串一样,可以将函数传递给一个方法。我们可以对算法进行封装,然后将具体的动作传递给方法,这种特...
2019-09-21 11:12:59
255
原创 scala_Actor并发编程
文章目录Actor介绍Java并发编程的问题Actor并发编程模型Java并发编程对比Actor并发编程创建Actor使用方式示例Actor程序运行流程发送消息/接收消息使用方式示例持续接收消息示例使用loop和react优化接收消息示例发送和接收自定义消息示例一示例二示例三WordCount案例案例介绍思路分析步骤1 | 获取文件列表步骤2 | 创建WordCountActor步骤3 | 启动A...
2019-09-21 11:11:37
350
原创 scala_异常处理、提取器、泛型
文章目录异常处理捕获异常示例抛出异常示例 | 抛出异常提取器(Extractor)定义提取器示例泛型定义一个泛型方法示例泛型类定义示例上下界上界定义示例下界示例非变协变逆变示例异常处理来看看下面一段代码。 def main(args: Array[String]): Unit = { val i = 10 / 0 println("你好!") }Except...
2019-09-21 11:08:39
166
原创 scala_Option、偏函数、正则表达式
文章目录Option类型定义示例一示例二偏函数定义示例一示例二正则表达式定义示例一示例二示例三Option类型使用Option类型,可以用来有效避免空引用(null)异常。也就是说,将来我们返回某些数据时,可以返回一个Option类型来替代。定义scala中,Option类型来表示可选值。这种类型的数据有两种形式:Some(x):表示实际的值None:表示没有值使用...
2019-09-21 11:04:21
284
原创 scala_样例类、样例对象、模式匹配
文章目录样例类定义样例类示例 | 定义一个样例类示例 | 可变成员变量apply方法toString方法equals方法hashCode方法copy方法样例对象定义示例 | 定义枚举简单模式匹配示例定义示例守卫示例示例匹配集合匹配数组匹配列表匹配元组示例 | 获取数组中的元素示例 | 获取List中的数据样例类样例类是一种特殊类,它可以用来快速定义一个用于保存数据的类(类似于Java POJO...
2019-09-21 11:02:03
418
原创 scala_特质、模板模式、对象混入、调用链
文章目录特质(trait)定义trait作为接口使用示例 | 继承单个trait示例 | 继承多个trait示例 | object继承trait特质 | 定义具体的方法示例trait中定义具体的字段和抽象的字段定义示例使用trait实现模板模式定义示例对象混入trait定义示例trait实现调用链模式责任链模式trait调用链示例trait的构造机制定义示例定义示例特质(trait)scala...
2019-09-21 10:58:29
349
原创 scala_继承、类型判断、抽象类、匿名内部类
继承scala语言是支持面向对象编程的,我们也可以使用scala来实现继承,通过继承来减少重复代码。定义语法scala和Java一样,使用extends关键字来实现继承可以在子类中定义父类中没有的字段和方法,或者重写父类的方法类和单例对象都可以从某个父类继承语法class/object 子类 extends 父类 { ..}示例 | 类继承定义一个Person类...
2019-09-21 10:55:07
309
原创 scala_单例对象、apply方法
文章目录单例对象定义单例对象示例在单例对象中定义成员方法示例工具类案例需求步骤伴生对象定义伴生对象示例private[this]访问权限示例main方法定义main方法示例实现App Trait来定义入口示例伴生对象 | apply方法定义示例单例对象scala中没有Java中的静态成员,我们想要定义类似于Java的static变量、static方法,就要使用到scala中的单例对象——obj...
2019-09-21 10:51:56
417
原创 scala_类和对象、构造器
文章目录类和对象创建类和对象用法示例简写方式用法示例用法示例用法示例定义示例定义案例类的构造器主构造器示例辅助构造器语法示例类和对象scala是支持面向对象的,也有类和对象的概念。我们依然可以基于scala语言来开发面向对象的应用程序。创建类和对象用法使用class来定义一个类使用new来创建对象示例创建一个Person类,并创建它的对象步骤创建一个scala项目...
2019-09-21 10:49:47
222
原创 scala_函数式编程
文章目录函数式编程遍历 | foreach使用类型推断简化函数定义使用下划线来简化函数定义映射 | map用法案例一案例二扁平化映射 | flatMap定义案例定义案例排序默认排序 | sorted指定字段排序 | sortBy自定义排序 | sortWith定义示例聚合 | reduce定义案例折叠 | fold定义案例函数式编程我们将来使用Spark/Flink的大量业务代码都会使用到函...
2019-09-21 10:46:53
198
原创 scala_数组、列表、元组、集合、map
文章目录数组定长数组定义变长数组添加/修改/删除元素求和最大值最小值排序元组定义元组访问元组定义示例一示例二示例三可变列表定义示例一示例二可变列表操作示例判断列表是否为空拼接两个列表获取列表的首个元素和剩余部分反转列表获取列表前缀和后缀扁平化(压平)拉链与拉开转换字符串生成字符串并集交集差集不可变集定义示例一示例二基本操作示例定义示例不可变Map定义示例可变Map定义示例Map基本操作基本操作示例...
2019-09-21 10:44:07
733
原创 scala_方法和函数
文章目录方法定义方法返回值类型推断默认参数带名参数变长参数后缀调用法中缀调用法操作符即方法花括号调用法无括号调用法函数定义函数方法和函数的区别方法转换为函数方法一个类可以有自己的方法,scala中的方法和Java方法类似。但scala与Java定义方法的语法是不一样的。定义方法语法def methodName (参数名:参数类型, 参数名:参数类型) : [return type]...
2019-09-21 10:39:24
171
原创 scala_条件表达式、循环
文章目录条件表达式有返回值的if块表达式for表达式简单循环嵌套循环守卫for推导式while循环实现break实现continue条件表达式条件表达式就是if表达式,if表达式可以根据给定的条件是否满足,根据条件的结果(真或假)决定执行对应的操作。scala条件表达式的语法和Java一样。有返回值的if与Java不一样的是,[!NOTE]在scala中,条件表达式也是有返回值的...
2019-09-21 10:37:58
295
原创 scala_变量、字符串、数据类型
文章目录声明变量语法格式在解释器中定义一个变量val和var变量使用类型推断来定义变量惰性赋值使用双引号使用插值表达式使用三引号数据类型运算符scala类型层次结构声明变量我们将来每一天编写scala程序都会定义变量。那scala语言如何定义变量呢?语法格式Java变量定义int a = 0;在scala中,可以使用val或者var来定义变量,语法格式如下:val/var ...
2019-09-21 10:36:25
556
原创 scala_简介和安装
文章目录scala简介为什么使用scalascala对比Java案例安装JDK安装scala SDK安装IDEA scala插件scala简介scala是运行在JVM上的多范式编程语言,同时支持面向对象和面向函数编程早期,scala刚出现的时候,并没有怎么引起重视,随着Spark和Kafka这样基于scala的大数据框架的兴起,scala逐步进入大数据开发者的眼帘。scala的主要优势是它...
2019-09-21 10:32:10
293
原创 HBase篇
问题1、HBase的gc调优,为什么问题2、HBase的读写机制问题3、HBase如何设计rowkey,如何在负载均衡和读写性能之间做出平衡问题4、hive和hbase的区别问题5、介绍hbase的协处理器...
2019-09-20 23:14:41
194
转载 Hsql函数下
Hsql函数.下(窗口函数、分析函数、增强group)参考链接:https://blog.csdn.net/scgaliguodong123_/article/details/601353851.窗口函数与分析函数应用场景:(1)用于分区排序(2)动态Group By(3)Top N(4)累计计算(5)层次查询1.1、窗口函数FIRST_VALUE:取分组内排序后,...
2019-09-20 22:32:49
943
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人