- 博客(12)
- 资源 (12)
- 收藏
- 关注
原创 spark基础之spark sql运行原理和架构
一 Spark SQL运行架构Spark SQL对SQL语句的处理和关系型数据库类似,即词法/语法解析、绑定、优化、执行。Spark SQL会先将SQL语句解析成一棵树,然后使用规则(Rule)对Tree进行绑定、优化等处理过程。Spark SQL由Core、Catalyst、Hive、Hive-ThriftServer四部分构成:Core: 负责处理数据的输入和输出,如获取数据,查询结果
2017-10-27 09:21:33 6861
原创 spark基础之Spark SQL和Hive的集成以及ThriftServer配置
如果希望Maven编译Spark时支持Hive,需要给定-Phive -Phive-thriftserver。比如比如:mvn -Pyarn -Phadoop-2.6 -Dhadoop.version=2.6.0-Phive -Phive-thriftserver -DskipTests clean package 一 Spark SQL和Hive集成1.1 将hive的配置文件hiv
2017-10-27 09:19:15 12721
原创 spark基础之RDD和DataFrame的转换方式
一 通过定义Case Class,使用反射推断Schema定义Case Class,在RDD的转换过程中使用Case Class可以隐式转换成SchemaRDD,然后再注册成表,然后就可以利用sqlContext或者SparkSession操作了。我们给出一个电影测试数据film.txt,定一个Case Class(Film),然后将数据文件读入后隐式转换成SchemeRDD:film,并
2017-10-27 09:17:39 6706
原创 spark基础之RDD和DataFrame和Dataset比较
一 SparkSQL简介Spark SQL是一个能够利用Spark进行结构化数据的存储和操作的组件,结构化数据可以来自外部结构化数据源也可以通过RDD获取。外部的结构化数据源包括Hive,JSON,Parquet,RMDBS等。当前Spark SQL使用Catalyst优化器来对SQL进行优化,从而得到更加高效的执行方案。并且可以将结果存储到外部系统。 二 DataFrame &
2017-10-27 09:15:45 561
原创 spark基础之存储原理
一 Spark存储架构Spark的存储采用主从(Master/Slave)模式,使用RPC进行消息通信。Master主要负责整个应用程序在运行期间block元数据的管理和维护,Slave主要负责将本地数据块的状态的汇报给Master;而且接收Master传过来的执行指令,比如获取数据块状态,删除RDD/数据块等。 在Driver端只有一个BlockManagerMast
2017-10-27 09:13:16 695
原创 spark基础之调度器运行机制简述
一 概述驱动程序在启动的时候,首先会初始化SparkContext,初始化SparkContext的时候,就会创建DAGScheduler、TaskScheduler、SchedulerBackend等,同时还会向Master注册程序;如果注册没有问题。Master通过集群管理器(cluster manager)会给这个程序分配资源,然后SparkContext根据action触发job。
2017-10-27 09:08:44 997
原创 spark基础之基于yarn两种提交模式分析
一 介绍基于YARN的提交模式,总共有2种:一种是基于YARN的yarn-cluster模式;一种是基于YARN的yarn-client模式。 需要将提交应用程序的spark-submit的脚本中加上--master参数,设置为yarn-cluster或者yarn-client。如果没有设置,默认就是standalone模式。 spark-submit --class c
2017-10-27 09:04:48 957 1
原创 spark基础之shuffle机制和原理分析
一 概述Shuffle就是对数据进行重组,由于分布式计算的特性和要求,在实现细节上更加繁琐和复杂在MapReduce框架,Shuffle是连接Map和Reduce之间的桥梁,Map阶段通过shuffle读取数据并输出到对应的Reduce;而Reduce阶段负责从Map端拉取数据并进行计算。在整个shuffle过程中,往往伴随着大量的磁盘和网络I/O。所以shuffle性能的高低也直接决定了
2017-10-27 08:59:38 36888 6
原创 spark基础之RDD详解
一 什么是RDD,有什么特点?RDD: Resilient Distributed Dataset,弹性分布式数据集。特点:# 它是一种数据的集合# 它可以被分区,每一个分区分布在不同的集群中节点,从而使得RDD可以被并行处理,所以它是分布式的# 提供容错性,它将计算转换一个成一个有向无环图(DAG)的任务集合,方便利用血缘关系进行数据恢复# 中间计算结果缓存在内存二
2017-10-27 08:54:49 1904
原创 spark基础之checkpoint机制
一 Spark中Checkpoint是什么假设一个应用程序特别复杂场景,从初始RDD开始到最后整个应用程序完成,有非常多的步骤,比如超过20个transformation操作,而且整个运行时间也比较长,比如1-5个小时。此时某一个步骤数据丢失了,尽管之前在之前可能已经持久化到了内存或者磁盘,但是依然丢失了,这是很有可能的。也就是说没有容错机制,那么有可能需要重新计算一次。而如果这个步骤很耗时和
2017-10-27 08:48:57 924
转载 CentOS 内核升级的总结
一 下载内核包到本地机器,本地进行更新# 下载你要更新的内核包http://ftp.scientificlinux.org/linux/scientific/6/x86_64/updates/security/kernel-2.6.32-696.13.2.el6.x86_64.rpm# 直接yum安装yum install kernel-2.6.32-696.13.2.el6.x8
2017-10-09 21:17:00 851
转载 Linux之wget命令详解
使用如下的命令下载https链接:wget -r -np -nd --accept=gz --no-check-certificate https://www.xxx.com/dir/ --http-user=username --http-password=password下载'dir'目录下的所有gz文件-np 没有父目录-nd 不要构建本地目录结构--ac
2017-10-09 12:34:57 1476
Percona-XtraBackup-2.4.9-ra467167cdd4-el7-x86_64-bundle.tar
2017-12-31
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人