自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 MySql允许远程连接命令

grant all on *.* to 用户名@'%' identified by '密码' with grant option;flush privileges;

2020-08-30 23:52:38 165

原创 Flume安装启动,入门案例

安装1,上传解压tar -zxvf apache-flume-1.9.0-bin.tar.gz -C ./ok,完成,解压即用2,启动根据数据采集的需求配置采集方案,描述在配置文件中(文件名可任意自定义)启动命令示例:bin/flume-ng agent -c ./conf ...开启内置监控功能:-Dflume.monitoring.type=http -Dflume.monitoring.port=34545入门案例taildir source + memor

2020-08-30 21:03:44 242

原创 Spark Streaming整合kafka

maven依赖<dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-streaming_2.12</artifactId> <version>3.0.0</version></dependency><dependency> <groupId>org.apach

2020-08-27 23:19:17 189

原创 Spark Streaming入门WordCount案例

maven依赖:<dependency> <groupId>org.apache.spark</groupId> <artifactId>spark-streaming_2.12</artifactId> <version>3.0.0</version> </dependency>代码:import org.apache.spark.streaming.dstrea

2020-08-27 19:57:55 201

原创 clickHouse安装

#################单节点安装1)安装curl工具yum install -y curl2)添加clickhouse的yum镜像curl -s https://packagecloud.io/install/repositories/altinity/clickhouse/script.rpm.sh | sudo bash3)检查镜像情况[root@linux03]# yum list | grep clickhouse click...

2020-08-24 20:20:30 414

原创 Redis常用操作命令

String127.0.0.1:6379> set name zhangsanOK127.0.0.1:6379> keys *1) "name"127.0.0.1:6379> get name"zhangsan"127.0.0.1:6379> set age 18OK127.0.0.1:6379> get age"18"自增 incr 自减 decr127.0.0.1:6379> incr age(integer) 19127.0.0.1

2020-08-23 23:26:00 166

原创 Redis数据类型

Redis中存储数据是通过key-value存储的,对于value的类型有以下几种:String Map<String, String>Hash Map<String, Map<String, String>>List Map<String, List>Set Map<String, HasSet>zSet Map<Stri...

2020-08-23 22:45:33 135

原创 java连接redis常用API

Maven依赖<dependency> <groupId>redis.clients</groupId> <artifactId>jedis</artifactId> <version>2.8.1</version></dependency>Stringimport redis.clients.jedis.Jedisobject StringValueDemo2 {

2020-08-23 22:38:59 375

原创 Redis安装

1,上传解压[root@linux03 app]# tar -zxvf ./redis-5.0.9.tar.gz -C ./2,进入到安装目录中,编译并安装redismake && make install如果报错的话,说明缺少gcc编译环境安装gcc:yum -y install gcc重新编辑:make MALLOC=libc && make install3,修改配置文件前两步执行完后redis已经安装完成,拷贝red

2020-08-23 21:48:02 132

原创 spark3.0新特性

1,动态分区裁剪老版本:比如上面的 SQL 查询,假设 t2 表 t2.id < 2 过滤出来的数据比较少,但是由于之前版本的 Spark 无法进行动态计算代价,所以可能会导致 t1 表扫描出大量无效的数据。有了动态分区裁减,可以在运行的时候过滤掉 t1 表无用的数据优化后:比如下面的查询,基于代价的模型优化不可能准确的评估而有了 AQE 之后,Spark 就可以动态统计相关信息,并动态调整执行计划,比如把 SortMergeJoin 变成 BroadcastHash.

2020-08-23 20:38:18 295

原创 SortShuffleManager

参考链接:https://www.cnblogs.com/xiaodf/p/10650921.html

2020-08-21 21:52:53 235

原创 SparkSQL自定义函数

1,UDF,输入一行返回一行(自定义拼接字符串案例):object MyUDF { def main(args: Array[String]): Unit = { val spark: SparkSession = SparkSession.builder() .appName(this.getClass.getSimpleName) .master("local[*]") .getOrCreate() import spark.impli

2020-08-21 20:36:29 360

原创 SparkSQL整合Hive

1,hive连接的MySQL中创建一个普通用户,并且授权 CREATE USER 'spark'@'%' IDENTIFIED BY '123456'; GRANT ALL PRIVILEGES ON hivedb.* TO 'spark'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION; FLUSH PRIVILEGES;2,spark安装目录conf下添加hive-site.xml配置MySQL表空间,配置第一步创建的用户名和密码&lt

2020-08-20 18:50:03 238

原创 SparkSQL流量统计案例

数据:+---+-------------------+-------------------+----+| id| startTime| endTime|flow|+---+-------------------+-------------------+----+| 1|2020-02-18 14:20:30|2020-02-18 14:46:30| 20|| 1|2020-02-18 14:47:20|2020-02-18 15:20:30|

2020-08-19 23:43:00 370

原创 从结构化文件创建DataFrame

1,CSVobject CreateDataFrameFromCSV { def main(args: Array[String]): Unit = { val spark: SparkSession = SparkSession.builder() .appName(this.getClass.getSimpleName) .master("local[*]") .getOrCreate() //获取数据的schema信息,每一行都有读取

2020-08-18 21:41:40 387

原创 创建DataFrame的几种方式

1,从RDD[Case class类]创建DataFrameimport org.apache.spark.rdd.RDDimport org.apache.spark.sql.{DataFrame, SparkSession}object SparkSQL02 { def main(args: Array[String]): Unit = { val spark: SparkSession = SparkSession.builder().appName(this.getClas

2020-08-18 21:20:06 808

原创 SparkSQL第一个程序,统计wordCount

import org.apache.spark.sql.{DataFrame, Dataset, Row, SparkSession}object SparkSQL01 { def main(args: Array[String]): Unit = { val spark: SparkSession = SparkSession.builder().appName(this.getClass.getName).master("local[*]").getOrCreate() .

2020-08-18 20:18:50 208

原创 Spark自定义排序

1,实现comparable接口和Serializable接口class GoodsBean( money: Double, pid: String, cid: String, coverUrl: String, title: String) extends Comparable[GoodsBean] with Serializable { override def compareTo(o: GoodsBean): Int = { this

2020-08-17 17:14:58 134

原创 Spark中OOM问题解决方案

1,避免在算子内部使用scala的方法将集合toList,如果只是取TopN的话可以定义排序规则,使用spark的top()算子错误示范:解决方法:定义排序规则,使用rdd的top() val bigdataRDD: RDD[((String, String), Int)] = rdd1.filter(_._1._1.equals(sub)) implicit val orderRules: Ordering[((String, String), Int)] = Or

2020-08-11 11:50:36 469

原创 Spark组内TopN

数据:http://bigdata.51doit.cn/laozhanghttp://bigdata.51doit.cn/laozhanghttp://bigdata.51doit.cn/laozhaohttp://bigdata.51doit.cn/laozhaohttp://bigdata.51doit.cn/laozhaohttp://bigdata.51doit.cn/laozhaohttp://bigdata.51doit.cn/laozhaohttp://bigdata.51

2020-08-10 22:49:23 146

原创 spark求连续登陆天数

数据:guid01,2018-02-28guid01,2018-03-01guid01,2018-03-02guid01,2018-03-04guid01,2018-03-05guid01,2018-03-06guid01,2018-03-07guid02,2018-03-01guid02,2018-03-02guid02,2018-03-03guid02,2018-03-06代码:import java.text.SimpleDateFormatimport jav

2020-08-10 22:14:12 354

原创 fastjson转换scala对象 报错 :default constructor not found

报错:com.alibaba.fastjson.JSONException: default constructor not found. class解决:之前引入的是1.2.32版本的,fastjson低版本不兼容 <dependency> <groupId>com.alibaba</groupId> <artifactId>fastjson</artifactId>...

2020-08-07 23:05:27 724 3

原创 Spark自定义实现groupByKey和reduceByKey

自定义

2020-08-07 20:23:16 501

原创 RDD的五个特性(入门)

1,有一些列连续的分区:分区编号从0开始,分区的数量决定了对应阶段Task的并行度2,有一个函数作用在每个输入切片上: 每一个分区都会生成一个Task,对该分区的数据进行计算,这个函数就是具体的计算逻辑3,RDD和RDD之间存在一些列依赖关系:RDD调用Transformation后会生成一个新的RDD,子RDD会记录父RDD的依赖关系,包括宽依赖(有shuffle)和窄依赖(没有shuffle)4,(可选的)K-V的RDD在Shuffle会有分区器,默认使用HashPartitioner5

2020-08-06 20:05:14 696

原创 集群和本地运行Spark程序

集群运行scala版package test01import org.apache.spark.rdd.RDDimport org.apache.spark.{SparkConf, SparkContext}object WordCount { def main(args: Array[String]): Unit = { val conf = new SparkConf().setAppName("WordCount") val sc = new SparkCo

2020-08-04 21:21:10 249

原创 Scala编写Kafka连接程序

pom.xml <dependencies> <!-- 导入scala的依赖 --> <dependency> <groupId>org.scala-lang</groupId> <artifactId>scala-library</artifactId> <version>${scala.vers

2020-08-03 20:56:21 1611

原创 Kafka入门安装

Kafka特点:1.解耦:允许你独⽴的扩展或修改两边的处理过程,只要确保它们遵守同样的接⼝约束。2.冗余:消息队列把数据进⾏持久化直到它们已经被完全处理,通过这⼀⽅式规避了数据丢失⻛险。许多消息队列所采⽤的"插⼊-获取-删除"范式中,在把⼀个消息从队列中删除之前,需要你的处理系统明确的指出该消息已经被处理完毕,从⽽确保你的数据被安全的保存直到你使⽤完毕。3.扩展性:因为消息队列解耦了你的处理过程,所以增⼤消息⼊队和处理的频率是很容易的,只要另外增加处理过程即可。4.灵活性 &

2020-08-03 19:17:06 145

原创 Scala泛型

泛型

2020-08-01 21:26:44 154

原创 Scala隐式转换

柯里化隐式转换

2020-08-01 21:26:03 218

空空如也

空空如也

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

TA关注的人

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