Spark
大米饭精灵
无敌的我。。咳咳
展开
-
Spark-01
一、必须知道 SparkContext sparkContext在Spark应用程序的执行过程中起着主导作用,它负责与程序和spark集群进行交互,包括申请集群资源、创建RDD、accumulators及广播变量等。sparkContext与集群资源管理器、work节点交互图如下: sparkContext构建的顶级三大核心:DAGScheduler,TaskSc...原创 2018-04-15 12:08:27 · 128 阅读 · 0 评论 -
SparkSQL 外部数据源
http://spark.apache.org/docs/latest/sql-programming-guide.html#data-sources原创 2018-06-04 21:18:43 · 155 阅读 · 0 评论 -
SparkSQL-03
SparkSQL的三个愿景: 1.Less Code a)可以自己推导schema(比如:直接读取json、Parquet,结构在数据文件中有) b) ...原创 2018-06-07 23:54:29 · 183 阅读 · 0 评论 -
Spark SQL 外部数据源(External DataSource)
1 概述 1.Spark1.2中,Spark SQL开始正式支持外部数据源。Spark SQL开放了一系列接入外部数据源的接口,来让开发者可以实现。使得Spark SQL可以加载任何地方的数据,例如mysql,hive,hdfs,hbase等,而且支持很多种格式如json, parquet, avro, csv格式。我们可以开发出任意的外部数据源来连接到Spark SQL,然后我们就可以通过外...转载 2018-12-13 00:07:02 · 463 阅读 · 0 评论 -
Spark 各种参数解释总结
1 spark on yarn常用属性介绍属性名默认值属性说明spark.yarn.am.memory512m在客户端模式(client mode)下,yarn应用master使用的内存数。在集群模式(cluster mode)下,使用spark.driver.memory代替。spark.driver.cores1在集群模式(cluster mode)下,driver程序使用的核数。在集群模式(...转载 2018-06-14 12:05:21 · 3669 阅读 · 0 评论 -
SparkSQL UDF&&函数
1.SparkSQL自带的Functions在idea中,双击shift,搜索functions,里面有很多自定义函数package RDD_DATAFRAME_DATASETimport org.apache.spark.sql.SparkSession/** * SparkSQL函数如何使用 "2018-01-01,50,1111", "2018-01-01,60,...原创 2018-06-08 00:42:00 · 3947 阅读 · 0 评论 -
SparkSQL 之开发环境造数据
import java.io.BufferedWriter;import java.io.FileOutputStream;import java.io.IOException;import java.io.OutputStreamWriter;import java.text.SimpleDateFormat;import java.util.Date;import java.uti...原创 2018-06-08 15:35:53 · 522 阅读 · 0 评论 -
Spark DataFrame vs Dataset
DataFrame vs DatasetDataFrame = Dataset[Row]SchemaRDD ---------->DataFrame ---------->Dataset rename due to compile-time type safety OO structure cha...原创 2018-06-09 23:57:56 · 357 阅读 · 0 评论 -
SparkSQL Catalog
http://spark.apache.org/docs/latest/sql-programming-guide.html#Catalog interface for Spark. To access this, use `SparkSession.catalog`.Spark的目录界面。 要访问这个,使用`SparkSession.catalog`。val catalog = spark.c...原创 2018-06-10 08:16:36 · 815 阅读 · 0 评论 -
SparkSQL 开发中遇到的参数坑-1
SQLConf 默认情况下ORC文件格式的文件,过滤条件默认不适用谓词下压导致性能极差。但是他默认是压缩的,10000条verifyPartitionPath也是false的原创 2018-06-10 08:29:14 · 426 阅读 · 0 评论 -
Spark转换(transform)与动作(action)一览
【说的很特么抽象,能看得懂算你厉害啊,所以代码详解:一个Spark Demo与代码详解以下func,大部分时候为了让逻辑更清楚,推荐使用匿名函数!(lambda)】【ps:java和python的api是一样的,名字和参数没有变化】转换含义map(func)每一个输入元素经过func函数转换后输出一个元素filter(func)返回经过 func 函数计算后返回值为 true 的输入元素组成的一个...转载 2018-07-08 15:52:58 · 836 阅读 · 0 评论 -
Spark会把数据都载入到内存么?
前言很多初学者其实对Spark的编程模式还是RDD这个概念理解不到位,就会产生一些误解。比如,很多时候我们常常以为一个文件是会被完整读入到内存,然后做各种变换,这很可能是受两个概念的误导:RDD的定义,RDD是一个分布式的不可变数据集合Spark 是一个内存处理引擎如果你没有主动对RDDCache/Persist,它不过是一个概念上存在的虚拟数据集,你实际上是看不到这个RDD的数据的全集的(他不会...转载 2018-06-20 16:17:38 · 1254 阅读 · 0 评论 -
Spark性能优化指南——高级篇
本文转自:http://tech.meituan.com/spark-tuning-pro.html http://lxw1234.com/archives/2016/05/663.htm感谢原作者前言继基础篇讲解了每个Spark开发人员都必须熟知的开发调优与资源调优之后,本文作为《Spark性能优化指南》的高级篇,将深入分析数据倾斜调优与shuffle调优,以解决...转载 2018-06-20 16:19:22 · 167 阅读 · 0 评论 -
如何优雅地关闭SparkStreaming
https://www.jianshu.com/p/b11943c94b8a参考2(已经过时)给出来一个方法,在scala中sys.ShutdownHookThread可以捕获SIGTERM方法,所以当收到kill -SIGTERM时,能够优雅的退出;def main(args: Array[String]) { // Prepare your environment val ss...转载 2018-06-28 22:30:43 · 881 阅读 · 0 评论 -
Spark的两种分布式部署模式: Mesos,Yarn
(转载地址:http://dongxicheng.org/framework-on-yarn/apache-spark-comparing-three-deploying-ways/)目前Apache Spark支持三种分布式部署方式,分别是standalone、spark on mesos和 spark on YARN,其中,第一种类似于MapReduce 1.0所采用的模式,内部实现了容错性和...原创 2018-07-05 22:24:29 · 3104 阅读 · 0 评论 -
Spark Streaming中WAL内幕实现彻底解密
Spark Streaming中WAL内幕实现彻底解密1 WAL 框架和实现2 spark streaming中WAL的使用WAL 是一个存储系统,相当于Blockmanager,可以简单的认为,WAL就是一个文件系统。WAL 在存储系统上面加了一层,加了一个时间维度和索引的位置。 ...转载 2018-06-11 16:59:57 · 640 阅读 · 0 评论 -
sparkstreaming + kafka如何保证数据不丢失、不重复
spark-streaming作为一个24*7不间断运行的程序来设计,但是程序都会crash,如果crash了,如何保证数据不丢失,不重复。Input DStreams and Receiversspark streaming提供了两种streaming input source:basic source: Source directly avaliable in the StreamingCon...转载 2018-06-11 16:56:06 · 2807 阅读 · 0 评论 -
Spark编译
1.环境CentOS6.4hadoop 主机名app 存放安装软件目录software存放软件包tardata 存放我们的测试数据lib 存放我们自己的jarsource 存放源码2.官网下载spark源码[root@hadoop ~]# wget https://d3kbcqa49mib13.cloudfront.net/spark-2.2.0.tgz3.解压 tar -zxvf 所有的文件(J...原创 2018-04-15 12:07:32 · 139 阅读 · 0 评论 -
Spark报错001
FAILED: Execution Error,return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask.MetaException(message:Got exception:org.apache.hadoop.ipc.RemoteException Cannot create directory/user/hive/warehouse/...原创 2018-04-23 17:34:58 · 179 阅读 · 0 评论 -
Spark on Yarn方式运行计算作业,作业提交缓慢
主要在两个过程:一、uploading file太慢,上传程序依赖的jar包,大约耗时30s左右,造成提交缓慢 官网解决办法:如果想要在yarn端(yarn的节点)访问spark的runtime jars,需要指定spark.yarn.archive 或者 spark.yarn.jars。如果都这两个参数都没有指定,spark就会把$SPARK_HOME/jars/所有的jar上传到分布式...原创 2018-04-23 21:58:02 · 555 阅读 · 0 评论 -
Yarn任务调度2
spark中job stage task关系1.1 例子,美国 1880 - 2014 年新生婴儿数据统计目标:用美国 1880 - 2014 年新生婴儿的数据来做做简单的统计数据源: https://catalog.data.gov数据格式:每年的新生婴儿数据在一个文件里面每个文件的每一条数据格式:姓名,性别,新生人数1.2 运行流程概览上面的 22 行代码,就已经把构建一个 spark app...转载 2018-04-24 02:11:57 · 291 阅读 · 0 评论 -
Spark on YARN的重要参数
Spark属性或者去源码找Class类 SparkSubmitArguments,最全了属性名称默认含义spark.yarn.am.memory512m用于客户端模式下的YARN Application Master的内存量,格式与JVM内存字符串(例如512m,2g)相同。在集群模式下,spark.driver.memory改为使用。使用小写字母后缀,例如k,m,g,t,和p,为kibi-,me...原创 2018-04-24 13:06:47 · 4734 阅读 · 0 评论 -
Spark的多种运行方式(包括spark on yarn client&&cluster)
1.localhost 启动命令./spark-shell --master local[2] --jars /... ./spark-submit --master local[2] --jars /... 或者修改spark-defaults.conf文件,spark.master local[2],写死即可省略--mast...原创 2018-04-24 15:58:51 · 270 阅读 · 0 评论 -
Spark由于端口号无限增长报错和任务跑完就关闭的解决方案
Spark任务都会绑定一个端口来显示WebUI,默认端口为4040,如果被占用则依次递增+1端口重试,重试次数由参数spark.port.maxRetries=16控制,默认重试16次后就放弃执行当有17个app进来会报错,最多能运行16个作业我们工作中,一定要把这个参数调大,一般都好几千spark.eventLog.enabled=true 即使spark任务运行结束,也可以访问sparkUI,...原创 2018-04-24 22:07:59 · 1872 阅读 · 0 评论 -
Spark监控 webUI
Spark作业监控./sbin/start-history-server.sh 会将运行日志持久化到磁盘或文件系统中spark.history.provider=belowspark.history.fs.logDirectory日志存放位置启动之后会创建一个webUI(在那台启动的就在那台机器上运行)默认地址 http://<server-url>:18080 spark.apach...原创 2018-04-25 11:53:00 · 740 阅读 · 0 评论 -
Spark Core读取SequenceFile/Protobuf,和推导公式
import org.apache.hadoop.io.BytesWritableimport org.apache.spark.{SparkConf, SparkContext}object ReadSeqenceFileApp { def main(args: Array[String]): Unit = { val conf = new SparkConf()// ...原创 2018-04-25 17:00:16 · 1523 阅读 · 0 评论 -
SparkSQL-01
Spark SQL =>SparkHive on Spark =>Hive (用)原创 2018-05-19 17:04:50 · 468 阅读 · 0 评论 -
SparkSQL-02 RDD转换DF的两种方式
引用原文:Interoperating with RDDsSpark SQL supports two different methods for converting existing RDDs into Datasets.The first method uses reflection to infer the schema of an RDD that contains specific t...原创 2018-05-29 00:28:15 · 5478 阅读 · 0 评论 -
美团点评 spark性能优化指南-基础篇
前言:最近开始玩spark,公司分享了一些不错的spark性能优化学习,故在此分享:http://tech.meituan.com/spark-tuning-basic.html前言在大数据计算领域,Spark已经成为了越来越流行、越来越受欢迎的计算平台之一。Spark的功能涵盖了大数据领域的离线批处理、SQL类处理、流式/实时计算、机器学习、图计算等各种不同类型的计算操作,应用范围与前景非常广泛...转载 2018-06-04 09:58:33 · 415 阅读 · 0 评论 -
Spark 结构化流
https://databricks.com/blog/2016/07/28/continuous-applications-evolving-streaming-in-apache-spark-2-0.htmlMost streaming engines focus on performing computations on a stream: for example, one can map ...转载 2018-06-11 16:55:03 · 717 阅读 · 0 评论