hive外部表详解以及案例演示

Hive外部表详解以及案例演示

Hive是一个基于Hadoop的数据仓库工具,它提供了类似于SQL的查询语言HiveQL,可以将结化数据映射到Hadoop的分布式文件系统HDFS上。Hive支持部表和外部表,本攻略将详细介绍H外部表的概念、用法和案例演示。

1. 外部表的概念

外部表是指在Hive中定义的表,它的数据存储在HDFS上,但是表的元数据存储在Hive的元数据仓库中。与内部表不同,外部表的数据可以被其他程序或工具访问和修改,而不会影响到Hive中的元数据。外部表的定义语法与内部表相同,只需要在创建表时添加“EXTERNAL”关键字即可。

2. 外部表的用法

外部表的用法与内部表类似,可以使用HiveQL语言来查询和操作外部表。但是,需要注意以下几点:

  • 删除外部表时,只会删除表的元数据,而不会删除HDFS上的数据。
  • 在加载数据时,需要使用“LOAD DATA INPATH”命令来指定数据的路径,而不是使用“INSERT INTO”命令。
  • 在查询数据时需要使用“SELECT * FROM”命令来查询数据,而不是使用“SELECT INTO”命令。

3. 外部表的案例演示

以下是两个使用外部表的案例演示:

案例1:创建外部表并加载数据

假设一个包含学生信息文本文件,文件名为“students.txt”,包含以下内容:

1,John,18
2,Mary,19
3om,20
4,Lucy,18

现在需要将这个文件加载到Hive中,并创建一个外部表来查询和操作这些数据。可以按照以下步骤进行:

  1. 将文件上传到HDFS上
hdfs dfs -put students.txt /user/h/students.txt

在上面的命令中,使用“hdfs dfs -put”命令将文件上传到HDFS上。

  1. 创建外部表
CREATE EXTERNAL TABLE students (
    id INT,
    name STRING,
    age INT
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
LOCATION '/user/hive/students.txt';

在上面的命令中,使用“CREATE EXTERNAL TABLE”命令来创建外部表,“ROW FORMAT DELIMITED”选项来指定行格式,“FIELDS TERMINATED BY”选项来指定字段分隔符,“LINES TERMINATED BY”选项来指定行分隔符,“LOCATION”选项来指定数据的路径。

  1. 查询
SELECT * FROM students;

在上面的命令中,使用“SELECT * FROM”命令来查询数据。

案例2:使用外部表进行数据分析

假设有一个包含销售数据的文本文件,文件名为“sales.txt”,包含以下内容:

2019--01,100
2019-01-02,200
2019-01-03,300
201901-04,400
2019-01-05,500

现在需要使用Hive来分析这些销售数据,并计算出每天的销售总额和平均销售额。可以按照以下步进行:

  1. 将文件上传到HDFS上
hdfs dfs -put sales.txt /user/hive/sales.txt

在上面的命令中,使用“hdfs dfs -put”命令将文件上传到HDFS上。

  1. 创建外部表
CREATE EXTERNAL TABLE sales (
    date STRING,
    amount INT
)
ROW DELIMITED
FIELDS TERMINATED BY ','
LINES TERMINATED BY '\n'
LOCATION '/user/hive/sales.txt';

在上面的命令中,使用“CREATE EXTERNAL TABLE”命令来创建外部表,“ROW FORMAT DELIMITED”选项来指定行格式,“FIELDS TERMINATED BY”选项来指定字段分隔符,“LINES TERMINATED BY”选项来指定行分隔符,“LOCATION”选项来指定数据的路径。

  1. 计算销售总额和平均销售额
SELECT date, SUM(amount) AS total_sales, AVG(amount) AS avg_sales
FROM sales
GROUP BY date;

在上面的命令中,使用“SELECT”命令来查询数据,并使用“SUM”函数和“AVG”函数来计算销售总额和平均销售额。

总的来说,外部表是Hive中非常重要的一个概念,它可以将Hive与其他程序或工具进行无缝集成,实现更加灵活和效的数据处理和分析。在使用外部表时,需要注意一些细节问题,例如删除表时只删除元数据、加载数据时使用“LOAD DATA INPATH”令等。同时,外部表也可以用于各种数据分析场景,例如计算销售总额和平均销售额等。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:hive外部表详解以及案例演示 - Python技术站

(0)
上一篇 2023年5月8日
下一篇 2023年5月8日

相关文章

  • 刺客信条枭雄acs.exe已停止工作问题的解决方法

    针对“刺客信条枭雄acs.exe已停止工作问题的解决方法”,以下是解决步骤的完整攻略: 问题描述 在玩刺客信条枭雄游戏时,可能会出现ACS.EXE已停止工作的问题,导致游戏无法正常进行。 解决步骤 步骤1:更新显卡驱动 首先,需要检查系统的显卡驱动是否是最新版本,如果不是最新的,就需要更新。因为旧版显卡驱动可能会与新版游戏程序不兼容,从而导致游戏崩溃。 示例…

    other 2023年6月27日
    00
  • Java Web学习之Cookie和Session的深入理解

    Java Web学习之Cookie和Session的深入理解 概述 在Java Web中,Cookie和Session是常用的两种机制,用于在不同的请求之间保留状态信息。Cookie是在客户端保存状态信息的方式,而Session是在服务器端保存状态信息的方式。本文将对这两种机制进行深入理解,包括它们的含义、用法和注意事项。 Cookie Cookie是一种在…

    other 2023年6月27日
    00
  • echarts重新初始化

    以下是“echarts重新初始化”的完整攻略: echarts重新初始化 ECharts是一款基于JavaScript的开源可视化库,用于创建交互式的图表和地图。在使用ECharts时,有时需要重新初始化图表,以便在不刷新页面的情况下更新数据或更改配置。以下是使用ECharts重新初始化的步骤: 获取ECharts实例 在重新初始化ECharts之前,您需要…

    other 2023年5月7日
    00
  • Windows11记事本打不开怎么办?Win11记事本提示无法启动此应用程序的解决方法

    Windows11记事本打不开怎么办? 在Windows 11系统中,记事本是一个非常常用的系统工具,但有时会出现无法启动的情况,这时候可能会提示“无法启动此应用程序”,该如何解决呢? 解决方法 方法1:使用命令提示符修复记事本 使用管理员权限打开命令提示符。在开始菜单中搜索“命令提示符”,然后右键点击,选择“以管理员身份运行”。 执行如下命令: Get-A…

    other 2023年6月25日
    00
  • SQl 语句(常见)

    SQL(Structured Query Language)是一种用于管理关系型数据库的语言。它是一种标准化的语言,基本规则适用于大多数数据库管理系统(DBMS)。在本篇文章中,我们将详细讲解常见的SQL语句,以及它们的作用和用法。 数据库的常见 SQL 语句 CREATE CREATE语句用于在数据库中创建新的表格、视图或者存储过程。 示例1 CREATE…

    other 2023年6月25日
    00
  • 关于组装:x86-64中movq和movabsq之间的区别

    在x86-64汇编语言中,movq和movabsq都是用于将数据从一个位置移动到另一个位置的指令,但它们之间有一些区别。以下是关于movq和movabsq的详细攻略: movq movq指令用于将数据从一个位置移动到一个位置,其中源和目标操作数都是64位的。movq指令可以用于寄存器之间的数据传输,也可以用于存器和内存之间的数据传输。movq指令的操作数必须…

    other 2023年5月8日
    00
  • C++链表节点的添加和删除介绍

    下面是详细的「C++链表节点的添加和删除介绍」攻略。 添加节点 首先需要创建链表的结构体,来存储节点的信息,比如节点值和指向下一个节点的指针。下面是一个基本的链表结构体模板: struct ListNode { int val; ListNode *next; ListNode(int x) : val(x), next(NULL) {} }; 接下来就可以…

    other 2023年6月27日
    00
  • xml文件怎么打开

    XML是一种标准的数据交换格式,可以用于表示各种类型的数据。本文将详细讲解如何打开XML文件,包括在Windows、Mac和Linux操作系统中使用的方法。 在Windows中打开XML文件 在Windows中打开XML文件,你可以使用以下两种方法: 方法1:使用文本编辑器 右键单击XML文件并选择“编辑”或“打开方式”选项; 选择“记事本”、“Notepa…

    其他 2023年4月16日
    00
合作推广
合作推广
分享本页
返回顶部