[981]Hive基本使用--命令行

基本使用

Hive 用户接口主要有三个:命令行(CLI),客户端(Client) 和 Web界面(WUI)。其中最常用的是 CLI,启动的时候,会同时启动一个 Hive 服务。Client 是 Hive 的客户端,用户连接至 Hive Server。在启动 Client 模式的时候,需要指出 Hive Server 所在节点,并且在该节点启动 Hive Server。 WUI 是通过浏览器访问 Hive的Web工具

这里介绍Hive命令行的一个基本使用

注意:hive命令行语句后面一定要加分号

库操作

  1. 创建数据库
    hive> create database zwctest;
  2. 查看数据库
    hive> show databases;
  3. 切换数据库
    hive>use database_name;
  4. 删除数据库
    hive> drop database if exists database_name;

表操作

  1. 创建表:创建一个外部表,表字段有name,sex,age,comment后面内容为字段描述信息
hive> create external table if not exists studenttable(
name string comment 'name value',
sex string comment 'sex value',
age string comment 'age value')
row format delimited
fields terminated by '\t'
lines terminated by '\n'
stored as textfile;

结果:

OK
testtable
Time taken: 0.023 seconds, Fetched: 1 row(s)
  1. 查看所有表:hive> show tables;
  1. 查看表信息:hive> desc studenttable;
OK
|name | string | name value |
|sex | string | sex value |
|age | string | age value |

这里面有一个字段data,是string类型的,描述信息comment是“d comment”。

  1. 查看扩展描述信息:hive> describe formatted studenttable;

结果:

OK
#col_name data_type comment
name string name value
sex string sex value
age string age value
#Detailed Table Information
Database: zwctest
Owner: root
CreateTime: Sun Oct 23 17:52:38 CST 2016
LastAccessTime: UNKNOWN
Protect Mode: None
Retention: 0
Location: hdfs://test1:8020/user/hive/warehouse/zwctest.db/studenttable
Table Type: EXTERNAL_TABLE
Table Parameters:
EXTERNAL TRUE
transient_lastDdlTime 1477216358
# Storage Information
SerDe Library: org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe
InputFormat: org.apache.hadoop.mapred.TextInputFormat
OutputFormat: org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat
Compressed: No
Num Buckets: -1
Bucket Columns: []
Sort Columns: []
Storage Desc Params:
field.delim \t
line.delim \n
serialization.format \t
Time taken: 0.055 seconds, Fetched: 31 row(s)

注:desc为简写,可写全拼describe

  1. 删除表:hive> drop table testtable;
  1. 表加载数据
hive> load data local inpath '/data/apps/test/zhangwenchao/data/data.txt' into table studenttable;

结果:

Loading data to table zwctest.studenttable
Table zwctest.studenttable: [numFiles=1, totalSize=2117]
OK
Time taken: 0.659 seconds
  1. 查看数据:hive>select * from testtable;

hive分区查看新增及删除

查看表现有分区:

show partitions table_name;

获取最新分区(day):

select max(day) as latest_day from table

添加分区(分区字段包含:p_hour,p_city,p_loctype。):

alter table my_partition_test_table if not exists add partition (p_hour='2017113003', p_city='573', p_loctype='MHA');

删除库

drop database if exists db_name;

强制删除库

drop database if exists db_name cascade;

删除表

drop table if exists employee;

清空表

truncate table employee;

清空表,第二种方式

insert overwrite table employee select * from employee where 1=0;

删除分区

alter table employee_table drop partition (stat_year_month>='2018-01');

#如果分区存在,删除
ALTER TABLE db_name.table_name DROP IF EXISTS PARTITION(p_data_day='2021-05-29');"

按条件删除数据

insert overwrite table employee_table select * from employee_table where id>'180203a15f';

参考:https://blog.youkuaiyun.com/xiaolei565/article/details/107939678
https://blog.youkuaiyun.com/SeaSky_Steven/article/details/100925225

### 回答1: Apache Hive是一个开源的数据仓库基础设施,可以通过使用SQL来查询和分析大规模的数据集。apache-hive-2.1.1-bin.tar.gz是Hive的2.1.1版本的二进制安装包。这个安装包包含了Hive运行所需的所有文件。 在安装Hive之前,我们需要确保已经安装了Java Development Kit (JDK),因为Hive是在Java环境下运行的。然后,我们可以通过以下步骤来安装apache-hive-2.1.1-bin.tar.gz: 1. 首先,我们需要下载apache-hive-2.1.1-bin.tar.gz文件。我们可以从Apache Hive官方网站下载这个文件。 2. 下载完成后,我们需要将下载的文件解压缩。可以使用以下命令进行解压缩:tar -zxvf apache-hive-2.1.1-bin.tar.gz 3. 解压缩完成后,我们需要配置Hive的环境变量。我们可以打开.bashrc或.bash_profile文件,并添加以下配置行: export HIVE_HOME=/path/to/hive export PATH=$PATH:$HIVE_HOME/bin 请将上述配置行中的"/path/to/hive"替换为您解压缩Hive的路径。 4. 保存文件,然后加载这些配置。我们可以使用以下命令加载.bashrc文件:source ~/.bashrc 5. 现在,我们可以启动Hive了。使用以下命令启动:hive 这将启动Hive命令行界面,我们可以在其中执行Hive的SQL查询和操作。 这就是安装apache-hive-2.1.1-bin.tar.gz的基本步骤。安装完成后,您可以开始使用Hive来查询和分析大规模的数据集。希望这个回答能对您有帮助! ### 回答2: Apache Hive是一个基于Hadoop的数据仓库解决方案,它可以提供结构化查询语言(SQL),以便从大规模分布式数据集中检索和分析数据。hive-2.1.1-bin.tar.gz是Hive的一个版本,其中的bin表示该文件包含了Hive的可执行脚本和二进制文件。 在解压和安装这个tar.gz文件之后,我们可以通过运行Hive命令行界面来开始使用HiveHive提供了类似于SQL的查询语言,称为HiveQL,它允许用户使用SQL语句来查询和分析存储在Hadoop集群上的数据。 Hive可以处理各种类型的数据,包括结构化数据、半结构化数据和非结构化数据。它允许用户定义表结构,将数据导入表中,并执行类SQL查询来处理这些表。Hive使用Hadoop的MapReduce框架来执行查询,因此具有良好的可扩展性和容错性。 除了基本的查询功能外,Hive还支持用户自定义函数(UDFs),以便根据特定需求编写自定义的函数,并将其应用于查询中。此外,Hive还支持分区和分桶的概念,以改进查询性能。 通过使用Hive,用户可以利用Hadoop集群的强大计算能力和存储能力来处理大规模数据集。它提供了一种简化和抽象化的方式来处理和查询大数据,对于那些熟悉SQL语法的用户来说,学习和使用Hive相对容易。 总之,apache-hive-2.1.1-bin.tar.gz是Apache Hive的一个版本,它提供了一个基于Hadoop的数据仓库解决方案,可以通过HiveQL语言来查询和分析大规模分布式数据集。 ### 回答3: apache-hive-2.1.1-bin.tar.gz 是Apache Hive项目的二进制压缩文件。Apache Hive是一个基于Hadoop的数据仓库基础架构工具,用于提供数据的存储、查询和分析。通过Hive,用户可以使用类SQL语言在Hadoop集群中执行数据查询,并将查询结果转换为MapReduce任务进行处理。 Apache Hive提供了一个类似于关系型数据库的查询语言,称为HiveQL,它使用了SQL语法来查询和操作存储在Hadoop HDFS或Hive表中的数据。HiveHiveQL查询转换为MapReduce任务或Tez DAG(有向无环图)任务,让用户可以轻松地利用Hadoop集群的并行处理能力进行大规模数据处理。 通过Apache Hive,用户可以在不需要掌握复杂的MapReduce编程技术的情况下,利用简单的SQL语法进行数据分析和挖掘。用户可以创建Hive表,将数据加载到表中,并使用HiveQL进行查询和处理。此外,Hive还提供了用户定义函数(UDF)、用户定义聚合函数(UDAF)和用户定义转换函数(UDTF)的能力,让用户可以按照自己的需求扩展和定制Hive的功能。 apache-hive-2.1.1-bin.tar.gz是Hive 2.1.1版本的二进制分发文件。用户可以下载并解压此文件,即可在本地环境中部署和运行Apache HiveHive还有其他版本和分发文件可供选择,用户可以根据自己的需求选择适合的版本进行使用。对于想要在Hadoop集群中快速搭建和使用数据仓库工具的用户,Apache Hive提供了一个强大而灵活的解决方案。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

周小董

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值