HCatalog

HCatalog

HCatalog是Hadoop中的表和存储管理层,能够支持用户用不同的工具(Pig、MapReduce)更容易地表格化读写数据。

HCatalog从Apache孵化器毕业,并于2013年3月26日与Hive项目合并。
Hive版本0.11.0是包含HCatalog的第一个版本。(随Hive一起安装)

概述

HCatalog的表抽象向用户提供了Hadoop分布式文件系统(HDFS)中数据的关系视图,并确保用户不必担心数据存储在哪里或以什么格式存储 - RCFile格式,文本文件,SequenceFiles或ORC文件。
HCatalog支持读写任意格式的SerDe(序列化 - 反序列化)文件。默认情况下,HCatalog支持RCFile,CSV,JSON和SequenceFile以及ORC文件格式。要使用自定义格式,您必须提供InputFormat,OutputFormat和SerDe。

结构

HCatalog构建于Hive metastore,并包含Hive的DDL。HCatalog为Pig和MapReduce提供读写接口,并使用Hive的命令行界面发布数据定义和元数据探索命令。

安装

从Hive版本0.11.0开始,Hatalog集成于Hive。

命令行

如果从二进制tarball安装Hive,hcat命令在hcatalog / bin目录中可用。
hcat命令行类似于hive命令行;主要区别在于它限制了可以运行到仅元数据操作的查询,例如用于读取元数据的DDL和DML查询(例如“show tables”)。
CLI手册:https://cwiki.apache.org/confluence/display/Hive/HCatalog+CLI

大多数hcat命令可以作为hive命令发出,除了“hcat -g”和“hcat -p”。
请注意,hcat命令使用-p标志的权限,但是hive使用它来指定端口号

sqoop使用HCatalog导入数据到Hive,并指定多个分区

sqoop import -connect jdbc:oracle:thin:@192.168.186.65:1521:orcl -username ultrapower -password 123456 -table BMS_CONGRUENT_COUNT 
-m 1 -z --delete-target-dir  
--create-hcatalog-table 
--hcatalog-database tj 
--hcatalog-table BMS_CONGRUENT_COUNT 
--hcatalog-partition-keys in_month,in_date 
--hcatalog-partition-values "201601","20160101" 
--verbose
原文地址:https://www.cnblogs.com/Dhouse/p/7090433.html