SQL操作Spark SQL--CatalogApiTest
object CatalogApiTest {
def main(args: Array[String]): Unit = {
val spark = SparkSession
.builder()
.appName("CatalogApiTest")
.getOrCreate()
//查看spark sql应用用的是哪一种catalog
//目前支持hive metastore 和in-memory两种
//spark-shell默认的值为hive
//spark-shell --master spark://master:7077 --conf spark.sql.catalogImplementation=in-memory
spark.conf.get("spark.sql.catalogImplementation")
//1:数据库元数据信息
spark.catalog.listDatabases().show(false)
spark.catalog.currentDatabase
val db = spark.catalog.getDatabase("default")
spark.catalog.databaseExists("twq")
spark.sql("CREATE DATABASE IF NOT EXISTS twq " +
"COMMENT 'Test database' LOCATION 'hdfs://master:9999/user/hadoop-twq/spark-db'")
spark.catalog.setCurrentDatabase("twq")
spark.catalog.currentDatabase
//2:表元数据相关信息
spark.catalog.listTables("twq").show()
val sessionDf = spark.read.parquet(s"${BASE_PATH}/trackerSession")
//创建一张表
sessionDf.createOrReplaceTempView("trackerSession")
//catalog table相关元数据操作
spark.catalog.listTables("twq").show()
//用sql的方式查询表
val sessionRecords = spark.sql("select * from trackerSession")
sessionRecords.show()
spark.catalog.tableExists("log")
spark.catalog.tableExists("trackerSession")
spark.catalog.tableExists("twq", "trackerSession") //todo 感觉应该是spark的bug
spark.catalog.listTables("twq").show()
spark.catalog.getTable("trackerSession")
//表的缓存
spark.catalog.cacheTable("trackerSession")
spark.catalog.uncacheTable("trackerSession")
//3:表的列的元数据信息
spark.catalog.listColumns("trackerSession").show()
spark.sql("drop table trackerSession")
spark.sql("drop database twq")
spark.catalog.setCurrentDatabase("default")
spark.catalog.listTables().show()
spark.stop()
}
}
SQL操作Spark SQL--CatalogApiTest的更多相关文章
- SQL操作Spark SQL--BasicSQLTestt
object BasicSQLTest { def main(args: Array[String]): Unit = { val spark = SparkSession .builder() .a ...
- 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对象创建 也可创建一个功能更 ...
随机推荐
- RSA非对称式加解密笔记
1.服务器生成[公钥]和[私钥],成对生成: 2.客户端生成证书信息,使用[公钥]进行加密,前提是有公钥,并生成证书信息: 3.客户端发送自身的计算机名.MAC.用户名.证书内容给服务器: 4.服务器 ...
- 快排 PAT 1101
1101 Quick Sort (25 分) There is a classical process named partition in the famous quick sort algor ...
- [转帖]OLTP、OLAP与HTAP
OLTP.OLAP与HTAP https://blog.csdn.net/ZG_24/article/details/87854982 OLTP On-Line Transaction Proce ...
- Delphi TButton.OnClick 匿名函数用法
type TNotifyEventRef = reference to procedure(Sender: TObject); function AnonymousEvent(const Proc: ...
- 【Python爬虫案例学习】下载某图片网站的所有图集
前言 其实很简短就是利用爬虫的第三方库Requests与BeautifulSoup. 其实就几行代码,但希望没有开发基础的人也能一下子看明白,所以大神请绕行. 基本环境配置 python 版本:2.7 ...
- python自动化测试之appium环境安装
1.安装client pip install Appium-Python-Clinet 若有两个版本的python则使用(python3 -m pip install Appium-Python-C ...
- 2、Shell命令学习笔记
1.Shell命令行解释器 1.1 Shell命令解释器 Shell是一个特殊的应用程序,介于操作系统内核和用户之间,负责接收用户输入的操作指令(命令)并进行解释,将需要执行的操作传递给内核执行. 因 ...
- 2019 华云数据java面试笔试题 (含面试题解析)
本人3年开发经验.18年年底开始跑路找工作,在互联网寒冬下成功拿到阿里巴巴.今日头条.华云数据等公司offer,岗位是Java后端开发,最终选择去了华云数据. 面试了很多家公司,感觉大部分公司考察的点 ...
- 学习网络BGP必备基础知识
外部网关协议,使用TCP作为传输层协议,支持CIDR,增量更新,距离矢量路由协议,无环路,路由策略丰富,可防止路由震荡,易于扩展. BGP概述 #BGP工作原理 之 报文类型 TCP三次握手 open ...
- OO第三单元作业总结
OO第三单元作业总结--JML 第三单元的主题是JML规格的学习,其中的三次作业也是围绕JML规格的实现所展开的(虽然感觉作业中最难的还是如何正确适用数据结构以及如何正确地对于时间复杂度进行优化). ...