欢迎投稿

今日深度:

深入浅出学Hive——Hive JDBC,

深入浅出学Hive——Hive JDBC,


目录:

初始Hive

Hive安装与配置

Hive内建操作符与函数开发

Hive JDBC

Hive参数

Hive高级编程

Hive QL

Hive Shell基本操作

Hive优化

Hive体系结构

Hive原理


        第一部分:搭建Hive JDBC开发环境 搭建:Steps •新建工程hiveTest •导入Hive依赖的包 •Hive  命令行启动Thrift服务 •hive --service hiveserver &          第二部分:基本操作对象的介绍 Connection •说明:与Hive连接的Connection对象 •Hive 的连接 •jdbc:hive://IP:10000/default“ •获取Connection的方法 •DriverManager.getConnection("jdbc:hive://IP:10000/default", "", ""); Statement •说明: 用于执行语句 •创建方法 •Statement stmt = con.createStatement(); •主要方法 •executeQuery •execute ResultSet •说明:用来存储结果集 •创建方法 •stmt.executeQuery 方法得到 •主要方法 •getString() 特殊类型的处理 •Array •Map •Struct          第三部分:简单示例 背景      随着 3G 时代的到来,选择各种移动终端来上网的人越 来越多,如手机、平板等,这里面蕴含着巨大的商机 ,因为终端可以直接精确到人。所以对用户上网日志 的分析,也成为一个新热点,这些在数据库时代是不 可想象的,因为数据规模超大,云计算解决了这个问  需求描述 •分析用户的手机上网日志,得到 手机流量统计 信息与根据终端来获得流量的统计信息   表规划 • 日志表 log • 字段        用户手机号码 ,终端类型 ,访问的URL ,访问开始时间 ,访问结束时间 ,访问流量     phone string ,client_type  string ,url  string,visit_begintime timestamp,visit_endtime timestamp,traffic  bigint • 数据文件 •数据间以\t分隔,行之间以\n分隔 •数据示例:       13154587453     andorid www.baidu.com   2011-09-01 17:30:08     2011-09-01 17:31:09     10 •数据文件位置:     /home/test/log.txt • 手机号归属地 phone_location • 字段 用户手机号码 ,归属地 phone string ,location stirng   • 数据文件 数据间以\t分隔,行之间以\n分隔 数据示例:1334567890 chaoyang 数据文件位置: /home/test/phone_local.txt • 手机流量统计信息 total_traffic_by_phone • 字段 手机号码 ,总流量(k) , 归属地, 访问总时长(秒)                phone string,totol_traffic bigint,area string,visit_total_time timestamp • 数据文件 数据间以 \t 分隔,行之间以 \n 分隔      数据示例:            13154587453 102 chaoyang  123     • 终端类型统计信息 total_traffic_by_client_type • 字段 终端类型 ,访问总流量(k)        client_type string,totoal_traffic bigint • 数据文件 数据间以 \t 分隔,行之间以 \n 分隔      数据示例:  andorid 1034 实现步骤 •初始化数据,表 •示例:create external table phone_location (phone string,area string) row format delimited fields terminated by '\t' lines terminated by '\n' stored as textfile •编写处理逻辑 Java 代码示例 try { Class.forName(driverName); Connection con = DriverManager.getConnection("jdbc:hive://IP:10000/default", "", ""); Statement stmt = con.createStatement(); String sql = "show tables "; // show tables System.out.println("Running: " + sql); ResultSet res = stmt.executeQuery(sql); if (res.next()) { System.out.println(res.getString(1)); }            第四部分:基于Hive的数据库连接池 基于Hive的数据库连接池的实现 •使用DataSource作为数据源的实现 •DBConnectionManager 采用单例模式 •提供获得连接,关闭连接的方法 •setupDataSource() •DBConnectionManager getInstance() •close(Connection conn) •synchronized Connection getConnection() 转载请注明【 http://sishuok.com/forum/blogPost/list/6223.html】

www.htsjk.Com true http://www.htsjk.com/hive/32682.html NewsArticle 深入浅出学Hive——Hive JDBC, 目录: 初始Hive Hive安装与配置 Hive内建操作符与函数开发 Hive JDBC Hive参数 Hive高级编程 Hive QL Hive Shell基本操作 Hive优化 Hive体系结构 Hive原理         第一部...
相关文章
    暂无相关文章
评论暂时关闭