Spark DataFrame的创建
目录
1. 环境准备
2. 从 txt 文件创建 DataFrame
3. 从 RDD中创建 DataFrame
4. 一些错误
1. 环境准备
开启虚拟机、开启hadoop集群、开启spark集群、开启spark-shell、在spark-shell中导入隐式转换包
hadoop集群 输入:start-all.sh
spark集群 输入:cd /export/servers/spark
................. 输入:sbin/start-all.sh
spark-shell 输入:bin/spark-shell --master local[2]
导包 ..........输入:import spark.imlicits._
2. 从 txt 文件创建 DataFrame
2.1 文件准备
2.2 创建DataFrame
在spark-shell中
输入:val personDF = spark.read.text("/spark/person.txt")
查看 输入: personDF.show()
输入:val wordDF= spark.read.text("file:///export/data/word.txt")
输入:wordDF.show()
输入:wordDF.printSchema()
3. 从 RDD中创建 DataFrame
3.1 创建一个RDD,并使用map算子,将每行按照单词拆分,,生成一个新的RDD
输入: val lineRDD = sc.textFile("/spark/person.txt").map(_.split(" "))
3.2 定义一个样例类
输入:case class Person(id:Int,name:String,age:Int)
3.3 将lineRDD 转换成 Person类RDD
输入:val personRDD=lineRDD.map(x=>Person(x(0).toInt,x(1),x(2).toInt))
3.4 将RDD 转换成 DataFrame
输入:val personDF = personRDD.toDF()
3.5 打印查看
输入:personDF.printSchema()
3.6 本地文件转为RDD再转为DataFrame
/export/data目录下,word.txt文件存在,且有两个字段,没有空白行
4. 一些错误
4.1 没有用英文括号
4.2 源文件中只有两个字段,但在case中有三个字段。
解决:修改源文件,并重新上传至HDFS(第二张图片有操作)。本文章的源文件是person.txt
4.3 数据溢出
解决:源文件中,后面有很多空白,进入源文件将字符后面空白删掉。
4.4 没有把文件上传到HDFS中
解决:将前面sc.text(.....) ....这里的文件上传到HDFS中
4.5 一长串连续看不到头的错误
1.Spark启动时hive出现another instance of derby may have already booted the database的错误_sunlu1124的博客-CSDN博客
Spark DataFrame的创建相关推荐
- Spark _22 _创建DataFrame的几种方式(一)
创建DataFrame的几种方式 读取json格式的文件创建DataFrame 注意: json文件中的json数据不能嵌套json格式数据. DataFrame是一个一个Row类型的RDD,df.r ...
- 转】Spark DataFrame小试牛刀
原博文出自于: https://segmentfault.com/a/1190000002614456 感谢! 三月中旬,Spark发布了最新的1.3.0版本,其中最重要的变化,便是DataFrame ...
- 学习笔记Spark(七)—— Spark SQL应用(2)—— Spark DataFrame基础操作
二.Spark DataFrame基础操作 2.1.DataFrame DataFrame是一种不可变的分布式数据集,这种数据集被组织成指定的列,类似于关系数据库中的表. 数据集的每一列都带有名称和类 ...
- 基于Alluxio系统的Spark DataFrame高效存储管理技术
介绍 越来越多的公司和组织开始将Alluxio和Spark一起部署从而简化数据管理,提升数据访问性能.Qunar最近将Alluxio部署在他们的生产环境中,从而将Spark streaming作业的平 ...
- Spark DataFrame小试牛刀
三月中旬,Spark发布了最新的1.3.0版本,其中最重要的变化,便是DataFrame这个API的推出.DataFrame让Spark具备了处理大规模结构化数据的能力,在比原有的RDD转化方式易用的 ...
- Spark DataFrame入门详解
定义 type DataFrame = org.apache.spark.sql.Dataset[org.apache.spark.sql.Row] 创建DataFrame 使用read相关方法创建 ...
- pyspark 数据类型转换_PySpark之DataFrame的创建与转换
简介 DataFrame结构代表的是数据的一个不可变分布式集合,其数据都被组织到有名字的列中,就像关系型数据库中的表一样.DataFrame 的目的就是要让对大型数据集的处理变得更简单,它让开发者可以 ...
- 客快物流大数据项目(四十四):Spark操作Kudu创建表
Spark操作Kudu创建表 Spark与KUDU集成支持: DDL操作(创建/删除) 本地Kudu RDD Native Kudu数据源,用于DataFrame集成 从kudu读取数据 从Kudu执 ...
- SparkSQL之DataFrame 编程(创建DataFrame ,DataFrame数据运算操作 ,输出存储DataFrame)(11)
一 新的编程入口 SparkSession SparkSession 是 Spark 最新的 SQL 查询起始点 ,实质上是 SQLcontext 和 SparkContext 的组合 ,所以在 S ...
最新文章
- angular Ng-Zrro树形控件 异步加载
- 讲讲 Python Launcher 是什么鬼东西?
- C++用模板元编程进行循环展开的性能测试
- 分布式链路跟踪中的 traceid 和 spanid 代表什么?
- 敏捷研发项目,我们该如何度量?
- git-工作区与暂存区
- java aspose例子_在Java中使用Aspose对文档操作示例
- python会计实证研究_适合会计、金融实证研究的统计软件、编程语言搭配
- Chrome 下载文件出现已禁止
- AXI仿真之AXI Chip2Chip
- 前端安全——XSS攻击与防御原理详解
- 冀教版三年级计算机教学计划,冀教版数学小学三年级上册教学计划
- 传统运维 VS 互联网运维 框架体系大观
- Unmapped Spring configuration files found.
- 论文翻译《Computer Vision for Autonomous Vehicles Problems, Datasets and State-of-the-Art》(第六章)
- Excel正确输入身份证号码
- SQL语句中查找字符的位置
- git 使用过程遇到的问题
- android绘制虚线
- 阿里云化身“智能云管”,助力中国联通首次实现大规模平台自主运维