DataFrame
概述
DataFrame
可以翻译成数据框,让Spark具备了处理大规模结构化数据的能力。
- 比原有
RDD
转化方式更加简单,获得了更高的性能 - 轻松实现从
mysql
到DF
的转化,支持SQL
查询 DF
是一种以RDD
为基础的分布式数据集,提供了详细的结构信息。传统的RDD
是Java
对象集合
创建
从Spark2.0开始,spark使用全新的SparkSession
接口
- 支持不同的数据加载来源,并将数据转成
DF
DF
转成SQLContext
自身中的表,然后利用SQL
语句来进行操作- 启动进入pyspark后,pyspark 默认提供两个对象(交互式环境)
SparkContext:sc
SparkSession:spark
1 | # 创建sparksession对象 |
读取数据
1 | df = spark.read.text("people.txt") |
保存
1 | df.write.txt("people.txt") |
DF 常见操作
1 | df = spark.read.json("people.json") |
RDD 转成DF
- 利用反射机制去推断
RDD
模式 - 用编程方式去定义
RDD
模式
1 | # 反射机制 |
spark读取mysql数据库
安装JDBC
驱动程序mysql-connector-java-5.1.4.tar.gz
1 | # 存放位置 |