hive常用指令,Hive常用命令
对于Hive常用命令以及hive常用指令相关的题,你们想知道那些呢?下面让小编带你们了解一下。
一、概念
1.结构化和非结构化数据
结构化数据唯一的键值对
非结构化数据没有固定的键值对,没有明确的映射关系。
所以你可以理解下面这句话hive是Facebook开源的一个用于解决大规模结构化日志的数据统计项目。
2.Hive是基于Hadoop文件系统的数据仓库架构,提供数据仓库管理的各种功能,包括数据ETL、数据存储管理、大数据集的查询分析功能。
关系型数据库管理系统
OLTP事务组并发运行,延迟低,主要是查询。
山
OLAP基于数据仓库、高延迟、分析驱动。
3、Hive定义了HiveQL这种类SQL语言,允许用户进行类似SQL的操作,将结构化数据文件映射到数据表并提供简单的SQL查询功能,同时允许开发者方便地使用操作,SQL语言可以翻译成执行MR操作。
2.网站
3.ETL
E提取数据提取
T数据变换变换
L加载加载数据
ETL是提取、清理和转换业务系统数据,然后将其加载到数据仓库的过程。目的是统一分散、杂乱、标准化不一致的数据。例子包括项目日志信息、数据爬虫信息等。这将为决策分析提供基础。
数据提取从各种数据源提取数据并将其存储在某个地方。
数据清理过滤掉不符合要求的数据或在提取数据之前对其进行修改。数据不完整信息缺失等。错误数据日期格式不正确。日期超出范围。字符串中出现空格。重复数据需要删除重复数据。
数据转换转换不一致的数据。例如,员工有员工号和员工号,学生有号和学号。
常见的ETL工具Oracle的OWB、SQLServer的DTS、SSIS服务、Informatic等。工具可以快速建立ETL项目,保护复杂的编码任务,提高速度,降低难度,但缺乏灵活性。
SQL方式的优点是高度灵活,提高ETL效率,但编码复杂,技术要求高。
Hive结合了前两者的优点。
4.Hive安装
可以参考之前的文章《Hive安装教程》。
您也可以去网站进行参考。
查找入门指南
选择正在运行的配置单元
5.常用命令
安装完成后,进入hive。
上有使用命令的文档。
文件内容
我们使用几个命令
查看数据库显示数据库;
创建数据库显示数据库库名
在HDFS中可见
使用数据库名称使用库名称
请检查网站为您的表创建数据类型。
所有数据类型都可以找到
创建表时,如果字段是关键字,则必须添加回溯符号。
什么是关键词?
例如
报告错误
FAILED:ParseException行2:0无法识别谓词39。规则39失败。它在热规格中。
所以我们将其更改为
但是,我们仍然不建议使用关键字。避免使用关键字。让我们编辑字段名称。
有两个小细节第一,CTRL+L清屏。其次,从记事本复制表语句时,不要留前导空格。否则会报错。显示y或n的所有528种可能性。
我们再看一下数据加载。
您可以使用“加载”来禁用“插入”、“更新”和“删除”,因此单击“加载”。
加载数据[本地]INPATH39;[覆盖]INTOTABLE表名[PARTITIONpartcol1=val1,partcol2=val2]
添加Local是指Linux本地数据文件。
如果不添加Local,则表示HDFS中的数据文件。
在Linux上准备数据文件。
我们先加载数据
将数据本地inpath39加载到表gjz_error中。
当我检查数据时,数据全部为NULL。因为Hive中默认的分隔符是^A,即001,而分隔符就是tab键。
将分隔符更改为^A。
然后我再次导入数据并验证数据已导入。
然后将数据文件上传到HDFS。
创建数据表
获取数据
此时我查看HDFS,发现原来的数据已经不存在了。
但是数据被加载到hive中。
此外,数据文件已位于新目录中。
所以不添加本地是一个剪切和移动的过程,添加本地是一个复制的过程。
上一个题如果我的数据不是默认分隔符(即不是^A)怎么办?
准备您的文件
准备数据并将数据分隔符更改为
我们先到看看这部分内容。
重建表并添加数据。
创建表hive_table_local_format
id整数,
名称字符串
以39结尾的行格式分隔符字段;
HDFS文件系统的Hive结构
在测试库下创建一个表。
获取数据
我们看
/用户/配置单元/仓库/testdb/hive_table_local_format
我们可以得到
元数据数据库以Derby开头,只能由一个客户端打开,当我再次打开会话时会抛出错误,因此我将元数据数据库更改为Mysql。选择选项有
我们创建一个数据库
创建数据库stu_test
使用数据库并创建表
准备您的数据文件
上传文件到HDFS
首先,我们创建两个目录。
我们上传数据
将数据加载到Hive中。
加载之前可以看到,可以看到stu_test没有数据。
加载数据。
让我们加载第二个数据。
注意您将看到名称自动更改。
我们查看表中的信息。
显示表创建
desc[扩展名][格式]表
元数据库
或者
或者
或者
我看到塔尔斯了。
编辑表名
网站
我们来修改一下表
将列添加到表中
更改表table_name添加列ageint;
也请将您的评论添加到此部分。
清除数据
截断表table_name
元数据不会被删除。
Hive日志文件配置文件
将目录更改为hivelogdir=/opt/bigdata/hive/logs。
您可以在hive-sitexmltemplate中找到以下两个属性,这两个属性可帮助您在日志中显示数据和列名称,并将这些属性添加到hive-sitexml中。
hivecliprintcurrentdb
说谎
是否在Hive提示中包含当前数据库
Hive夹板接头
说谎
是否在查询输出中打印列名
将其添加到您的配置中,您下次重新启动时将能够看到日志。
一些常用命令
位置
就可以看到命令了。
例如
退出退出客户端退出
设置临时设置属性可以参考MySQL的编码设置来理解。此外,set还允许用户查看参数的属性。
显示所有功能显示功能;
可以查询max等函数的使用情况。
描述特点最大;
Desc函数扩展示例;
Hive可以用Java编写为函数并使用addjar添加。
您还可以使用“添加文件”添加Python脚本。
您可以使用!感叹号在Linux中查看文件。
dfs模式允许您查看HDFS中的文件。
发表评论