JDBC连接Apache Drill

来源:互联网 发布:宝软网java软件下载 编辑:程序博客网 时间:2024/06/04 20:33

本文简单介绍drill的jdbc连接方式
1、下载drill,并解压
tar zxvf apache-drill-1.6.0.tar.gz -C /mofeng/tmp

2、修改配置文件
cd /mofeng/tmp/apache-drill-1.6.0/conf
cp drill-override-example.conf drill-override.conf
cat drill-override.conf

drill.exec: {  cluster-id: "drillbits1"  zk: {        connect: "192.168.105.137:2181",        #zk地址端口        root: "drill2",        #设置znode        refresh: 500,        timeout: 5000,        retry: {          count: 7200,          delay: 500        }  },}

3、192.168.105.137节点启动zookeeper

4、启动drill
/mofeng/tmp/apache-drill-1.6.0/bin/drillbit.sh start

5、编写Client代码如下:

package test;/** * date: 2016年3月29日 下午3:55:53 <br/> * @author mofeng */import java.sql.*;public class DrillJDBCExample {    static final String JDBC_DRIVER = "org.apache.drill.jdbc.Driver";    static final String DB_URL = "jdbc:drill:zk=192.168.105.137:2181/drill2/drillbits1";    //指定zk地址:端口/ZNODE/cluster-id    static final String USER = "admin";    static final String PASS = "admin";    public static void main(String[] args) {        Connection conn = null;        Statement stmt = null;        try{            Class.forName(JDBC_DRIVER);            conn = DriverManager.getConnection(DB_URL,USER,PASS);            stmt = conn.createStatement();            /* Perform a select on data in the classpath storage plugin. */            //String sql = "select employee_id,first_name,last_name from cp.`employee.json`";            String sql = "select * from cp.`employee.json`";            ResultSet rs = stmt.executeQuery(sql);            while(rs.next()) {                int id  = rs.getInt("employee_id");                String first = rs.getString("first_name");                String last = rs.getString("last_name");                System.out.print("ID: " + id);                System.out.print(", First: " + first);                System.out.println(", Last: " + last);            }            rs.close();            stmt.close();            conn.close();        } catch(SQLException se) {            //Handle errors for JDBC            se.printStackTrace();        } catch(Exception e) {            //Handle errors for Class.forName            e.printStackTrace();        } finally {            try{                if(stmt!=null)                    stmt.close();            } catch(SQLException se2) {            }            try {                if(conn!=null)                    conn.close();            } catch(SQLException se) {                se.printStackTrace();            }        }    }}

6、依赖包
drill-jdbc-all-1.6.0.jar

2 0
原创粉丝点击