hive javaapi 002】的更多相关文章

默认开启10000端口开启前,编辑hive-site.xml设置impersonation,防止hdfs权限问题,这样hive server会以提交用户的身份去执行语句,如果设置为false,则会以起hive server daemon的admin user来执行语句 <property> <name>hive.server2.enable.doAs</name> <value>false</value> </property> po…
在上文中https://www.cnblogs.com/lay2017/p/9973370.html 我们通过hive shell去操作hive,本文我们以Java代码的示例去对hive执行加载数据和查询数据来演示JavaAPI如何通过JDBC来操作hive的 hive client的更多内容可以参考:https://cwiki.apache.org/confluence/display/Hive/HiveClient 一.依赖 由于hive的服务端基于1.2.2版本,所以这里采用jdbc1.2…
jdbc远程连接hiveserver2 2016-04-26 15:59 本站整理 浏览(425)     在之前的学习和实践Hive中,使用的都是CLI或者hive –e的方式,该方式仅允许使用HiveQL执行查询.更新等操作,并且该方式比较笨拙单一.幸好Hive提供了轻客户端的实现,通过HiveServer或者HiveServer2,客户端可以在不启动CLI的情况下对Hive中的数据进行操作,两者都允许远程客户端使用多种编程语言如Java.Python向Hive提交请求,取回结果.HiveS…
Hive SQL 语法详解:http://blog.csdn.net/hguisu/article/details/7256833Hive SQL 学习笔记(常用):http://blog.sina.com.cn/s/blog_66474b16010182yu.html Hive中的分区:http://blog.csdn.net/jiedushi/article/details/6660185 Hive基础知识:http://www.csdn.net/article/2014-01-07/281…
索引是hive0.7之后才有的功能,创建索引需要评估其合理性,因为创建索引也是要磁盘空间,维护起来也是需要代价的 创建索引 hive> create index [index_studentid] on table student_3(studentid) > as 'org.apache.hadoop.hive.ql.index.compact.CompactIndexHandler' > with deferred rebuild > IN TABLE index_table_…
替换分隔符为\ sed -i 's/\t/\x1/g;s/;/\x1/g' test1.txt gz压缩 gzip -r test1.txt 查看文件 hdfs dfs -ls /hive/warehouse/ods_jungle_ad.db/table1/dt=-- 导入文件 load data local inpath '/home/hadoop/test/hb/test1.txt.gz' into table table1 partition (dt = '2016-12-15') 关键字…
hive基本操作 hive的数据类型 1)基本数据类型 TINYINT,SMALLINT,INT,BIGINT FLOAT/DOUBLE BOOLEAN STRING 2)复合类型 ARRAY:一组有序字段.字段的类型必须相同,例Array(1,2) MAP:一组无序的键/值对.键的类型必须是原子的,值可以是任何类型,同一个映射的键的类型必须相同,值得类型也必须相同.例Map('a',1,'b',2) STRUCT:一组命名的字段.字段类型可以不同.例Struct('a',1,1,0) hive…
工作中经常要用到的一些东西,一直没整理,用的多的记住了,用的不多的每次都是去查,所以记录一下. DDL(数据定义语言),那就包括建表,修改表结构等等了 建表:create hive table hive> CREATE TABLE pokes (foo INT, bar STRING); 创建一个名为pokes的表,包括两个字段,第一个字段foo是整型,第二个字段bar是字符串. hive> CREATE TABLE invites (foo INT, bar STRING) PARTITIO…
hive odbc 驱动配置成功后,通过c#访问就变得比较简单了,分为查询与更新操作,直接附上测试代码.在此过程中需要注意c#工程编译的目标平台 读写访问代码示例: public class HiveOdbcClient { /// <summary> /// /// </summary> public static HiveOdbcClient Current { get { return new HiveOdbcClient(); } } /// <summary>…
HiveQL 是 Hive 查询语言,它不完全遵守任一种 ANSI SQL 标准的修订版,但它与 MySQL 最接近,但还有显著的差异,Hive 不支持行级插入,更新和删除的操作,也不支持事务,但 Hive 增加了在 Hadoop 背景下的可以提供更高性能的扩展,以前个性化的扩展,还有一些外部程序:   4.1 Hive 中的数据库 Hive 数据库本质上就是表的一个目录或命名空间:如果用户没有显示式的指定库那么将会使用默认的数据库 default hive> cretae database i…
Hive 支持关系型数据库中的大多数据基本数据类型,同时也支持3种集合类型:   3.1 Hive 的基本数据类型 支持多种不同他度的整形和浮点型数据类型,具体如下(全都是保留字): tinyint    1byte 有符号整数 smalint    2byte有符号号数 int    4byte有符号号数 bigint    8byte有符号号数 boolean    布尔类型, true 或者 false float    单精度浮点数 double    双精度浮点数 string    …
官方参考文档:https://cwiki.apache.org/confluence/display/Hive/LanguageManual 一.命令行和客户端 1. 命令窗口 1)进入命令窗口 hive 2)在hive cli命令窗口查看hdfs文件系统: dfs -ls / 3)在hive cli命令窗口如何查看本地文件系统 !ls / 2. hive交互方式 1) hive -e "select * from test.student;" $HIVE_HOME/bin/hive…
1.命令行操作 (1)打印查询头,需要显示设置: set hive.cli.print.header=true; (2)加"--",其后的都被认为是注释,但 CLI 不解析注释.带有注释的文件只能通过这种方式执行: hive -f script_name (3)-e后跟带引号的hive指令或者查询,-S去掉多余的输出: hive -S -e "select * FROM mytable LIMIT 3" > /tmp/myquery (4)遍历所有分区的查询将…
Hbase总结(一)-hbase命令 下面我们看看HBase Shell的一些基本操作命令,我列出了几个常用的HBase Shell命令,如下: 名称 命令表达式 创建表 create '表名称', '列名称1','列名称2','列名称N' 添加记录 put '表名称', '行名称', '列名称:', '值' 查看记录 get '表名称', '行名称' 查看表中的记录总数 count  '表名称' 删除记录 delete  '表名' ,'行名称' , '列名称' 删除一张表 先要屏蔽该表,才能对…
Hive Data Definition Language Hive Data Definition Language Overview Create/Drop/Alter Database Create/Drop/Truncate Table Alter Table/Partition/Column Create/Drop/Alter View Create/Drop/Alter Index Create/Drop Function Create/Drop/Grant/Revoke Roles…
http://blog.csdn.net/vah101/article/details/22597341 这篇文章最初是基于介绍HIVE-705.这个功能允许Hive QL命令访问HBase表,进行读(select).写(insert)操作.它甚至可以基于join.union操作对hbase表和hive原生的表进行混合访问. 这个功能还在不断的完善中,欢迎提出建议. 存储handler 在开始介绍之前,首先请阅读StorageHandlers,对存储处理程序的框架有个初步的认识,可以帮助读者理解…
类似Mysql的数据库概念: hive> CREATE DATABASE cui; hive> USE cui; 创建表: CREATE TABLE test( first STRING, second STRING ) 默认记录和字段分隔符: \n   每行一条记录 ^A    分隔列(八进制 \001) ^B    分隔ARRAY或者STRUCT中的元素,或者MAP中多个键值对之间分隔(八进制 \002) ^C    分隔MAP中键值对的“键”和“值”(八进制 \003) 自定义分隔符:…
// HiveQLa) 数据定义语言1 数据库表的一个目录或命名空间,如果用户没有指定数据库的话,那么将会使用默认的数据库default-----创建数据库CREATE DATABASE guoyongrong;// 给每个数据库创建了一个目录,数据库的文件目录名是以.db结尾的CREATE DATABASE IF NOT EXISTS guoyongrong; // 避免在数据库存在的创建错误CREATE DATABASE guoyongrong LOCATION '/my/preferred…
1.建表: hive> CREATE TABLE pokes (foo INT, bar STRING); hive> CREATE TABLE invites (foo INT, bar STRING) PARTITIONED BY (ds STRING); 由于很多数据在hadoop平台,当从hadoop平台的数据迁移到hive目录下时,由于hive默认的分隔符是/u0001,为了平滑迁移,需要在创建表格时指定数据的分割符号,语法如下: create table ooo(uid strin…
本文转载自:http://blog.csdn.net/haojun186/article/details/7977565 1.  HIVE结构 Hive 是建立在 Hadoop 上的数据仓库基础构架.它提供了一系列的工具,可以用来进行数据提取转化加载(ETL),这是一种可以存储.查询和分析存储在 Hadoop 中的大规模数据的机制.Hive 定义了简单的类 SQL 查询语言,称为 QL,它允许熟悉 SQL 的用户查询数据.同时,这个语言也允许熟悉 MapReduce 开发者的开发自定义的 map…
摘要 Hive提供了与HBase的集成,使得能够在HBase表上使用HQL语句进行查询 插入操作以及进行Join和Union等复杂查询   应用场景 1. 将ETL操作的数据存入HBase 2. HBase作为Hive的数据源 3. 构建低延时的数据仓库   使用 1.从Hive中创建HBase表 使用HQL语句创建一个指向HBase的Hive表 CREATE TABLE hbase_table_1(key int, value string) //Hive中的表名hbase_table_1 S…
Hadoop Hive与Hbase整合+thrift 1.  简介 Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的sql查询功能,可以将sql语句转换为MapReduce任务进行运行. 其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合数据仓库的统计分析. Hive与HBase的整合功能的实现是利用两者本身对外的API接口互相进行通信,相互通信主要是依靠hive_hba…
用hbase做数据库,但因为hbase没有类sql查询方式,所以操作和计算数据很不方便,于是整合hive,让hive支撑在hbase数据库层面 的 hql查询.hive也即 做数据仓库 1. 基于Hadoop+Hive架构对海量数据进行查询:http://blog.csdn.net/kunshan_shenbin/article/details/7105319 2. HBase 0.90.5 + Hadoop 1.0.0 集成:http://blog.csdn.net/kunshan_shenb…
(2015.07.22Hive笔记) 一.Hive的安装 1.1Hive的安装过程 下载hive源文件(apache-hive-0.14.0-bin.tar.gz ) 解压hive文件 进入$HIVE_HOME/conf/修改文件 cp hive-env.sh.template hive-env.sh cp hive-default.xml.template(模板文档,提供了hive很多参数) hive-site.xml 修改$HIVE_HOME/conf的hive-env.sh,增加以下三行…
目录 [toc] 安装 升级 安装 nohup hive –service hiveserver & 启动: sudo nohup ./hive --service metastore &-----------Startup Hive Embedded(如果metastore配置成 remote方式 那就应该把metastore也启动) 测试standalone,必须用remote mysql那种设置 1,hive 命令行模式. 直接输入/hive/bin/hive的执行程序 或者输入 h…
目录 · 概况 · 手工安装 · 引言 · 创建HDFS目录 · 创建元数据库 · 配置文件 · 测试 · 原理 · 架构 · 与关系型数据库对比 · API · WordCount · 命令 · 数据类型 · 文件存储格式 · 数据格式 · 数据库 · 数据表 · 装载数据 · 插入数据 · 导出数据 · 查询数据 · 函数 · 性能调优 · join调优 · Reduce任务数 · 合并小文件 · multi-group-by insert和multiple insert · union a…
hive的多表连接,都会转换成多个MR job,每一个MR job在hive中均称为Join阶段.按照join程序最后一个表应该尽量是大表,因为join前一阶段生成的数据会存在于Reducer 的buffer中,通过stream最后面的表,直接从Reducer中读取已经缓冲的中间数据结果,与后面的大表进行连接时,只需要从buffer中读取缓存的key,与大表中的指定key进行连接,速度更快,也避免内存缓冲区溢出. SELECT a.val, b.val, c.val FROM a JOIN b…
Joins: Inner  joins: hive> SELECT * FROM sales; Joe 2 Hank 4 Ali 0 Eve 3 Hank 2 hive> SELECT * FROM things; 2 Tie 4 Coat 3 Hat 1 Scarf 两个表Inner joins: hive> SELECT sales.*, things.* > FROM sales JOIN things ON (sales.id =things.id); Joe 2 2 Ti…
分区和桶:   分区:可以提高查询的效率,只扫描固定范围数据,不用全部扫描 CREATE TABLE logs (ts BIGINT, lineSTRING) PARTITIONED BY (dt STRING, country STRING); 通过关键字PARTITIONED BY 定义分区表 LOAD DATA LOCAL INPATH '/home/data/file1' INTO TABLE logs PARTITION (dt='2001-01-01',country='GB');…
HIVE表中默认将NULL存为\N,可查看表的源文件(hadoop fs -cat或者hadoop fs -text),文件中存储大量\N, 这样造成浪费大量空间.而且用java.python直接进入路径操作源数据时,解析也要注意. 另外,hive表的源文件中,默认列分隔符为\001(SOH),行分隔符为\n(目前只支持\n,别的不能用,所以定义时不需要显示声明).元素间分隔符\002,map中key和value的分隔符为\003. 举例,如源文件中一条记录为: 10000042SOH77SOH…