hive Beeline plus HiveServer2简单使用

 HiveServer2是经常与beeline一起使用,可以用jdbc客户端远程连接,一般用于生产环境。

在提供传统客服端的功能之外,还提供其他功能;

 Beeline连接

1.先在hadoop集群启动HiveServer2

启动命令:HiveServer2

启动日志在hive.log中查看

2.再启动Beeline

命令: Beeline

3.连接

!connect jdbc:hive2://localhost:10000

 Beeline命令

传统命令与Beeline命令示例比较:

1.传统:   quit;

2.Beeline:   !quit

HiveServer2 web界面管理

除了在HiveServer2可以看到日志,还可以hive -site.xml中配置 ip端口后可提供ui界面

<property>
<name>hive.server2.webui.host</name>
<value>localhost</value>
</property>
<property>
<name>hive.server2.webui.port</name>
<value>10002</value>
</property>

JDBC连接

导入hive依赖包,hadoop-common及其相关依赖

import java.sql.Connection; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; import java.sql.Statement; public class HiveServerBeeline { // 驱动全名 private static String driverName = "org.apache.hive.jdbc.HiveDriver"; public static void main(String[] args) throws SQLException { // TODO Auto-generated method stub try { // JVM查找并加载指定的类,也就是说JVM会执行该类的静态代码段 和 new 示例化对象类似 Class.forName(driverName); } catch (ClassNotFoundException e) { // TODO Auto-generated catch block e.printStackTrace(); System.exit(1); } // 连接并登陆数据库 Connection con = DriverManager.getConnection("jdbc:hive2://192.192.192.192:10000/default", "user", "passwd"); // 创建Statement对象 Statement stmt = con.createStatement(); String sql = "show databases"; // stmt.execute("create external table if not exists testdb.test(id int,name String)"); ResultSet res = stmt.executeQuery(sql); int i = 1; if (res.next()) { System.out.println(res.getString(i)); i++; } }

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpsfdf.html