chilai4545
码龄9年
关注
提问 私信
  • 博客:55,541
    55,541
    总访问量
  • 暂无
    原创
  • 2,000,740
    排名
  • 0
    粉丝
  • 0
    铁粉
  • 加入CSDN时间: 2016-04-17
博客简介:

chilai4545的博客

查看详细资料
个人成就
  • 获得11次点赞
  • 内容获得0次评论
  • 获得86次收藏
创作历程
  • 33篇
    2019年
创作活动更多

超级创作者激励计划

万元现金补贴,高额收益分成,专属VIP内容创作者流量扶持,等你加入!

去参加
  • 最近
  • 文章
  • 代码仓
  • 资源
  • 问答
  • 帖子
  • 视频
  • 课程
  • 关注/订阅/互动
  • 收藏
搜TA的内容
搜索 取消

Spark kryo序列化

Spark中序列化的目的:序列化后数据更小,更便于传输和存储, 但是会耗用更多的cpu资源。 Spark中数据共有两种序列化方式: java :(默认) 兼容性好, 但是慢、较大。 Kryo :快, 较小, 但是需要手动地注册用到的类。 kryo的用法 : val sp...
转载
发布博客 2019.08.19 ·
257 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Spark Core 实现排序的三种方式

一、普通的实现方式 val data: RDD[String] = sc.parallelize(Array("aa 200 3000", "bb 200 4000", "cc 999 3000", "dd 10 20000")) data.map(x => {...
转载
发布博客 2019.08.18 ·
408 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Spark on yarn 资源调优

Spark作业在运行的时候应该分配足够多的资源, 在一定范围内, 增加资源和性能提升是成正比的。 提交到Yarn上时, 相关配置: --driver-memory Driver的内存 --executor-memory Executor的内存 --executor-cores Executor...
转载
发布博客 2019.08.18 ·
507 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Kafka消费者分区分配策略

当有多个消费者和多个分区时, 该如何分配它们?配置项partition.assignment.strategy决定了分配策略。 range (默认) 配置为org.apache.kafka.clients.consumer.RangeAssignor 对于每一个Topic, 计算Pa...
转载
发布博客 2019.08.18 ·
415 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

Spark的宽依赖与窄依赖

窄依赖(Narrow Dependency): 一个父RDD的Partition只能被子RDD的某一个Partition使用一次 宽依赖(Wide Dependency):发生了Shuffle。一个父RDD的Partition只能被子RDD的某一个Partition使用多次 PS: join...
转载
发布博客 2019.08.18 ·
131 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Spark persist 持久化

持久化算子可以将计算结果保存起来, 不必重新计算。 相关源码 持久化算子cache, persist, unpersist源码如下: /** * Persist this RDD with the default storage level (`MEMORY_ONLY`...
转载
发布博客 2019.08.18 ·
268 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Spark Application

名称 解释 Application 被提交的Spark作业。由一个Driver和多个Executor构成。 Driver program 运行main主函数并创建SparkContext...
转载
发布博客 2019.08.18 ·
240 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

flume写到HDFS处理小文件问题

当使用hdfs sink时 有可能会产生严重的小文件问题。 通过配置rollInterval, rollSize, rollCount三个参数来缓解小文件问题。 a1.sinks.hdfssink.type = hdfsa1.sinks.hdfssin...
转载
发布博客 2019.08.17 ·
736 阅读 ·
1 点赞 ·
0 评论 ·
0 收藏

Spark on yarn

yarn 的执行流程 Spark Application Spark与MapReduce的区别 MapReduce是基于进程的, mapTask、reducerTask 都是进程。当task完成了, 这个进程就结束了。 Spark是基于线程的, 多个task并行...
转载
发布博客 2019.08.17 ·
85 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Spark 累加器 Accumulator

Spark的累加器Accumulator中, Executor内只能做add操作, 只有Driver才能读取它的值。 val doubleAcc: DoubleAccumulator = sc.doubleAccumulator("doubleAcc") val collA...
转载
发布博客 2019.08.17 ·
169 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Spark History Server

当Spark程序运行时, 会开启一个web服务显示该程序的详细信息, 但是程序运行完过后便不再能访问这个页面了。 开启Spark的HistoryServer后, 可以记录并显示这些信息。 配置 编辑 spark-defaults.conf, 修改参数spark.eventlog.ebab...
转载
发布博客 2019.08.17 ·
127 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Spark Streaming 及相关算子

外部数据源 如果使用了基于receiver的数据源, 则receiver会占用一个进程来接受数据, 如果运行的环境上只有一个cpu核心, 那么SparkStreaming程序无法正常运行。 相关transformation算子 transform 将DStream中的...
转载
发布博客 2019.08.16 ·
170 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

Spark添加数据至Hive分区表

准备工作: 创建hive分区表 create table login_origin(created_date string,event_id string,dev_mac string,domain string,session_id string,dev_na...
转载
发布博客 2019.08.15 ·
1426 阅读 ·
1 点赞 ·
0 评论 ·
2 收藏

Spark Streaming与kafka对接

使用KafkaUtil来实现SparkStreaming的对接。 KafkaUtil共有两个版本: spark-streaming-kafka-0-8 spark-streaming-kafka-0-10 kafk...
转载
发布博客 2019.08.15 ·
258 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

flume kafka sink 抛出异常 Bootstrap Servers must be specified

使用flume kafka sink时, 启动flume抛出异常 Sink kafkasink has been removed due to an error during configurationorg.apache.flume.conf.ConfigurationExceptio...
转载
发布博客 2019.08.07 ·
3268 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

在IDEA本地Spark连接Hive

步骤复制hive-site.xml、hdfs-site.xml文件至项目的资源文件夹。maven中引入spark-hive_2.11以及访问元数据数据库所需要的依赖如mysql-connector-java <dependency> <group...
转载
发布博客 2019.08.03 ·
908 阅读 ·
0 点赞 ·
0 评论 ·
4 收藏

解决HDFS突然无法启动

启动HDFS时, 突然NameNode无法启动。日志上抛出如下异常:Failed to load image from FSImageFile(file=/dfs/nn/current/fsimage_0000000000000020745, cpktTxId=00000000000000...
转载
发布博客 2019.08.03 ·
1644 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏

使用DBeaver连接hive

使用DBeaver连接hive1.1.0时, 会抛出Required field 'client_protocol' is unset的异常, 原因是默认的驱动不匹配。解决方案: 将$HIVE_HOME/jars下的hive-jdbc-1.1.0-cdh5.16.1-standalone.j...
转载
发布博客 2019.08.03 ·
1190 阅读 ·
0 点赞 ·
0 评论 ·
1 收藏

解决Spark读取HDFS小文件的问题

若Spark读取HDFS文件夹时, 其中的小文件过多会降低程序性能,也给HDFS带来压力。当Spark读取文件时, 会为每个文件的数据分配一个Partition, 可以使用coalesce算子减少rdd中的分区。首先, 编写函数实现根据文件大小来确定分区数的功能 def coale...
转载
发布博客 2019.08.03 ·
1003 阅读 ·
0 点赞 ·
0 评论 ·
5 收藏

flume异常org.apache.flume.ChannelFullException

使用flume接受avro数据时, 抛出异常org.apache.flume.ChannelFullException: Space for commit to queue couldn't be acquired. Sinks are likely not keeping up with ...
转载
发布博客 2019.08.01 ·
1063 阅读 ·
0 点赞 ·
0 评论 ·
0 收藏
加载更多