使用jdbc连接impala例子

来源: https://github.com/onefoursix/Cloudera-Impala-JDBC-Example

 

需要依赖的lib见这篇文章。

http://www.cloudera.com/content/cloudera-content/cloudera-docs/Impala/latest/Installing-and-Using-Impala/ciiu_impala_jdbc.html

 

import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
 
public class ClouderaImpalaJdbcExample {
 
	// here is an example query based on one of the Hue Beeswax sample tables 
	private static final String SQL_STATEMENT = "SELECT a FROM test limit 10";
 
	// set the impalad host
	private static final String IMPALAD_HOST = "192.168.1.106";
 
	// port 21050 is the default impalad JDBC port 
	private static final String IMPALAD_JDBC_PORT = "21050";
 
	private static final String CONNECTION_URL = "jdbc:hive2://" + IMPALAD_HOST + ':' + IMPALAD_JDBC_PORT + "/;auth=noSasl";
 
	private static final String JDBC_DRIVER_NAME = "org.apache.hive.jdbc.HiveDriver";
 
	public static void main(String[] args) {
 
		System.out.println("\n=============================================");
		System.out.println("Cloudera Impala JDBC Example");
		System.out.println("Using Connection URL: " + CONNECTION_URL);
		System.out.println("Running Query: " + SQL_STATEMENT);
 
		Connection con = null;
 
		try {
 
			Class.forName(JDBC_DRIVER_NAME);
 
			con = DriverManager.getConnection(CONNECTION_URL);
 
			Statement stmt = con.createStatement();
 
			ResultSet rs = stmt.executeQuery(SQL_STATEMENT);
 
			System.out.println("\n== Begin Query Results ======================");
 
			// print the results to the console
			while (rs.next()) {
				// the example query returns one String column
				System.out.println(rs.getString(1));
			}
 
			System.out.println("== End Query Results =======================\n\n");
 
		} catch (SQLException e) {
			e.printStackTrace();
		} catch (Exception e) {
			e.printStackTrace();
		} finally {
			try {
				con.close();
			} catch (Exception e) {
				// swallow
			}
		}
	}
}



fatkun

没有评论


You can leave the first : )



发表评论

电子邮件地址不会被公开。