SQL操作Spark SQL--BasicSQLTestt
object BasicSQLTest {
def main(args: Array[String]): Unit = {
val spark = SparkSession
.builder()
.appName("BasicSQLTest")
.getOrCreate()
val sessionDf = spark.read.parquet(s"${BASE_PATH}/trackerSession")
sessionDf.printSchema()
sessionDf.createOrReplaceTempView("trackerSession")
//查询所有记录
val sessionRecords = spark.sql("select * from trackerSession")
sessionRecords.show()
//过滤
val filterSession =
spark.sql("select distinct(cookie) from trackerSession where cookie_label = '固执'")
filterSession.show()
//先join, 然后再分组SQL
val logDf = spark.read.parquet(s"${BASE_PATH}/trackerLog")
logDf.printSchema()
logDf.createOrReplaceTempView("trackerLog")
val sql =
"""select tl.url, count(*) from trackerLog tl join trackerSession ts on tl.cookie = ts.cookie
| where ts.cookie_label = '固执' and tl.log_type='pageview'
| group by tl.url
| order by tl.url desc
""".stripMargin
spark.sql(sql).show(false)
//函数(内置函数)
//单行函数
spark.sql("select session_server_time, " +
"hour(session_server_time) as hour from trackerSession").show(false)
spark.sql("select click_count, cookie_label, " +
"concat(click_count, cookie_label) as c from trackerSession").show()
//多行函数(聚合函数)
val ccmDF = spark.sql("select max(click_count) as ccm from trackerSession")
ccmDF.printSchema()
ccmDF.show()
//udf
spark.udf.register("myUDF", (arg1: Int, arg2: String) => {
if (arg1 > 1 && arg2.equals("固执")) {
arg2 + arg1
} else {
arg2 + "less"
}
})
spark.sql("select click_count, cookie_label, myUDF(click_count, cookie_label) " +
"as c from trackerSession").show()
spark.stop()
}
}
SQL操作Spark SQL--BasicSQLTestt的更多相关文章
- SQL操作Spark SQL--CatalogApiTest
object CatalogApiTest { def main(args: Array[String]): Unit = { val spark = SparkSession .builder() ...
- Spark SQL 之 Data Sources
#Spark SQL 之 Data Sources 转载请注明出处:http://www.cnblogs.com/BYRans/ 数据源(Data Source) Spark SQL的DataFram ...
- 【原】Learning Spark (Python版) 学习笔记(三)----工作原理、调优与Spark SQL
周末的任务是更新Learning Spark系列第三篇,以为自己写不完了,但为了改正拖延症,还是得完成给自己定的任务啊 = =.这三章主要讲Spark的运行过程(本地+集群),性能调优以及Spark ...
- Spark 官方文档(5)——Spark SQL,DataFrames和Datasets 指南
Spark版本:1.6.2 概览 Spark SQL用于处理结构化数据,与Spark RDD API不同,它提供更多关于数据结构信息和计算任务运行信息的接口,Spark SQL内部使用这些额外的信息完 ...
- Spark SQL 官方文档-中文翻译
Spark SQL 官方文档-中文翻译 Spark版本:Spark 1.5.2 转载请注明出处:http://www.cnblogs.com/BYRans/ 1 概述(Overview) 2 Data ...
- Apache Spark 2.2.0 中文文档 - Spark SQL, DataFrames and Datasets Guide | ApacheCN
Spark SQL, DataFrames and Datasets Guide Overview SQL Datasets and DataFrames 开始入门 起始点: SparkSession ...
- Spark官方1 ---------Spark SQL和DataFrame指南(1.5.0)
概述 Spark SQL是用于结构化数据处理的Spark模块.它提供了一个称为DataFrames的编程抽象,也可以作为分布式SQL查询引擎. Spark SQL也可用于从现有的Hive安装中读取数据 ...
- Spark SQL数据源
[TOC] 背景 Spark SQL是Spark的一个模块,用于结构化数据的处理. ++++++++++++++ +++++++++++++++++++++ | SQL | | Dataset API ...
- Spark SQL官方文档阅读--待完善
1,DataFrame是一个将数据格式化为列形式的分布式容器,类似于一个关系型数据库表. 编程入口:SQLContext 2,SQLContext由SparkContext对象创建 也可创建一个功能更 ...
随机推荐
- Linux下C++酒店管理系统
功能要求: 相关源码:码云:传送门,GitHub:传送门 相关图片: 拆分版 make编译 ./hotel运行 输入2,进入开房模块 相关源码: class.cpp #include ...
- 【实战经验】--Xilinx--Chipscope使用
1)在工程右键点击New Source 新建Chioscope,在File name 填写名称: 2)新建完成后,工程里会出现你建立的chipscope文件(如下图chip_ddr3.cdc)双击打开 ...
- SSM整合学习 二
二:与Spring MVC整合 一:添加Spring MVC Framework 右键项目名称,点击Add Framework Support 选择Spring-Spring MVC框架 选择Down ...
- Python-MySQL学习
内容来源(有删改):https://blog.csdn.net/hzw6991/article/details/87893761 上面链接同步视频地址:https://www.bilibili.com ...
- 《三》大话 Typescript 接口
> 前言: 本文章为 TypeScript 系列文章. 旨在利用碎片时间快速入门 Typescript. 或重新温故 Typescript 查漏补缺.在官方 api 的基础上, 加上一些日常使用 ...
- git 学习笔记 --- Rebase
在上一节我们看到了,多人在同一个分支上协作时,很容易出现冲突.即使没有冲突,后push的童鞋不得不先pull,在本地合并,然后才能push成功. 每次合并再push后,分支变成了这样: $ git l ...
- cas sso 单点登录
一些介绍: https://www.jianshu.com/p/b7de8e4cf217 https://blog.csdn.net/javaloveiphone/article/details/52 ...
- python 跨目录访问文件
1.同级.同目录的文件之间的访问 有这样一个目录结构 假如,in_A.py 这个文件想调用 hello_world.py 中的函数怎么办呢? --->>> import 只需在 i ...
- 2019 央视网java面试笔试题 (含面试题解析)
本人3年开发经验.18年年底开始跑路找工作,在互联网寒冬下成功拿到阿里巴巴.今日头条.央视网等公司offer,岗位是Java后端开发,最终选择去了央视网. 面试了很多家公司,感觉大部分公司考察的点都差 ...
- Elasticsearch 主要监控指标 -- 描述了es监控的几个维度,相当不错!
转发自:https://blog.csdn.net/majianxiong_lzu/article/details/90437559 主要指标梳理 Cluster Health – Nodes and ...