您的位置:首页 > 其它

Spark thriftserver和beeline的简单使用

2018-03-20 17:54 429 查看
1.设置元数据库
如果不设置,则使用$SPARK_HOME/metastore_db/,是只支持单用户的derby
创建$SPARK_HOME/conf/hive-site.xml

<configuration>
<property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://hostname:3306/hive_meta?createDatabaseIfNotExist=true</value>
    <description>JDBC的连接字符串,如果没有hive_meta这个数据库则自动创建</description>
</property>
<property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.jdbc.Driver</value>
    <description>连接JDBC元数据库的Driver类名,mariadb和mysql都用这个</description>
</property>
<property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>hive</value>
    <description>连接数据库的用户名</description>
</property>
<property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>dontguessmotherfker!!!</value>
    <description>与用户名匹配的密码</description>
</property>
</configuration>
2.元数据库配置

mysql -u root -p # 然后输入密码,作为root用户登录mysql才能创建用户并授予权限

mysql > GRANT ALL PRIVILEGES ON hivemeta.* TO 'hive'@'[hostname or ip]' IDENTIFIED BY '[password]' WITH GRANT OPTION;
# hivemeta.* 表示hivemeta数据库下的所有表。
# ALL PRIVILEGES 表示一切权限赋予mysql数据库用户hive;
# @ 后面是域名或者IP。如果使用‘%’表示任何IP或主机
mysql > FLUSH PRIVILEGES; # 使配置生效
3.启动thriftserver
$SPARK_HOME下

$ sbin/start-thriftserver.sh

Thrift JDBC/ODBC Server (简称 Spark Thrift Server 或者 STS)是Spark SQL的Apache Hive HiveServer2的端口,
通过这个端口可以允许用户使用JDBC/ODBC端口协议来执行SQL查询。
通过使用STS,商业用户就可以用使用一些炫目的BI工具,比如Tableau来连接Spark进行基于大数据量的报表制作。
4.使用beeline
$SPARK_HOME下

$ bin/beeline 
Beeline version 1.2.1.spark2 by Apache Hive
beeline> !connect jdbc:hive2://hostname:10000
# 10000端口可能被占用,查看端口:

$ netstat -tunlp | grep 10000| awk '{print $NF}'|awk -F "/" '{print $1}'
(Not all processes could be identified, non-owned process info
 will not be shown, you would have to be root to see it all.)
8397 # pid 8379的进程正占用10000端口
Connecting to jdbc:hive2://hostname:10000
Enter username for jdbc:hive2://hostname:10000: 【可以什么都不填,作为匿名用户】
Enter password for jdbc:hive2://hostname:10000: 【可以什么都不填,作为匿名用户】
(一些状态打印,省略……)
0: jdbc:hive2://hostname:10000> 
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: