- 博客(6)
- 收藏
- 关注
原创 spark自定义UDAF函数
import org.apache.spark.sql.Row import org.apache.spark.sql.expressions.{MutableAggregationBuffer, UserDefinedAggregateFunction} import org.apache.spark.sql.types.{DataType, StringType, StructField, StructType} class GroupConcatDistinct extends UserDefin.
2020-06-23 09:42:34 167
原创 scala中常用工具类整理
/* * Copyright (c) 2018. Atguigu Inc. All Rights Reserved. */ package commons.utils import java.text.SimpleDateFormat import java.util.{Calendar, Date} import net.sf.json.JSONObject import org.joda.time.DateTime import org.joda.time.format.DateTimeFo.
2020-06-20 13:20:09 630
原创 HBASE知识回顾
HBase 概念 NameSpace : 可以把NameSpace理解为RDBMS的“数据库” Table:表名必须是能用文件路径里的合法名字(Hbase表映射为HDFS上文件) Row : 在表里面,每一行代表一个数据对象,每一行都是以一个行键来进行唯一标识的,行键没有特定的数据类型,以二进制字节来存储 Column :Hbase的列由Column family 和Column qualifier 组成,由冒号(:)进行间隔,比如family :qualifier RowKey : 可以唯一标识一行记录.
2020-06-19 10:43:21 301
原创 Kafka知识回顾
为什么要使用Kafka? 1.解耦合 2.削峰 kafka基本架构与message结构 kafka由producer,broker,consumer组成 message由key和value组成 如果key不为空会根据hashcode值,分配到不同的分区里面 如果key == null,则从sendPartitionPerTopicCache(sendPartitionPerTopicCache的类型是HashMap.empty[String, Int])中获取分区ID,如果找到了.
2020-06-19 09:51:09 183
原创 Flume框架回顾
Flume的三大组件以及Event结构? source ,channel,sink Event有两部分构成:header和body,body里面是存真正数据的 1)Source (1)Taildir Source相比Exec Source、Spooling Directory Source的优势 TailDirSource:断点续传、多目录。Flume1.6以前需要自己自定义Source记录每次读取文件位置,实现断点续传。 ExecSource可以实时搜集数据,但是在Flume不运行或...
2020-06-19 08:48:10 169
原创 sparkstreaming和kafka集成知识回顾
SparkStreaming的Recevier方式和直连方式有什么区别? Recevier接收固定时间间隔的数据(放在内存当中),使用kafka高级的API,自动维护偏移量,达到固定时间才进行处理,效率低并且容易丢失数据 Direct直连方式,相当于直接连到kafka的分区上,使用kafka底层的API,效率高,需要自己维护偏移量 ...
2020-06-18 11:35:34 223
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人