类似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) 自定义分隔符:…
0. 说明 Hive 建表示例及指定分隔符 1. Hive 建表 Demo 在 Hive 中输入以下命令创建表 user2 create table users2 (id int, name string, age int) row format delimited fields terminated by '\t'; 插入数据 ,); 2. 分隔符类型 字段分隔符 fields terminated by '\t' array 类型成员分隔符 collection items terminat…
hive sequencefile导入文件遇到FAILED: SemanticException Unable to load data to destination table. Error: The file that you are trying to load does not match the file format of the destination table.错误 原因 这是因为SequenceFile的表不能使用load来加载数据,只能导入sequence类型的数据 解决办…
建表: create EXTERNAL table tabtext(IMSI string,MDN string,MEID string,NAI string,DestinationIP string,DestinationPort string,SourceIP string,SourcePort string,PDSNIP string,PCFIP string,HAIP string,UserZoneID string,BSID string,Subnet string,ServiceOp…
客户端连接hive [root@bigdata-02 bin]# ./beeline Beeline version by Apache Hive beeline: Connecting : Enter username :: root Enter password :: ****** Connected ) Driver: Hive JDBC (version ) Transaction isolation: TRANSACTION_REPEAtable_READ : jdbc:hive2::…
从 oracle 数据库导数到到 hive 大数据平台,需要按照大数据平台的数据规范,重新生成建表的 SQL 语句,方便其间,写了一个自动生成SQL的存储过程. ① 创建一张表,用来存储源表的结构,以便进行数据处理(可以用临时表,创建表是为了方便核对数据): create table T_P_TABLE_NAME_TEMP ( owner ) not null, table_name ) not null, tab_comments ), column_name ) not null, data…
背景:部署CDH集群的 hive 服务,选用 mysql 作为 hive 元数据的存储数据库,通过 hive cli 建表时发现中文注释均乱码. 现象:hive端建表中文注释乱码. 定位: 已经确认过 mysql 库的默认编码是 utf-8,并且 mysql 中建库建表不存在中文乱码的情况. 于是查看hive库表的编码,分别通过如下方式查看hive库和随机某个表的编码,发现hive表的编码是 lantin1,问题也就出在这里. 查看hive库编码: 查看hive表编码: 解决方法: 将hive表…
1.写出文件工具类 package ccc.utile; import java.io.*; /** * @author ccc * @version 1.0.0 * @ClassName WriteToFileExample.java * @Description TODO IO流 * @ProjectName ccc * @createTime 2021年08月07日 18:32:00 */ public class WriteToFileExample { /** * 追加写入数据到指定文…
原文链接: https://www.toutiao.com/i6766784274965201415 一.普通建表方式 create table stu_info( id int, name string )ROW FORMAT DELIMITED FIELDS TERMINATED BY ' ' 载入数据 load data local inpath '/data/hivetest/stu_info_local' into table stu_info; load data inpath '/…
今天微博大数据平台发邮件来说.他们有一个hql执行失败.可是从gateway上面的日志看不出来是什么原因导致的,我帮忙看了一下.最后找到了问题的解决办法,下面是分析过程: 1.执行失败的hql: INSERT OVERWRITE TABLE brand_ad_user_with_interact_score_3 select a.uid, a.brand, a.friend, CASE b.weight WHEN NULL THEN '0.000000' ELSE b.weight END fr…
建表范例:支持update和delete create table aaa( id string, visitor_name string ) clustered by(id) into buckets stored as orc TBLPROPERTIES('transactional'='true'); 目前只有ORCFileformat支持AcidOutputFormat,另外,建表时必须指定('transactional' = true)2.alter table aaa set ser…
1. hive> create table wyp > (id int, name string, > age int, tel string) > ROW FORMAT DELIMITED > FIELDS TERMINATED BY '\t' > STORED AS TEXTFILE; 2. cat wyp.txt 1       wyp     25      13188888888888 2       test    30      1388888888888…
drop table dw.fct_so;create table dw.fct_so(so_id bigint comment '订单ID',parent_so_id bigint comment '父订单ID (如果未拆单,则等于so_id)',order_code string comment '订单编码',order_amt float comment '订单金额(产品总额+运费)',actl_order_amt float comment '实付金额',actl_order_amt_p…
1. hive的简介(具体见文档) Hive是分析处理结构化数据的工具   本质:将hive sql转化成MapReduce程序或者spark程序 Hive处理的数据一般存储在HDFS上,其分析数据底层的实现是MapReduce/spark,执行程序运行在Yarn上 其大致可以按如下图理解(具体可见HIVE文档) sql语句是对某个表进行操作,所以hive一定要创建一个表格,这个表格必须要映射到hdfs中某个具体的文件才行,而映射关系.表的结构数据以及hdfs中数据的存储结构都会在创建表时规定,…
查看hive建表语句:show create table tablename; 查看hive表结构:describe  tablename; 简写:desc tablename;…
情况描述 Hive建表时报错,元数据存储在mysql中. 报错信息 如下: FAILED: Execution Error, bytes com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Specified key was too bytes at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method) at sun.reflect.Native…
方法一: 现在的导出还是有缺陷的,导出的文件中还是存在其他不必要的信息 #!/bin/bash ##获取数据库 databases=$(hive -e "show databases; exit;") for database in $databases; do #获取hive建表语句 tables=$(hive -e "use $database; show tables;") for table in $tables; do echo "--=====…
目录 认识Hive 1. 解压 2. 配置mysql metastore(切换到root用户) 3. 配置hive 4. 安装hive和mysq完成后,将MySQL的连接jar包拷贝到$HIVE_HOME/lib目录下 5. 建表 6. 创建分区表 认识Hive Hive是基于Hadoop构建的一套数据仓库分析系统,它提供了丰富的SQL查询方式来分析存储在Hadoop分布式文件系统中的数据,可以将结构化的数据文件映射为一张数据库表,并提供完整的SQL查询功能,可以将SQL语句转换为MapRedu…
两种方式加载hbase中的表到hive中,一是hive创建外部表关联hbase表数据,二是hive创建普通表将hbase的数据加载到本地 1. 创建外部表 hbase中已经有了一个test表,内容如下 hbase(main):012:0* scan 'test' ROW COLUMN+CELL 001 column=info:age, timestamp=1526563694645, value=18 001 column=info:name, timestamp=1526563629119,…
转的这里的 首先先导出所有的table表 hive -e "use xxxdb;show tables;" > tables.txt 然后再使用hive内置语法导出hive表的建表语句,这里使用的是一个shell cat tables.txt |while read eachline do hive -e "use xxxdb;show create table $eachline" >>tablesDDL.txt done…
1.建表 Create [EXTERNAL] TABLE [IF NOT EXISTS] table_name ( [(col_name data_type [COMMENT col_comment], ...)] )   [COMMENT table_comment] [PARTITIONED BY (col_name data_type [COMMENT col_comment], ...)] [CLUSTERED BY (col_name, col_name, ...) [SORTED B…
我昨天在hive上建表,一直报Display all 459 possibilities? (y or n) ,之前我以为是建表语句有问题,一直在改语句,后来在网上搜这个错误,原来语句里混杂了Tab缩进,这可能是我使用notepad++的时候打出来的: 解决方案:把它粘到plsql里,将空格和缩进都重新打一遍就好了,在plsql里可以用tab键:…
背景:mysql编码是utf-8,mysql中建库建表中文显示都正常,但在hive窗口中建表时字段中文注释均乱码的问题. 问题:hive中建表后字段中文注释显示异常. 1. 定位 mysql 端问题 查看 mysql 字符集编码 mysql 中新建表中文注释显示正常 由此可以定位到并不是 mysql 服务端的编码问题. 2. 定位 hive 元数据问题 查看hive库表在mysql中的元数据信息,发现数据库的编码是utf8,而库中表的编码是latin1,所以才会导致hive中中文显示乱码. 至此…
Hive中将文件加载到数据库表失败解决办法(hive创建表失败) 遇到的问题: FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. MetaException(message:Got exception: java.net.ConnectException Call From dblab-VirtualBox/127.0.1.1 to localhost:9000 failed o…
### 读取hive的表结构,生成带comment的视图建表语句 # 读取配置文件中的表并进行遍历 grep -v '^#' tablesFile|while read tableName do status= viewName=$(echo ${tableName}|sed "s/^dwd_/dwd_cms_out_l_/i"|sed "s/^dws_/dws_cms_out_l_/i"|sed "s/^ads_/ads_cms_out_l_/i&quo…
导入数据 1). 本地 load data local inpath "/root/example/hive/data/dept.txt" into table dept; 2). HDFSload data inpath "/user/hive/warehouse/functiontest.db/dept1/dept.txt" into table dept1; 我发现使用这个命令后,hdfs上的xxx.txt文件会移动到当前表的目录下,原来表的目录下xxx.tx…
1.Table 内部表 1).与数据库中的Table在概念上是类似的 2).每一个Table在Hive中都有一个相应的目录存储数据 3).所有的Table数据(不包括 External Table) 都保存在这个目录中 4).删除表时,元数据与数据都会被删除 5).建表: 2.Partition 分区表 1).Partition 对应于数据库的Partition列的密集索引 2).在Hive中,表中的一个Partition对应于表下的一个目录,所有的Partition的数据都存储在对应的目录中.…
一.Hive的表 Hive的表分为内部表.外部表和分区表. 1.内部表,为托管表. 2.外部表,external. 3.分区表. 详解: 内部表,删除表的时候,数据会跟着删除. 外部表,在删除表的时候,数据不会跟着删除. 默认分隔符:列 为 \001         行分隔符为 \n 分区表: 1.解决查询效率,不全表查询,只查对应的分区. 2.避免数据重复的问题,即数据质量方面安全. create table tablename ( 字段1 字段类型 , 字段2 字段类型 ) PARTITIO…
今天最大的收获莫过于把binfs和hive注册表同时在三星的平台上实现了,这可是前无古人啊(只是看到好多哥们说找不到三星的HIVE资料),哈哈哈.怕今天的成果日后成炮灰,还是写下来比较好,要养成这样的习惯!!! 其实所有的工作都是改注册表,但是怎么改,为什么这么改要搞懂就蛮费一番心思了,好在俺是喜欢钻研的动物,小case! 今天总结一些实现的过程和原理. 我们的案子是基于samsung S3C2440A+samsung ONENAND+WinCE5.0的,开发平台是platform builde…
对于每一个表(table)或者分区, Hive可以进一步组织成桶,也就是说桶是更为细粒度的数据范围划分.Hive也是针对某一列进行桶的组织.Hive采用对列值哈希,然后除以桶的个数求余的方式决定该条记录存放在哪个桶当中.所谓Hive中的分桶,实际就是指的MapReduce中的分区.根据Reduce的数量,分成不同个数的文件. 我们先准备我们将使用的分桶表的数据. 1,jack,2016/11/11 2,michael,2016/11/12 3,summer,2016/11/13 4,spring…