
Spark
tom_fans
这个作者很懒,什么都没留下…
展开
-
Spark使用log4j记录日志,并在Yarn WebUi显示
spark on yarn在执行的时候,开发人员通常希望能够单独使用log4j来记录自己的日志。一般来说当我们使用System.out.println的时候,日志会输出在stdout,而且其他的日志会显示在stderr里面。那么如何使用log4j记录日志并显示在自己的日志文件中,并在Yarn WebUI呢?我们使用spark默认自带的pi程序来作为例子。/data/spark-2.4.3...原创 2020-03-26 18:22:51 · 1319 阅读 · 0 评论 -
Spark读写HBASE
scala访问HBASE通常2种方式,一种是使用SPARK方式读取HBASE数据直接转换成RDD, 一种采用和JAVA类似的方式,通过HTable操作HBASE,数据获取之后再自己进行处理。 这2种方式区别应该是RDD是跑在多节点通过从HBASE获取数据,而采用HTable的方式,应该是串行了,仅仅是HBASE层面是分布式而已。1. 转换为RDDpackage com.isesol.s原创 2017-06-30 10:16:57 · 811 阅读 · 0 评论 -
Spark Streaming消息的传输与保证及编程示例
Spark streaming的文档其实已经比较详细的介绍了, 我简单的复述一次。 只要涉及到消息,就包含2个阶段, 获取数据以及存储处理后的数据。Spark低级API采用WAL + ZK的方式保证at least once(不能保证exactly once), 获取数据之后spark会先把数据写入WAL,并把拿到的offset存储到ZK里面。 处理完数据之后然后返回确认机制,表示消息已经处原创 2017-08-17 18:32:05 · 444 阅读 · 0 评论 -
Spark Streaming exactly once原理及编程示例
上一节内容介绍了spark介绍了at least once以及at most once的实现原理,这里再重复一次,毕竟这些概念非常重要。 任何涉及到消息队列的服务,都会出现3个层面的问题,一个是获取数据,一个是处理数据,一个是存储数据 . 因此在谈论at least once/exactly once也要分3个阶段(这一点storm和spark是不同的,因为storm是等待处理完数据发送ACK的方原创 2017-08-22 12:47:05 · 877 阅读 · 0 评论 -
Spark job, stage, task, partition相关问题
数据:panda,0pink,3pirate,3panda,1pink,4coffee,3dog,2dog,3根据key求value的平均值 line.map { line => (line.split(",")(0), line.split(",")(1))}.mapValues { x => (x.toDouble,1) } .re原创 2017-11-09 18:03:27 · 884 阅读 · 0 评论 -
Spark处理时间序列数据
整个逻辑为: 设备端毫秒级生成数据以文本方式传输到HDFS,然后通过SPARK解析文件并存储到HBASE中。问题1:SPARK本身为分布式,如果通过分布式解析文件并存储,如何保证数据系列顺序?问题2:使用SPARK进行HBASE插入的时候,使用RddPartitionForeach,然后给每条记录生成时间戳,并插入到HBASE,发现即使是微妙级别,在foreach的时候仍然会出现时间相同的原创 2018-01-15 17:45:51 · 5145 阅读 · 0 评论 -
Spark (null) entry in command string: null chmod 0700
使用ecplise来提交SPARK SQL的时候报错:Exception in thread "main" org.apache.spark.sql.AnalysisException: java.lang.RuntimeException: java.io.IOException: (null) entry in command string: null chmod 0700 C:\Use...原创 2018-12-27 12:29:37 · 2842 阅读 · 0 评论 -
Hive/Impala/Hbase/Spark Kerberos
使用hadoop Kerberos有几个地方需要注意,避免真实环境老是有问题:1. 我以前使用IP地址构建集群(虽然也用了DNS解析),但是有时候你直接通过主机名+DNS解析来做集群,这2者从我实际测试来看是有区别的,使用IP没有任何问题,但是使用DNS解析,开启kerberos总是会有些许问题,因此如果使用DNS解析,建议客户端连接kerberos的主机把集群的IP和主机名写入/etc/ho...原创 2018-12-25 10:11:05 · 864 阅读 · 0 评论