分类:: 大数据技术

Spark实例-DataFrame加载和保存数据

Spark加载不同格式文件时,调用sqlContext.read.format(“”).load方法 1val peopleDF=sqlContext.read.format("json").load("E:\\spark\\src\\main\\resources\\people.json") Spark将DataFrame写入到文件中时,调用DF.write.format(“”).save方法 12345peopleDF.select("name") .write.format("parquet") //.mode(SaveMode.ErrorIfExists) .mode(SaveMode.Append) .save("E:\\spark\\src\\main\\resources\\people")

Hbase安装

1. 解压缩hbase的软件包1[yangql@hadoop01 app]$ tar -xvf hbase-1.2.5-bin.tar.gz 2. 进入hbase的配置目录,在hbase-env.sh文件里面加入java环境变量.1export JAVA_HOME=/opt/jdk1.8.0_91 3. 关闭HBase自带的Zookeeper,使用Zookeeper集群1export HBASE_MANAGES_ZK=false

Hive-《编程指南》学习笔记

基础操作 hive.metastore.warehouse.dir表存储所位于的顶级文件目录,默认是/user/hive/warehouse 可以为不同的用户指定不同的目录,避免相互影响.set hive.metastore.warehouse.dir=/user/myname/hive/warehouse hive默认数据是derby,他会在每个命令启动的当前目录创建metadata_db目录。可以设置hive-site.xml 1javax.jdo.option.ConnectionURL=jdbc:derby:;databaseName=/home/yangql/app/hive/metastore_db;create=true hive配置连接mysql数据库 123456789101112131415161718192021222324<property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://hadoop01:3306/hive?createDatabaseIfNotExist=true</value> <description> JDBC connect string for a JDBC metastore. To use SSL to encrypt/authenticate the connection, provide database-specific SSL flag in the connection URL. For example, jdbc:postgresql://myhost/db?ssl=true for postgres database. </description> </property> <property> <name>javax.jdo.option.ConnectionDriverName</name> <value>com.mysql.jdbc.Driver</value> <description>Driver class name for a JDBC metastore</description> </property> <property> <name>javax.jdo.option.ConnectionUserName</name> <value>root</value> <description>Username to use against metastore database</description> </property> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>root</value> <description>password to use against metastore database</description> </property>

Spark两种提交方式Yarn-client and Yarn-cluster

Spark支持三种集群部署方式(Standalone,Mesos,Yarn),其中Master服务(Spark Standalone,Mesos Master,Yarn ResourceManager)决定哪些应用可以运行,在那个节点上运行,以及什么时候运行。Slave服务(Yarn NodeManager)运行在每个节点上,节点控制着Executor进程,同时监控作业的运行状态以及资源的消耗。Spark运行在Yarn上,有两种模式,Yarn-Client和Yarn-Cluster。通常情况下,Yarn-Cluster用于生产环境,Yarn-Client用于交互、调试。

Spark宽依赖与窄依赖

Spark中RDD的高效与DAG(有向无环图)有很大的关系,在DAG调度中需要对计算的过程划分Stage,划分的依据就是RDD之间的依赖关系。RDD之间的依赖关系分为两种,宽依赖(wide dependency/shuffle dependency)和窄依赖(narrow dependency)

Spark 工作原理及RDD

Spark是一种开源的分布式并行计算框架,Spark拥有Hadoop Mapreduce计算框架的优点。但是与Hadoop Mapreduce最大的不同就是:Hadoop Mapreduce分为两个阶段,map 和 reduce,两个阶段完了,就完了,在一个作业里能做的事情很少。而Spark是基于内存迭代计算的,可以分为N个阶段,一个阶段完了可以继续下一阶段的处理,而且Spark作业的中间结果可以保存到内存中,不用再频繁去HDFS或其它数据源读取数据。