Spark Sql之ThriftServer和Beeline的使用
概述
ThriftServer相当于service层,而ThriftServer通过Beeline
来连接数据库。客户端用于连接JDBC的Server的一个工具
步骤
1:启动metastore服务
./sbin/start-thriftserver.sh
2:连接
[rachel@bigdata-senior01 spark-2.2.-bin]$ ./bin/beeline
Beeline version 1.2..spark2 by Apache Hive
beeline> !connect jdbc:hive2://192.168.1.11:10000
Connecting to jdbc:hive2://192.168.1.11:10000
Enter username for jdbc:hive2://192.168.1.11:10000: rachel
Enter password for jdbc:hive2://192.168.1.11:10000: ******
// :: INFO Utils: Supplied authorities: 192.168.1.11:
3:Spark编译时版本选择和Hive的关系
只要保证HDFS\MySQL没有问题,基本上Spark和Hive集成没有问题
对于spark2.0以后版本编译,默认选择hive的1..*之后的版本
hive可以理解为外面封装了数据服务的代理。
在spark和hive集成,虽然说是1.,因为hive只提供了一个metastore
只要保证HDFS数据没有问题,metastore没有问题,hive中的数据就是没有问题的
4:连接beeline
: jdbc:hive2://192.168.1.11:10000> 这类似一个mysql的客户端。
: jdbc:hive2://192.168.1.11:10000> select * from rachel.test;
+---------+-----------+--+
| userid | username |
+---------+-----------+--+
| | rachel |
| | allen |
| | nike |
| | joy |
+---------+-----------+--+
5:页面上查看Job
http://192.168.1.11:4040/jobs/
总结
基于Spark的thirftserver来访问hive中的数据,可以让多个客户端连接到同一个服务器端,跑的是同一个application
Thirftserver作为服务端,beeline作为客户端来访问服务端,支持多个客户端同时访问,有助于多个客户端之间数据的共享
Spark Sql之ThriftServer和Beeline的使用的更多相关文章
- 新闻网大数据实时分析可视化系统项目——18、Spark SQL快速离线数据分析
1.Spark SQL概述 1)Spark SQL是Spark核心功能的一部分,是在2014年4月份Spark1.0版本时发布的. 2)Spark SQL可以直接运行SQL或者HiveQL语句 3)B ...
- Spark SQL Thrift Server 配置 Kerberos身份认证和权限管理
转载请注明出处:http://www.cnblogs.com/xiaodf/ 之前的博客介绍了通过Kerberos + Sentry的方式实现了hive server2的身份认证和权限管理功能,本文主 ...
- Apache Spark 2.2.0 中文文档 - Spark SQL, DataFrames and Datasets Guide | ApacheCN
Spark SQL, DataFrames and Datasets Guide Overview SQL Datasets and DataFrames 开始入门 起始点: SparkSession ...
- 大数据技术之_19_Spark学习_03_Spark SQL 应用解析 + Spark SQL 概述、解析 、数据源、实战 + 执行 Spark SQL 查询 + JDBC/ODBC 服务器
第1章 Spark SQL 概述1.1 什么是 Spark SQL1.2 RDD vs DataFrames vs DataSet1.2.1 RDD1.2.2 DataFrame1.2.3 DataS ...
- Apache Spark 2.2.0 中文文档 - Spark SQL, DataFrames and Datasets
Spark SQL, DataFrames and Datasets Guide Overview SQL Datasets and DataFrames 开始入门 起始点: SparkSession ...
- 「Spark」Spark SQL Thrift Server运行方式
Spark SQL可以使用JDBC/ODBC或命令行接口充当分布式查询引擎.这种模式,用户或者应用程序可以直接与Spark SQL交互,以运行SQL查询,无需编写任何代码. Spark SQL提供两种 ...
- Spark SQL configuration
# export by: spark.sql("SET -v").show(n=200, truncate=False) key value meaning spark.sql.a ...
- spark sql 的metastore 对接 postgresql
本教程记录 spark 1.3.1 版本的thriftserver 的metastore 对接 postgresql postgresql 的编译,参考:http://www.cnblogs.com/ ...
- 理解Spark SQL(一)—— CLI和ThriftServer
Spark SQL主要提供了两个工具来访问hive中的数据,即CLI和ThriftServer.前提是需要Spark支持Hive,即编译Spark时需要带上hive和hive-thriftserver ...
随机推荐
- android rom开发
How to Build Android ROMs on Ubuntu 16.04https://www.digitalocean.com/community/tutorials/how-to-bui ...
- 跨服务器做yum源
服务器无法上网,然后自己根据光盘搭建的YUM源不够用.RPM安装软件,各种依赖,找包烦死. 先做个 能上外网的 http proxy 找一个可以上Internet的服务器,然后起一个squid服务, ...
- TensorFlow Jupyter Notebook 和matplotlib安装配置
Jupyter Notebook 和matplotlib Jupyter Notebook安装 Python 3 : python3 -m pip install --upgrade pip pyth ...
- 一名前端Web架构师的成长之路(转载)
本人也是coding很多年,虽然很失败,但也总算有点失败的心得,不过我在中国,大多数程序员都是像我一样,在一直走着弯路.如果想成为一个架构师,就必须走正确的路,否则离目标越来越远,正在辛苦工作的程序员 ...
- codeforces#525 Div2---ABC
A---Ehab and another constriction problem https://codeforc.es/contest/1088/problem/A 题意:给定一个数$x$找两个在 ...
- HDU 5542 - The Battle of Chibi - [离散化+树状数组优化DP]
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=5542 Problem DescriptionCao Cao made up a big army an ...
- 如果是多个 c 代码的源码文件,编译方法如下: $ gcc test1.c test2.c -o main.out $ ./main.out test1.c 与 test2.c 是两个源代码文件。
如果是多个 c 代码的源码文件,编译方法如下: $ gcc test1.c test2.c -o main.out $ ./main.out test1.c 与 test2.c 是两个源代码文件.
- a mechanism for code reuse in single inheritance languages
php.net <?php class Base { public function sayHello() { echo 'Hello'; } } trait SayWorld { public ...
- linux fix the superblock by dumpe2fs fsck
It seems that you have a bad superblock. To fix this: Firstly, boot into a live CD or USB Find out y ...
- 关于struts中的表单元素- Form bean not specified on mapping for action: "helloa.do"报错
今天测试struts时仿照书上写了一个小的表单提交代码 <html:form action="helloa.do" method="post"> & ...