Hive表DDL操作(二) 第2关:Create/Drop/ALTER 索引

这篇具有很好参考价值的文章主要介绍了Hive表DDL操作(二) 第2关:Create/Drop/ALTER 索引。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

相关知识

为了完成本关任务,你需要掌握:1. 如何导入本地数据到hive的表中,2. 如何创建索引,3. 如何删除索引。

导入本地数据到 hive 表中

  • /home/shoppings.txt目录下数据格式如下:

hive表ddl操作(二),大数据,hive,Educoder,hive,hadoop,大数据

  • 在数据库shopping中根据数据分隔方式创建表items_info

     
      
    1. CREATE TABLE IF NOT EXISTS shopping.items_info(
    2. id INT COMMENT 'item id',
    3. name STRING COMMENT 'item name',
    4. price FLOAT COMMENT 'item price',
    5. category STRING COMMENT 'item category',
    6. brand STRING COMMENT 'item brand',
    7. stock INT COMMENT 'item stock',
    8. address STRUCT<city:STRING, country:STRING, zip:INT> COMMENT 'item sales address')
    9. COMMENT 'goods information table'
    10. row format delimited fields terminated by ',' //字段以‘,’分隔
    11. collection items terminated by '-' //集合以‘-’分隔
    12. TBLPROPERTIES ('creator'='Xiaoming','date'='2019-01-01');
  • 进入到数据库shopping中: use shopping;

  • 导入数据到表items_info中:

     
      
    1. load data local inpath '/home/shoppings.txt'
    2. overwrite into table items_info;

hive表ddl操作(二),大数据,hive,Educoder,hive,hadoop,大数据

  • 查看导入的数据: select * from items_info;

hive表ddl操作(二),大数据,hive,Educoder,hive,hadoop,大数据

Create 创建索引

创建索引的语法为:

 
  1. CREATE INDEX index_name ON TABLE base_table_name (col_name,…)
  2. AS index_type
  3. [With DEFERRED REBUILD]
  4. [INDXPROPERTIES (property_name=property_value,…)]
  5. [IN TABLE index_table_name]
  6. [[ROW FORMAT …] STORED AS … | STORED BY]
  7. [LOCATION hdfs_path] [TBLPROPERTIES (…)] [COMMENT "index comment"];

属性参数说明:

  • With DEFERRED REBUILD:用于构建一个空索引。

例子:

  • 创建索引items_index
 
  1. create index items_index on table items_info(id)
  2. as 'org.apache.hadoop.hive.ql.index.compact.CompactIndexHandler'
  3. with deferred rebuild
  4. IN TABLE items_index_table;

hive表ddl操作(二),大数据,hive,Educoder,hive,hadoop,大数据

Alter 修改索引

修改索引的语法为:

 
  1. ALTER INDEX index_name ON table_name [PARTITION partition_spec] REBUILD;

ALTER INDEX REBUILD用于重建之前创建索引时使用关键字 WITH DEFERREDREBUILD建立的所有或之前建立的索引,若指定关键字PARTITION,则只针对相应分区建立索引。

DROP 删除索引

删除索引的语法为:

 
  1. DROP INDEX [IF EXISTS] index_name ON table_name;
  • 删除索引items_index
 
  1. drop index if exists items_index on items_info;

hive表ddl操作(二),大数据,hive,Educoder,hive,hadoop,大数据

编程要求

student.txt中的数据格式如下:

hive表ddl操作(二),大数据,hive,Educoder,hive,hadoop,大数据

  • 创建test2数据库;

  • 根据以上数据创建student表;

  • /home/student.txt中的数据导入到表student中;

  • 根据学号Sno创建索引student_index

  • 删除索引student_index文章来源地址https://www.toymoban.com/news/detail-758523.html

#********* Begin *********#
echo "
create database if not exists test2
LOCATION '/hive/test2'
WITH DBPROPERTIES('creator'='Floret','date'='2020-11-16');
CREATE TABLE IF NOT EXISTS test2.student(
Sno INT COMMENT 'student sno',
name STRING COMMENT 'student name',
age INT COMMENT 'student age',
sex STRING COMMENT 'student sex',
score STRUCT<Chinese:FLOAT,Math:FLOAT,English:FLOAT> COMMENT 'student score')
COMMENT 'students information table'
row format delimited fields terminated by ',' 
collection items terminated by '-'
TBLPROPERTIES ('creator'='Floret','date'='2020-11-16');

load data local inpath '/home/student.txt'
overwrite into table student;

create index student_index on table student(Sno)
as 'org.apache.hadoop.hive.ql.index.compact.CompactIndexHandler'
with deferred rebuild
IN TABLE student_index_table;
drop index if exists student_index on student;



"
#********* End *********#

到了这里,关于Hive表DDL操作(二) 第2关:Create/Drop/ALTER 索引的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • Hive(14):Database|schema(数据库) DDL操作

    1 Create database Hive中DATABASE的概念和RDBMS中类似,我们称之为数据库。在Hive中, DATABASE和SCHEMA是可互换的,使用DATABASE或SCHEMA都可以。 COMMENT:数据库的注释说明语句 LOCATION:指定数据库在HDFS存储位置,默认/user/hive/warehouse WITH DBPROPERTIES:用于指定一些数据库的属性配置。 下面

    2024年02月11日
    浏览(29)
  • 大数据开发之Hive(基本概念、安装、数据类型、DDL数据定义、DML数据操作)

    大数据开发之Hive(基本概念、安装、数据类型、DDL数据定义、DML数据操作)

    1.1.1 Hive产生背景 HDFS来存储海量的数据、MapReduce来对海量数据进行分布式并行计算、Yarn来实现资源管理和作业调度。但是面对海量的数据和负责的业务逻辑,开发人员要编写MR对数据进行统计分析难度极大,所以就产生了Hive这个数仓工具。Hive可以帮助开发人员将SQL语句转化

    2024年01月17日
    浏览(52)
  • Hive常用DDL操作

    Hive常用DDL操作

    本专栏案例数据集链接:   https://download.csdn.net/download/shangjg03/88478038 语法: 示例: 语法: 示例: 语法: 默认行为是 RESTRICT,如果数据库中存在表则删除失败。要想删除库及其中的表,可以使用 CASCADE 级联删除。 示例: 使用 `desc format  emp_external` 命令可以查看表的详

    2024年02月08日
    浏览(22)
  • Hive的基本SQL操作(DDL篇)

    Hive的基本SQL操作(DDL篇)

    目录 ​编辑 一、数据库的基本操作 1.1 展示所有数据库 1.2 切换数据库 1.3 创建数据库 1.4 删除数据库 1.5 显示数据库信息 1.5.1 显示数据库信息 1.5.2 显示数据库详情 二、数据库表的基本操作 2.1 创建表的操作 2.1.1 创建普通hive表(不包含行定义格式) 2.1.2 创建自定义行

    2024年02月07日
    浏览(12)
  • 4、hive的使用示例详解-事务表、视图、物化视图、DDL(数据库、表以及分区)管理详细操作

    4、hive的使用示例详解-事务表、视图、物化视图、DDL(数据库、表以及分区)管理详细操作

    1、apache-hive-3.1.2简介及部署(三种部署方式-内嵌模式、本地模式和远程模式)及验证详解 2、hive相关概念详解–架构、读写文件机制、数据存储 3、hive的使用示例详解-建表、数据类型详解、内部外部表、分区表、分桶表 4、hive的使用示例详解-事务表、视图、物化视图、DDL

    2024年02月09日
    浏览(12)
  • 3.Hive SQL数据定义语言(DDL)

    3.Hive SQL数据定义语言(DDL)

    1.1 常见的开发方式 (1) Hive CLI、Beeline CLI Hive自带的命令行客户端 优点:不需要额外安装 缺点:编写SQL环境恶劣,无有效提示,无语法高亮,误操作率高 (2) 文本编辑器 Sublime、Emacs、EditPlus等 有些不支持作为客户端连接Hive服务,但支持SQL语法环境,那就在编辑器中开发

    2024年02月12日
    浏览(12)
  • 【大数据之Hive】九、Hive之DDL(Data Definition Language)数据定义语言

    【大数据之Hive】九、Hive之DDL(Data Definition Language)数据定义语言

    [ ] 里的都是可选的操作。 语法: 如: 如果不指定路径则默认路径为:${hive.metastore.warehouse.dir}/database_name.db (1)查看数据库 语法: 模糊匹配:like通配表达式说明:*表示任意个任意字符,|表示或的关系。 如: (2)查看数据库信息 语法: [extended]:是否要展示更详细信息

    2024年02月12日
    浏览(10)
  • Hive——DDL(Data Definition Language)数据定义语句用法详解

    Hive——DDL(Data Definition Language)数据定义语句用法详解

    IF NOT EXISTS :可选参数, 表示如果数据库已经存在,则不会创建,避免出现重复创建的情况。 COMMENT :可选参数, 用于添加数据库的注释 。 LOCATION :可选参数, 指定数据库的存储路径 WITH DBPROPERTIES :可选参数, 用于设置数据库的额外属性 。 示例: 创建一个名为\\\"mydataba

    2024年04月27日
    浏览(13)
  • Hive之DDL

    Hive之DDL

      目录 对数据库操作: 创建数据库: 查看数据库信息: 1.查看基本信息: 2.查看详尽信息: 删除数据库: 1.简单语法: 2.复杂语法: 对表操作: 创建表: 1.普通建表: 完整语法:  解释: (3)数据类型: 2.Create Table As Select(CTAS)建表: 3.Create Table Like语法

    2024年02月03日
    浏览(9)
  • Hive DDL和DML

    Hive DDL和DML

    目录 一 DDL 1.1 数据库 1.1.1 创建数据库 1.1.2 查询数据库 1.1.3 修改数据库 1.1.4 删除数据库 1.1.5 切换当前数据库 1.2 表 1.2.1 创建表 1.2.2 查看表 1.2.3 修改表 3.2.4 删除表 3.2.5 清空表 二 DML 2.1 Load 2.2 Insert 2.2.1  将查询结果插入表中 2.2.2 将给定Values插入表中 2.2.3 将查询结果写入目标

    2023年04月16日
    浏览(11)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包