手动新建hive编程环境(以hive-1.0.0和hive-1.2.1为例)
如下,是用maven构建项目,本篇博文重点不是这个。初学者(小白)变成小鸟后,建议开始用maven啦!
Eclipse下Maven新建项目、自动打依赖jar包(包含普通项目和Web项目)
HBase 开发环境搭建(Eclipse\MyEclipse + Maven)
MapReduce 开发环境搭建(Eclipse\MyEclipse + Maven)
Hadoop项目开发环境搭建(Eclipse\MyEclipse + Maven)
Hive项目开发环境搭建(Eclipse\MyEclipse + Maven)
对于初学者,比如在Eclipse/MyEclipse里,手动构建hive项目来编程。怎么做呢?如下
第一步:
第二步:这里,你要么可以跟我这样,直接选择Map/Reduce project(这里可以直接把hadoop所有jar包导入,因为编程中你还是要用到hdfs啦。)
第三步:给你的Hive项目取名。
第四步:
第五步:得到
第六步:编个入门程序
- Demo.java
- package com.dajangtai.Hive;
- import java.sql.Connection;
- import java.sql.DriverManager;
- import java.sql.ResultSet;
- import java.sql.SQLException;
- import java.sql.Statement;
- public class Demo {
- private static String driverName = "org.apache.hive.jdbc.HiveDriver";//hive驱动名称
- private static String url = "jdbc:hive2://djt002:10000/default";//连接hive2服务的连接地址,Hive0.11.0以上版本提供了一个全新的服务:HiveServer2
- private static String user = "hadoop";//对HDFS有操作权限的用户
- private static String password = "";//在非安全模式下,指定一个用户运行查询,忽略密码
- private static String sql = "";
- private static ResultSet res;
- public static void main(String[] args) {
- try {
- Class.forName(driverName);//加载HiveServer2驱动程序
- Connection conn = DriverManager.getConnection(url, user, password);//根据URL连接指定的数据库
- Statement stmt = conn.createStatement();
- //创建的表名
- String tableName = "testHiveDriverTable";
- /** 第一步:表存在就先删除 **/
- sql = "drop table " + tableName;
- stmt.execute(sql);
- /** 第二步:表不存在就创建 **/
- sql = "create table " + tableName + " (key int, value string) row format delimited fields terminated by '\t' STORED AS TEXTFILE";
- stmt.execute(sql);
- // 执行“show tables”操作
- sql = "show tables '" + tableName + "'";
- res = stmt.executeQuery(sql);
- if (res.next()) {
- System.out.println(res.getString(1));
- }
- // 执行“describe table”操作
- sql = "describe " + tableName;
- res = stmt.executeQuery(sql);
- while (res.next()) {
- System.out.println(res.getString(1) + "\t" + res.getString(2));
- }
- // 执行“load data into table”操作
- String filepath = "/usr/local/data/djt.txt";//hive服务所在节点的本地文件路径
- sql = "load data local inpath '" + filepath + "' into table " + tableName;
- stmt.execute(sql);
- // 执行“select * query”操作
- sql = "select * from " + tableName;
- res = stmt.executeQuery(sql);
- while (res.next()) {
- System.out.println(res.getInt(1) + "\t" + res.getString(2));
- }
- // 执行“regular hive query”操作,此查询会转换为MapReduce程序来处理
- sql = "select count(*) from " + tableName;
- res = stmt.executeQuery(sql);
- while (res.next()) {
- System.out.println(res.getString(1));
- }
- conn.close();
- conn = null;
- } catch (ClassNotFoundException e) {
- e.printStackTrace();
- System.exit(1);
- } catch (SQLException e) {
- e.printStackTrace();
- System.exit(1);
- }
- }
- }
运行之后,得到
2 hive的使用 + hive的常用语法
手动新建hive编程环境(以hive-1.0.0和hive-1.2.1为例)的更多相关文章
- 手动编译部署LNMP环境(CentOS7.5+Nginx-1.18.0+MySQL-5.7.30+PHP-7.4.14)
在平时运维工作中,经常需要用到LNMP应用框架.LNMP环境是指在Linux系统下,由Nginx + MySQL + PHP组成的网站服务器架构. 可参考前面的文章: 如何在CentOS 7上搭建LA ...
- Hive编程(影印版)
<Hive编程(影印版)> 基本信息 原书名:Programming Hive 作者: Edward Capriolo Dean Wampler Jason Rutherglen 出版社: ...
- 大数据学习系列之八----- Hadoop、Spark、HBase、Hive搭建环境遇到的错误以及解决方法
前言 在搭建大数据Hadoop相关的环境时候,遇到很多了很多错误.我是个喜欢做笔记的人,这些错误基本都记载,并且将解决办法也写上了.因此写成博客,希望能够帮助那些搭建大数据环境的人解决问题. 说明: ...
- Windows10系统下Hadoop和Hive开发环境搭建填坑指南
前提 笔者目前需要搭建数据平台,发现了Windows系统下,Hadoop和Hive等组件的安装和运行存在大量的坑,而本着有坑必填的目标,笔者还是花了几个晚上的下班时候在多个互联网参考资料的帮助下完成了 ...
- Windows环境下搭建Hadoop(2.6.0)+Hive(2.2.0)环境并连接Kettle(6.0)
前提:配置JDK1.8环境,并配置相应的环境变量,JAVA_HOME 一.Hadoop的安装 1.1 下载Hadoop (2.6.0) http://hadoop.apache.org/release ...
- 手把手教你搭建Hive Web环境
了解Hive的都知道Hive有三种使用方式--CLI命令行,HWI(hie web interface)浏览器 以及 Thrift客户端连接方式. 为了体验下HWI模式,特意查询了多方的资料,都没有一 ...
- hive编程指南--employees表数据定义
hive编程指南中有个employees表,默认的分隔符比較繁杂,编辑起来不太方便(普通编辑器编辑的控制字符^A等被当成字符串处理了,没有起到分隔符的作用). 收集的解决方式例如以下: http:// ...
- 《Programming Hive》读书笔记(一)Hadoop和hive环境搭建
<Programming Hive>读书笔记(一)Hadoop和Hive环境搭建 先把主要的技术和工具学好,才干更高效地思考和工作. Chapter 1.Int ...
- [转载] Hadoop和Hive单机环境搭建
转载自http://blog.csdn.net/yfkiss/article/details/7715476和http://blog.csdn.net/yfkiss/article/details/7 ...
随机推荐
- python学习笔记:第八天
文件操作: 1.文件基本操作方法: 1.打开文件2.文件操作3.文件关闭三种基本的操作模式 r(只可读) w(只可写) a(追加) 2.读文件: # f = open('静夜思','r',encodi ...
- SNMP学习
http://blog.sina.com.cn/s/blog_4502d59c0101fcy2.html 简单网络管理协议(SNMP)是TCP/IP协议簇的一个应用层协议.在1988年被制定,并被In ...
- Springmvc JSON交互
先上前端javascript.ajax代码 <pre name="code" class="javascript"> function testAj ...
- netty学习(二)--传统的bio编程
网络编程的基本模型是Client/Server模型.也就是两个进程之间进行相互通信,当中服务端提供位置信息( 绑定ip地址和监听port),client通过连接操作向服务端监听的地址发送连接请求,通过 ...
- Zico源代码分析:执行启动过程分析和总结
事实上已经有童鞋对Zico的源代码和执行过程进行了总结,比如:http://www.cnblogs.com/shuaiwang/p/4522905.html.这里我再补充一些内容. 当我们使用mvn ...
- zzulioj--1822--水水更健康(水题)
1822: 水水更健康 Time Limit: 1 Sec Memory Limit: 128 MB Submit: 49 Solved: 19 SubmitStatusWeb Board Des ...
- The while statement
Computers are often used to automate repetitive tasks. Repeating identical or similar tasks without ...
- Python语法篇:
- 基础篇: - 介绍 - 下载安装以及PyCharm安装 - 变量 - 数据类型 - 列表,元组,字典,集合 - 函数 - 内置函数 - 生成器,迭代器,装饰器 - 面向对象: - 面向对象简介: ...
- Codeforces 667C Reberland Linguistics 记忆化搜索
链接 Codeforces 667C Reberland Linguistics 题意 给你一个字符串,除去前5个字符串后,使剩下的串有长度为2或3的词根组成,相邻的词根不能重复.找到所有的词根 思路 ...
- BZOJ 3786: 星系探索 欧拉游览树
一个叫 Euler-Tour-Tree 的数据结构,说白了就是用 Splay_Tree 维护欧拉序 #include <cstring> #include <algorithm> ...