`
samuschen
  • 浏览: 407684 次
  • 性别: Icon_minigender_2
  • 来自: 北京
社区版块
存档分类
最新评论

hive数据模型

    博客分类:
  • hive
XML 
阅读更多

 

Hive 中所有的数据都存储在 HDFS 中, Hive 中包含以下数据模型: Table External Table Partition Bucket

  1. Hive 中的 Table 和数据库中的 Table 在概念上是类似的,每一个 Table Hive 中都有一个相应的目录存储数据。例如,一个表 pvs ,它在 HDFS 中的路径为: /wh/pvs ,其中, wh 是在 hive-site.xml 中由 ${hive.metastore.warehouse.dir} 指定的数据仓库的目录,所有的 Table 数据(不包括 External Table )都保存在这个目录中。
  2. Partition 对应于数据库中的 Partition 列的密集索引,但是 Hive Partition 的组织方式和数据库中的很不相同。在 Hive 中,表中的一个 Partition 对应于表下的一个目录,所有的 Partition 的数据都存储在对应的目录中。例如: pvs 表中包含 ds city 两个 Partition ,则对应于 ds = 20090801, ctry = US HDFS 子目录为: /wh/pvs/ds=20090801/ctry=US ;对应于 ds = 20090801, ctry = CA HDFS 子目录为; /wh/pvs/ds=20090801/ctry=CA
  3. Buckets 对指定列计算 hash ,根据 hash 值切分数据,目的是为了并行,每一个 Bucket 对应一个文件。将 user 列分散至 32 bucket ,首先对 user 列的值计算 hash ,对应 hash 值为 0 HDFS 目录为: /wh/pvs/ds=20090801/ctry=US/part-00000 hash 值为 20 HDFS 目录为: /wh/pvs/ds=20090801/ctry=US/part-00020
  4. External Table 指向已经在 HDFS 中存在的数据,可以创建 Partition 。它和 Table 在元数据的组织上是相同的,而实际数据的存储则有较大的差异。
  • Table 的创建过程和数据加载过程(这两个过程可以在同一个语句中完成),在加载数据的过程中,实际数据会被移动到数据仓库目录中;之后对数据对访问将会直接在数 据仓库目录中完成。删除表时,表中的数据和元数据将会被同时删除。
  • External Table 只有一个过程,加载数据和创建表同时完成( CREATE EXTERNAL TABLE ……LOCATION ),实际数据是存储在 LOCATION 后面指定的 HDFS 路径中,并不会移动到数据仓库目录中。当删除一个 External Table 时,仅删除 元信息。
分享到:
评论

相关推荐

    Hive数据模型操作-教案.pdf

    本篇内容主要围绕《Hive数据模型操作》这一主题展开,旨在教授学生如何在Hive数据仓库中执行各种数据模型操作。Hive是一个基于Hadoop的数据仓库工具,可将结构化的数据文件映射为一张数据库表,并提供SQL查询功能,...

    hive数据模型操作.pdf

    【Hive 数据模型操作】 Hive 是一个基于 Hadoop 的数据仓库工具,它允许通过 SQL-like 语言(HQL)对大数据集进行分析和处理。本篇内容主要讲解了 Hive 数据模型的操作,包括数据库和内部表的相关操作。 一、Hive ...

    Hive大数据仓库-笔记整理 (一)2020年最新版.pdf

    2. **Hive数据模型**:Hive支持两种基本的数据模型——表和分区。表是数据的基本单位,可以有多个字段(columns),每个字段都有特定的数据类型。分区则是为了优化查询性能,将大表按特定字段(如日期或地区)划分为...

    Hive数据仓库工具----220222.rar

    三、Hive数据模型 Hive的数据模型包括表、分区和桶。表是基本的数据结构,可以被划分为多个分区,每个分区代表一个子集。桶是可选的,用于实现数据的并行处理和优化查询。 四、HQL语言 HQL提供了丰富的SQL操作,...

    Hive案例数据集.rar

    三、Hive数据模型 Hive的数据模型基于传统的关系型数据库模型,包括数据库(Database)、表(Table)、分区(Partition)和桶(Bucket)。数据库是逻辑上的组织单元,表是数据的容器,分区是按照特定字段划分数据的...

    第四十九章:Hive数据仓库工具1

    Hive 数据模型包括内部表(Internal Table)、外部表(External Table)、分区(Partition)和桶(Bucket)。内部表的数据由 Hive 管理,当删除表时,数据也会被删除。外部表仅管理表的元数据,数据的生命周期独立于...

    大数据hive实现原理.zip_hive中怎么更新数据

    因此,在设计Hive数据模型时,应尽可能减少UPDATE和DELETE操作,优先考虑INSERT和REPLACE INTO等方法来维护数据。 在实际应用中,Hive更新数据通常涉及以下步骤: 1. **创建一个临时表**:用于存放更新后的数据。 2...

    Hive编程1

    Hive数据模型是指Hive中的数据组织方式。Hive数据模型包括表、分区和桶等概念。表是Hive中的基本数据组织单元。分区是表的一种逻辑划分方式,可以根据不同的维度对表进行划分。桶是Hive中的物理存储单元,可以将表中...

    大数据hive笔记.zip

    三、Hive数据模型 Hive的数据模型基于关系型数据库,包括数据库、表、分区和桶。其中,表可以被划分为多个分区,以提高查询效率;桶则用于实现数据的排序和并行处理。 四、Hive操作 1. 创建表:用户可以使用CREATE ...

    Hive用户指南(Hive_user_guide)_中文版pdf

    4. **Hive数据模型**:Hive的数据模型包括数据库、表、分区和桶。数据库是逻辑上的组织单位,表是数据的存储容器,分区是表的逻辑划分,用于优化查询,桶则是为了实现数据的分布和并行化。 5. **HQL(Hive Query ...

    hive大数据书籍

    3. **Hive数据模型**:理解Hive的数据模型,包括表、分区、桶等概念,以及如何创建和管理这些数据结构。 4. **HQL语言**:详尽解析HQL(Hive Query Language),包括DML(数据操作语言)、DDL(数据定义语言)和DCL...

    大数据 hive 实战数据

    本实战数据集主要涉及两个核心部分:`video`数据和`user`数据,这些都是构建大数据分析模型的基础元素。让我们深入探讨一下这两个部分以及与Hive、大数据、Hadoop和数据仓库相关的知识点。 首先,`video`数据可能...

    hive官方文档整理

    4. **Hive数据模型**:Hive支持两种表类型——Managed Table和External Table。Managed Table由Hive管理,包括生命周期和位置;External Table仅管理元数据,实际数据的删除不受Hive控制。 5. **分区和桶**:分区是...

    Apache-Hive-Cookbook

    综上所述,《Apache-Hive-Cookbook》这本书涵盖了从部署配置 Hive 到使用其客户端和服务的各个方面,同时还深入介绍了如何理解和利用 Hive 的数据模型。对于希望深入了解和高效使用 Hive 的开发者来说,这些知识点...

    一张图看懂Hive

    ### Hive数据模型 Hive的数据模型包括数据库、文件、表和视图等组成部分。其中: - **数据库**: 用于组织和管理多个表的集合。 - **文件**: 数据的具体存储形式,Hive本身并不规定特定的文件格式,常见的有Text...

    设计开发 Hive 编程指南 完整版

    3. **Hive 数据模型**:Hive 支持两种基本的数据模型:表和分区。表是数据的基本组织单元,可以包含多个字段。分区是一种逻辑上的划分,用于将大数据集划分为更小、更易管理的部分。 4. **HiveQL (Hive Query ...

    Hive编程指南-2013.12.pdf

    四、Hive数据模型 Hive中的数据模型由表、分区和桶组成。表是数据的基本单位,可以按照特定列(如日期)进行分区,以提高查询效率。桶是基于哈希函数对数据进行分组,有助于优化某些类型的连接操作。 五、Hive表和...

    hive基础知识复习笔记.zip

    Hive数据模型基于关系型数据库,但不支持事务。表可以是Managed或External,Managed表由Hive管理生命周期,External表只管理元数据,数据删除需手动。 5. **Hive的存储格式**: Hive支持多种存储格式,如TextFile...

    海量数据处理-hive数据仓库

    海量数据处理-hive数据仓库 很好的讲解的大数据海量数据处理的数据仓库模型建设

Global site tag (gtag.js) - Google Analytics