
spark
spark
vincent_hahaha
haha ha
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Spark SQL 加载数据
第一种方式:Spark SQL可以将数据文件加载成RDD方式,然后将RDD转成DataFrame或者DataSet。第二种方式:从本地或者Cloud(hdfs hive S3等)将文件加载成RDD首先打开控制台,输入命令打开spark-shell:./spark-shell --master local[2] --jars /home/iie4bu/software/mysql-conne...原创 2020-04-20 10:55:02 · 503 阅读 · 0 评论 -
Spark On Yarn 运行项目
在spark中,支持4中运行模式:Local:往往使用本地开发的时候使用。StandAlone:是spark自带的,如果一个集群是StandAlone模式的话,那么就需要在多台机器上同时部署Spark环境。缺点是改一个机器的配置,其余所有机器的配置都需要同步才生效。YARN:推荐使用YARN,统一使用YARN进行整个集群作业(MR、Spark)的资源调度。Mesos不管使用什么模式,...原创 2020-04-07 11:35:21 · 559 阅读 · 0 评论 -
zeppelin安装使用
首先到官网下载官网地址:zeppelin.apache.org下载zeppelin-0.9.0-preview1-bin-all.tgz进行解压。启动zeppelin启动命令:./zeppelin-daemon.sh start启动成功之后,输入jps:可以在zeppelin-site.xml修改ip和端口号。浏览器中访问在interceptor中选择jdbc设置mys...原创 2020-04-07 10:18:28 · 328 阅读 · 0 评论 -
Spark SQL使用window进行统计
在上一篇文章中,首先按照netType进行了统计,接下来添加一个条件,按照城市进行统计: def main(args: Array[String]): Unit = { val spark = SparkSession.builder().appName("TopNStatJob") .config("spark.sql.sources.partitionColumnTyp...原创 2020-04-03 16:07:56 · 821 阅读 · 0 评论 -
SparkSQL 将统计结果保存到Mysql
在MySQL创建表create table day_netType_access_topn_stat (day varchar(8) not null,uid bigint(10) not null,times bigint(10) not null,primary key (day, uid))查看表结构:创建Entitypackage cn.ac.iie.log/**...原创 2020-04-03 12:02:41 · 1398 阅读 · 0 评论 -
sparkSQL 统计TopN
原始数据如下:需求:按天统计uid。main方法:object TopNStatJob { def main(args: Array[String]): Unit = { val spark = SparkSession.builder().appName("TopNStatJob") .config("spark.sql.sources.partitionColu...原创 2020-04-01 15:19:05 · 855 阅读 · 0 评论 -
SparkSQL读取文件时,数据字段类型调整
使用spark读取parquet文件时,例如读取在file:///E:/test/clean文件夹下的文件:而我们的文件内容中的数据结构是: val struct = StructType( Array( StructField("uid", StringType), StructField("time", StringType), Struc...原创 2020-04-01 11:13:01 · 2172 阅读 · 0 评论 -
SparkSQL 控制文件输出的大小
package cn.ac.iie.logimport org.apache.spark.sql.{SaveMode, SparkSession}/** * 使用Spark完成我们的数据清洗操作 */object SparkStatCleanJob { def main(args: Array[String]): Unit = { val spark = SparkSe...原创 2020-04-01 10:32:29 · 3384 阅读 · 0 评论 -
SparkSQL愿景
代码量计算平均数使用hadoop的方式spark方式-RDDspark方式-DataFramespark方式-SQL综上,很明显使用spark方式的DataFrame或者SQL都可以使代码可读性更好,代码更精简。读写数据从json读数据:df = sqlContext.read.format("json").option("samplingRatio", "0.1").lo...原创 2020-03-30 14:39:43 · 239 阅读 · 0 评论 -
SparkSQL之关联mysql和hive查询
创建Mysql数据库CREATE DATABASE spark;USE spark;CREATE TABLE DEPT(DEPTNO int(2) PRIMARY KEY,DNAME VARCHAR(14),LOC VARCHAR(13));INSERT INTO DEPT VALUE(10, 'ACCOUNTING','NEW YORK');INSERT INTO DEPT...原创 2020-03-30 12:52:47 · 595 阅读 · 0 评论 -
SparkSQL之操作Mysql
准备工作我们准备使用sparksql数据库,然后使用TBLS表,这个TBLS保存了表的元数据信息。操作Mysql数据表TBLval jdbcDF = spark.read .format("jdbc") .option("url", "jdbc:mysql://swarm-manager:3306/sparksql") .option("driver", "com.mysql....原创 2020-03-29 18:38:34 · 1076 阅读 · 0 评论 -
SparkSQL之操作Hive
首先启动spark-shell:命令:spark-shell --master local[2] --jars ~/software/mysql-connector-java-5.1.35.jar --driver-class-path /home/iie4bu/software/mysql-connector-java-5.1.35.jar查看当前有哪些表:spark.sql("show ...原创 2020-03-29 17:57:43 · 2606 阅读 · 1 评论 -
SparkSQL之External Data读写parquet
准备数据文件在/home/iie4bu/app/spark-2.4.5-bin-2.6.0-cdh5.15.1/examples/src/main/resources路径下有一个users.parquet文件。查看parquet文件内容package cn.ac.iie.sparkimport org.apache.spark.sql.SparkSession/** * Parqu...原创 2020-03-29 17:31:07 · 338 阅读 · 0 评论 -
SparkSQL之External Data
External Data产生背景在之前的案例中,每一个Spark Application都是以加载数据开始,经过一系列处理,然后把结果展示到控制台中。在生产环境中我们往往需要把数据存储到外部系统中如HBase、mysql等。同时,我们也希望能从不同的数据源(json、parquet、RDBMS)经过混合处理(json join parquet),然后将处理结果以特定的格式(json、par...原创 2020-03-29 16:22:51 · 533 阅读 · 0 评论 -
Spark SQL之DataSet
DataSet是分布式的数据集,是spark1.6才被添加进来的。比DataFrame出现的晚。DataSet支持lambda表达式,而且DataFrame的API在DataSet中大部分都可以继续使用,相当于DataFrame的升级版。Spark如何解析csv文件待处理文件infos.txt,内容如下:id,name,age1,vincent,202,sarah,193,sofia,...原创 2020-03-29 00:48:36 · 171 阅读 · 0 评论 -
SparkSQL之DataFrame案例
待处理文件准备待处理文件student.data,内容如下:1|vincent|13827460000|gvark@eyou.com2|jenny|13827460002|ovwgofpa@56.com3|sofia|13827460003|jfbmgpm@netease.com4|natasha|13827460004|vjtw@35.com5|catalina|1382746000...原创 2020-03-29 00:14:10 · 346 阅读 · 0 评论 -
Spark SQL之RDD转DataFrame
准备文件首先准备好测试文件info.txt,内容如下:1,vincent,202,sarah,193,sofia,294,monica,26将RDD转成DataFrame方式一:反射可以使用反射来推断包含了特定数据类型的RDD的元数据代码如下:package cn.ac.iie.sparkimport org.apache.spark.sql.SparkSession...原创 2020-03-28 23:17:57 · 243 阅读 · 0 评论 -
SparkSQL之DataFrame API
测试文件测试文件employees.json,内容如下:{"name":"Michael", "salary":3000, "age": 28}{"name":"Andy", "salary":4500}{"name":"Justin", "salary":3500}{"name":"Berta", "salary":4000}{"name":"vincent", "salary":9...原创 2020-03-28 00:54:32 · 272 阅读 · 0 评论 -
Spark SQL之DataFrame概述
产生背景DataFrame不是Spark SQL提出的,而是早期在R、Pandas语言就已经有了的。Spark RDD API vs MapReduce APISpark诞生之初,其中一个很重要的目标就是给大数据生态圈提供基于通用语言(java、scala、python)的而且简单易用的API。Spark RDD API 通过函数式编程模式。如果使用MapReduce,则代码量是非常多的。但...原创 2020-03-28 00:12:43 · 219 阅读 · 0 评论 -
Spark SQL之jdbc方式访问
首先看thriftserver状态使用jps查看thriftserver运行状态和端口。如果没启动则需要启动thriftserver添加依赖pom.xml文件内容如下: <!-- jdbc --> <dependency> <groupId>org.spark-project.hive</groupId> ...原创 2020-03-27 23:44:18 · 792 阅读 · 0 评论 -
SparkSQL之thriftserver/beeline的使用
启动thriftserver使用命令启动:./start-thriftserver.sh --master local[2] --jars /home/iie4bu/software/mysql-connector-java-5.1.35.jar。然后使用jps -m查看,可以看到SparkSubmit同样可以通过浏览器进行访问。实际上beeline访问端口则需要访问10000启动客户...原创 2020-03-27 00:45:01 · 665 阅读 · 0 评论 -
Spark-shell和Spark-hive的使用
使用命令开启一个spark-shell:./spark-shell --master local[2] --jars /home/iie4bu/software/mysql-connector-java-5.1.35.jar因为我们要操作hive,因此需要添加mysql的driver类。查看表使用命令spark.sql("show tables").show查看表数据比较spark...原创 2020-03-27 00:14:52 · 1278 阅读 · 0 评论 -
spark-sql执行时报错:
在执行spark-shell时没有问题:使用的命令是:./spark-shell --master local[2] --jars /home/iie4bu/software/mysql-connector-java-8.0.15.jar,可以正常使用。但是使用spark-sql时,命令:./spark-sql --master local[2] --jars /home/iie4bu/soft...原创 2020-03-26 23:56:03 · 521 阅读 · 0 评论 -
Spark SQL 之SparkSession
SparkSession是Spark2.x中推荐使用的Spark SQL的入口点。代码如下:package cn.ac.iie.sparkimport org.apache.spark.sql.SparkSession/** * SparkSession的使用 */object SparkSessionApp { def main(args: Array[String]):...原创 2020-03-26 22:57:30 · 706 阅读 · 0 评论 -
Spark SQL 1.x之Hive Context
使用SparkSQL时,并不需要搭建一个Hive,只需要一个HiveSite就可以添加Hive配置文件将Hive中的hive-site.xml复制到spark中的conf文件夹下。添加依赖在pom.xml文件中添加HiveContext的依赖: <dependency> <groupId>org.apache.spark</groupId&...原创 2020-03-26 19:14:59 · 384 阅读 · 0 评论 -
Spark SQL 1.x之SQL Context使用
创建Scala项目使用Idea创建项目:指定<groupId>cn.ac.iie.spark</groupId> 和 <artifactId>sql</artifactId>依赖包如下: <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w...原创 2020-03-26 18:07:15 · 447 阅读 · 0 评论 -
spark 2.4.5 简单使用
使用代码:val file = spark.sparkContext.textFile("file:///home/iie4bu/data/hello.txt")val wordCounts = file.flatMap(line => line.split(",")).map((word => (word,1))).reduceByKey(_ + _)wordCounts.co...原创 2020-03-26 14:02:21 · 588 阅读 · 0 评论 -
spark-2.4.5-bin-2.6.0-cdh5.15.1环境搭建:Local模式和StandAlone
下载源码进行编译在这一篇中,介绍了如何下载源码进行编译,编译好的文件名为spark-2.4.5-bin-2.6.0-cdh5.15.1对文件进行解压:tar -xvf spark-2.4.5-bin-2.6.0-cdh5.15.1.tgz -C ~/app配置环境变量修改.bashrc文件:# SPARK_HOME 2.4.5SPARK_HOME=/home/iie4bu/app/sp...原创 2020-03-26 12:36:43 · 685 阅读 · 0 评论 -
spark2.4.5源码编译成hadoop-2.6.0-cdh5.15.1
下载下载解压Spark2.4.5源码下载解压Maven3.6.2,设置Maven环境变量:# MAVEN_HOMEMAVEN_HOME=/home/iie4bu/app/apache-maven-3.6.2PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$HIVE_HOME/bin:$MAVEN_HOME/bin:$PATHexport MAVEN_OPTS...原创 2020-03-26 00:41:04 · 781 阅读 · 0 评论 -
Spark SQL:SQLContext
在Spark1.x中,SQLContext是我们的程序入口点,当然入口点还包括SQLContext的子类。往往是通过SparkContext来创建一个SQLContext。原创 2020-03-25 23:35:06 · 225 阅读 · 0 评论 -
Spark SQL概述
Spark SQL是用来处理结构化数据的。可以用连接到很多外部数据源,包括Hive、JSON、JDBC等。Spark SQL复用了Hive的前端和Metastore。Spark SQL不仅仅有访问或者操作SQL的功能,还提供了其他的非常丰富的操作:外部数据源、优化等。Spark SQL的应用并不局限于SQL;可以直接访问Hive、Json、parquet等文件的数据;SQL知识Spa...原创 2020-03-25 23:01:51 · 136 阅读 · 0 评论 -
spark 1.6.0 简单使用
搭建好Spark环境之后,简单实用一下:代码:val file = sc.textFile("file:///home/iie4bu/data/hello.txt")val wordCounts = file.flatMap(line => line.split(",")).map((word => (word,1))).reduceByKey(_ + _)wordCounts...原创 2020-03-25 21:46:57 · 187 阅读 · 0 评论 -
spark-1.6.0-cdh5.15.1环境搭建:Local模式和StandAlone
下载spark从http://archive.cloudera.com/cdh5/cdh/5/下载spark-1.6.0-cdh5.15.1,因为我之前使用的hadoop版本都是cdh5.15.1,所以版本要保持一致。下载完成之后解压。修改配置在conf下面修改spark-env.sh,添加内容:export SPARK_DIST_CLASSPATH=$(/home/iie4bu/app...原创 2020-03-25 21:10:49 · 354 阅读 · 0 评论