Spark SQL的使用
来源:互联网 发布:德旭交规软件 编辑:程序博客网 时间:2024/05/19 03:41
Spark SQL的使用
本文主要给出了Spark1.4之前和之后IDE编译的区别
Spark1.4之前
在1.4版本之前table的注册使用的是registerAsTable方法
case class Person(name:String,age:Int)def main(args: Array[String]): Unit = { val sconf = new SparkConf().setMaster("local[5]").setAppName("SQL") val sc = new SparkContext(sconf) val sqlContext = new org.apache.spark.sql.SQLContext(sc) //将rdd隐式转换为schemeRDD import sqlContext._ val people = sc.textFile("D:\\123.txt").map(_.split(",")) .map(p => Person(p(0),p(1).trim().toInt)).toDF() people.registerASTable("people") val res = sqlContext.sql("select name,age from peop") res.map { t => t(0)+" "+t(1) } collect() foreach { println }}
Spark1.4及以后
使用registerTempTable取代registerAsTable并且方法所在的包也由sqlContext._ 变为qlContext.implicits._
case class Person(name:String,age:Int)def main(args: Array[String]): Unit = { val sconf = new SparkConf().setMaster("local[5]").setAppName("SQL") val sc = new SparkContext(sconf) val sqlContext = new org.apache.spark.sql.SQLContext(sc) //将rdd隐式转换为schemeRDD import sqlContext.implicits._ val people = sc.textFile("D:\\123.txt").map(_.split(",")) .map(p => Person(p(0),p(1).trim().toInt)).toDF() people.registerTempTable("people") val res = sqlContext.sql("select name,age from peop") res.map { t => t(0)+" "+t(1) } collect() foreach { println }}
写在最后,一般我们在集群中直接写Scala时
case class Person(name:String,age:Int)
都是写在程序中的,但是在IDE中就需要放到main函数外面或者直接放到Object外面。
3 0
- Spark SQL的使用
- spark-SQL的使用
- Spark-SQL的安装及使用
- Spark-SQL--Thrift的安装及使用
- 如何使用Spark SQL 的JDBC server
- sparkcli命令spark-sql的使用
- 1.Spark SQL:DataFrame的使用
- Spark SQL 整合Hive的使用
- Spark SQL UDF使用
- Spark SQL UDF使用
- Spark SQL 简单使用
- spark-sql使用
- Spark SQL内置函数的使用Spark SQL执行计划总结
- 使用spark-sql-perf评测spark 2.0
- zeppelin 安装使用,测试spark,spark sql
- Spark SQL的理解
- Spark SQL的例子
- spark 的sql解决方案
- 【java基础】多线程--生产者消费者--复习
- 【深度学习经典论文翻译1】AlexNet-ImageNet Classification with Deep Convolutional Neural Networks全文翻译
- Oracle DB查看预警日志
- tableView自定义背景图结合masonry毛玻璃特效
- Android如何连接和操作SQLite数据库
- Spark SQL的使用
- SQL查询--连接查询
- Codeforces Round #273 (Div. 2)(D)dp,滚动数组
- 编写一个程序,打印输入中单词长度的直方图。水平方向的直方图比较容易。
- Android Support Library 23.2的初体验
- C语言学习笔记_4流程控制
- Spring注入的反射解释
- 浏览器缓存--协商缓存
- Java中获取键盘输入值的三种方法