文档章节

使用Scala编程方式将RDD转换成DataFrame

别寒
 别寒
发布于 2017/07/26 15:43
字数 151
阅读 13
收藏 0
package com.hhb.spark.sql

import org.apache.spark.{SparkConf, SparkContext}
import org.apache.spark.sql.{Row, SQLContext}
import org.apache.spark.sql.types.{IntegerType, StringType, StructField, StructType};

/**
  * Created by dell on 2017/7/26.
  */
object RDD2DataFrameProgrammatically extends App{
  val conf = new SparkConf()
    .setMaster("local")
    .setAppName("RDD2DataFrameProgrammatically")
    .set("spark.testing.memory", "2147480000")
  val sc = new SparkContext(conf)
  val sqlContext = new SQLContext(sc)

  // 构造出元素为Row的普通RDD
  val studentRDD = sc.textFile("c://students.txt", 1)
    .map{ line => Row(line.split(",")(0).toInt, line.split(",")(1), line.split(",")(2).toInt) }

  // 编程方式动态构造元数据
  val structType = StructType(Array(
    StructField("id", IntegerType, true),
    StructField("name", StringType, true),
    StructField("age", IntegerType, true)
  ))

  // 进行rdd到dataframe的转换
  val studentDF = sqlContext.createDataFrame(studentRDD, structType)

  // 继续正常使用
  studentDF.registerTempTable("students")

  val teenagerDF = sqlContext.sql("select * from students where age <= 18")

  val teenagerRDD = teenagerDF.rdd.collect().foreach(println(_))

}

© 著作权归作者所有

共有 人打赏支持
别寒
粉丝 29
博文 271
码字总数 137605
作品 0
永州
程序员
私信 提问
Spark SQL,如何将 DataFrame 转为 json 格式

今天主要介绍一下如何将 Spark dataframe 的数据转成 json 数据。用到的是 scala 提供的 json 处理的 api。 用过 Spark SQL 应该知道,Spark dataframe 本身有提供一个 api 可以供我们将数据...

终日而思一
2018/12/06
0
0
Spark SQL 笔记

官方参考文档: DataFrame 对于熟悉python的同学,Spark的DataFrame和python的DF很像。对于structured data files同学比较熟知的有xml、jason、parquet等。 关于parquet,请参考: 具体的df的...

youngbit007
2017/10/24
0
0
【Spark 2.0官方文档】Spark SQL、DataFrames以及Datasets指南

文档说明 本文是基于《Spark 官方文档》Spark SQL, DataFrames 以及 Datasets 编程指南 这篇文章翻译而来。 原文中关于R语言的部分本文档全都省略。 由于个人水平有限,有些地方难免翻译的不...

JackieYeah
2016/09/11
1K
0
Apache Spark APIs:RDDs,DataFrames,and Datasets

一.Resilient Distributed Dataset(RDD,弹性分布式数据集) RDD是过去的Spark中最主要的面向用户的API。RDD是数据元素的不可变的分布式集合,在集群中的节点上进行分区,它提供了低级的API...

阿猫阿狗Hakuna
2018/09/04
0
0
基于spark1.3.1的spark-sql实战-01

sqlContext总的一个过程如下图所示: SQL语句经过SqlParse解析成UnresolvedLogicalPlan; 使用analyzer结合数据数据字典(catalog)进行绑定,生成resolvedLogicalPlan; 使用optimizer对res...

stark_summer
2015/05/19
0
0

没有更多内容

加载失败,请刷新页面

加载更多

OSChina 周一乱弹 —— 白掌柜说了卖货不卖身

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @爱漫爱 :这是一场修行分享羽肿的单曲《Moony》 手机党少年们想听歌,请使劲儿戳(这里) @clouddyy :开不开心? 开心呀, 我又不爱睡懒觉…...

小小编辑
今天
8
0
大数据教程(11.7)hadoop2.9.1平台上仓库工具hive1.2.2搭建

上一篇文章介绍了hive2.3.4的搭建,然而这个版本已经不能稳定的支持mapreduce程序。本篇博主将分享hive1.2.2工具搭建全过程。先说明:本节就直接在上一节的hadoop环境中搭建了! 一、下载apa...

em_aaron
今天
3
0
开始看《JSP&Servlet学习笔记》

1:WEB应用简介。其中1.2.1对Web容器的工作流程写得不错 2:编写Servlet。搞清楚了Java的Web目录结构,以及Web.xml的一些配置作用。特别是讲了@WebServlet标签 3:请求与响应。更细致的讲了从...

max佩恩
今天
4
0
mysql分区功能详细介绍,以及实例

一,什么是数据库分区 前段时间写过一篇关于mysql分表的的文章,下面来说一下什么是数据库分区,以mysql为例。mysql数据库中的数据是以文件的形势存在磁盘上的,默认放在/mysql/data下面(可...

吴伟祥
今天
3
0
SQL语句查询

1.1 排序 通过order by语句,可以将查询出的结果进行排序。放置在select语句的最后。 格式: SELECT * FROM 表名 ORDER BY 排序字段ASC|DESC; ASC 升序 (默认) DESC 降序 1.查询所有商品信息,...

stars永恒
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部