hive元数据库表分析及操作】的更多相关文章

在安装Hive时,需要在hive-site.xml文件中配置元数据相关信息.与传统关系型数据库不同的是,hive表中的数据都是保存的HDFS上,也就是说hive中的数据库.表.分区等都可以在HDFS找到对应的文件.这里说到的元数据可以理解成hive中用于保存数据库.表.分区或者表字段等基本属性,以及这些属性与HDFS文件对应关系的一个映射. 这些映射关系比较常见的一个场景是保存在mysql数据库中.接下来会分析hive安装时的一些配置信息,以及元数据库中主要表的用途. 一.hive配置 有关hi…
元数据库表描述 这一节描述hive元数据库中比较重要的一些表的作用,随着后续对hive的使用逐渐补充更多的内容. mysql元数据库hive中的表: 表名 作用 BUCKETING_COLS 存储bucket字段信息,通过SD_ID与其他表关联 CDS 一个字段CD_ID,与SDS表关联 COLUMNS_V2 存储字段信息,通过CD_ID与其他表关联 DATABASE_PARAMS 空 DBS 存储hive的database信息 DELETEME1410257703262 空 FUNCS 空 F…
添加列  add columns alter table table_name add columns (id int comment '主键ID' ) ; 默认在表所有字段之后,分区字段之前. 替换列 replace columns ,会替换所有列,慎用! alter table table_name replace columns (id int comment '主键ID' ) ; 修改字段名称.类型.注释 change 1. 修改字段注释 alter table table_name c…
Hive 的元数据信息通常存储在关系型数据库中,常用MySQL数据库作为元数据库管理. 1. 版本表 i) VERSION   -- 查询版本信息 2. 数据库.文件存储相关 i) DBS -- 存储Hive中所有数据库的基本信息 ii) SDS -- 存储Hive中文件存储的基本信息 3. 表.视图相关 i) TBLS -- 存储Hive表.视图.索引表的基本信息 简要说明:1. 内部表与外部表的区别, 外部表 drop table 后,只删除元数据信息,数据文件还在.但是内部表 drop t…
Hive中小表与大表关联(join)的性能分析 [转自:http://blog.sina.com.cn/s/blog_6ff05a2c01016j7n.html] 经常看到一些Hive优化的建议中说当小表与大表做关联时,把小表写在前面,这样可以使Hive的关联速度更快,提到的原因都是说因为小表可以先放到内存中,然后大表的每条记录再去内存中检测,最终完成关联查询.这样的原因看似合理,但是仔细推敲,又站不住脚跟. 多小的表算小表?如果所谓的小表在内存中放不下怎么办?我用2个只有几条记录的表做关联查询…
数据库操作 查看全部的数据库 hive> show databases ; 使用数据库default hive> use default; 查看数据库信息 hive > describe database default; OK db_name comment location owner_name owner_type parameters default Default Hive database hdfs://hadoop1:8020/user/hive/warehouse pub…
Hive与表操作有关的语句 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, .…
Hive的基本知识与操作 目录 Hive的基本知识与操作 Hive的基本概念 为什么使用Hive? Hive的特点: Hive的优缺点: Hive应用场景 Hive架构 Client Metastore(元数据) sql语句是如何转化成MR任务的? 数据处理 Hive的三种交互方式 第一种交互方式 第二种交互方式 第三种交互方式 Hive元数据 Hive的基本操作 创建数据库 修改数据库 查看数据库详细信息 删除数据库 Hive的数据类型 基础数据类型 复杂的数据类型 Hive的文件格式 Hiv…
对于数据集文件,在将其中的数据存入hive之前,需要将数据进行预处理. 1.删除文件第一行记录,即字段名称 sed -i '1d' raw_user //1d表示删除第1行,同理,3d表示删除第3行,nd表示删除第n行 2.对字段进行预处理 主要是通过sh文件对csv文件进行字段的逐行处理,然后将处理后的数据储存在文本文档中: 下面举例sh文件的代码(sh文件需要与需要处理的csv文件放在同一目录下): #!/bin/bash #下面设置输入文件,把用户执行pre_deal.sh命令时提供的第一…
===============STARTED==================================== 事件起因: 业务的人mail过来说是有张表记录的10K+的优惠码记录没了,要我们确认下之前是否有这样的相关清除操作. 当然,先去数据库确认下这张表关于这个字段的count,的确没有相关的记录. 于是想着之前是不是有人做了相关的DML操作, 先看下这个视图, select table_name, owner,num_rows, blocks, last_analyzed,parti…