加载中
Spark Core 实现排序的三种方式

一、普通的实现方式 val data: RDD[String] = sc.parallelize(Array("aa 200 3000", "bb 200 4000", "cc 999 3000", "dd 10 20000")) data.map(x => { val splits: Array[String] = x.split(...

昨天 23:06
0
Spark on yarn 资源调优

Spark作业在运行的时候应该分配足够多的资源, 在一定范围内, 增加资源和性能提升是成正比的。 提交到Yarn上时, 相关配置: --driver-memory Driver的内存 --executor-memory Executor的内存...

昨天 22:59
0
Kafka消费者分区分配策略

当有多个消费者和多个分区时, 该如何分配它们?配置项partition.assignment.strategy决定了分配策略。 range (默认) 配置为org.apache.kafka.clients.consumer.RangeAssignor 对于每一个Top...

昨天 18:07
0
Spark的宽依赖与窄依赖

窄依赖(Narrow Dependency): 一个父RDD的Partition只能被子RDD的某一个Partition使用一次 宽依赖(Wide Dependency):发生了Shuffle。一个父RDD的Partition只能被子RDD的某一个Partition使用...

昨天 13:18
0
Spark persist 持久化

持久化算子可以将计算结果保存起来, 不必重新计算。 相关源码 持久化算子cache, persist, unpersist源码如下: /** * Persist this RDD with the default storage level (`MEMORY_ONLY`). *...

昨天 12:01
0
Spark Application

名称 解释 Application 被提交的Spark作业。由一个Driver和多个Executor构成。 Driver program 运行main主函数并创建SparkContext的进程。 Cluster manager 获取资源的额外服务 Worker node ...

昨天 10:33
0
flume写到HDFS处理小文件问题

当使用hdfs sink时 有可能会产生严重的小文件问题。 通过配置rollInterval, rollSize, rollCount三个参数来缓解小文件问题。 a1.sinks.hdfssink.type = hdfs a1.sinks.hdfssink.hdfs.path .....

前天 23:24
0
Spark on yarn

yarn 的执行流程 Spark Application Spark与MapReduce的区别 MapReduce是基于进程的, mapTask、reducerTask 都是进程。当task完成了, 这个进程就结束了。 Spark是基于线程的, 多个task并行...

Spark 累加器 Accumulator

Spark的累加器Accumulator中, Executor内只能做add操作, 只有Driver才能读取它的值。 val doubleAcc: DoubleAccumulator = sc.doubleAccumulator("doubleAcc") val collAcc: CollectionAccu...

前天 16:32
0
Spark History Server

当Spark程序运行时, 会开启一个web服务显示该程序的详细信息, 但是程序运行完过后便不再能访问这个页面了。 开启Spark的HistoryServer后, 可以记录并显示这些信息。 配置 编辑 spark-defa...

前天 16:03
0
Spark Streaming 及相关算子

外部数据源 如果使用了基于receiver的数据源, 则receiver会占用一个进程来接受数据, 如果运行的环境上只有一个cpu核心, 那么SparkStreaming程序无法正常运行。 相关transformation算子 tr...

08/16 12:06
0
Spark添加数据至Hive分区表

准备工作: 创建hive分区表 create table login_origin( created_date string, event_id string, dev_mac string, domain string, session_id string, dev_name string, country string, la...

08/15 21:24
0
Spark Streaming与kafka对接

使用KafkaUtil来实现SparkStreaming的对接。 KafkaUtil共有两个版本: spark-streaming-kafka-0-8 spark-streaming-kafka-0-10 kafka version 0.8.2.1 or higher 0.10.0 or higher Offset C...

08/15 21:09
0
flume kafka sink 抛出异常 Bootstrap Servers must be specified

使用flume kafka sink时, 启动flume抛出异常 Sink kafkasink has been removed due to an error during configuration org.apache.flume.conf.ConfigurationException: Bootstrap Servers m...

在IDEA本地Spark连接Hive

步骤 复制hive-site.xml、hdfs-site.xml文件至项目的资源文件夹。 maven中引入spark-hive_2.11以及访问元数据数据库所需要的依赖如mysql-connector-java <dependency> <groupId>org.apache.s...

解决HDFS突然无法启动

启动HDFS时, 突然NameNode无法启动。 日志上抛出如下异常: Failed to load image from FSImageFile(file=/dfs/nn/current/fsimage_0000000000000020745, cpktTxId=0000000000000020745) ja...

使用DBeaver连接hive

使用DBeaver连接hive1.1.0时, 会抛出Required field 'client_protocol' is unset的异常, 原因是默认的驱动不匹配。 解决方案: 将$HIVE_HOME/jars下的hive-jdbc-1.1.0-cdh5.16.1-standalon...

08/03 09:37
5
解决Spark读取HDFS小文件的问题

若Spark读取HDFS文件夹时, 其中的小文件过多会降低程序性能,也给HDFS带来压力。 当Spark读取文件时, 会为每个文件的数据分配一个Partition, 可以使用coalesce算子减少rdd中的分区。 首先...

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 sources, or the bu...

08/01 16:09
2
Flume 修改TaildirSource源码支持递归目录

1. 下载flume源码, 并将Taildir Source相关源码复制到自己的项目中。 本例使用的源码为 flume-ng-1.6.0-cdh5.16.1 相关代码文件有: ReliableTaildirEventReader.java TaildirMatcher Taild...

07/30 23:37
22

没有更多内容

加载失败,请刷新页面

返回顶部
顶部