Hive的數據模型及各模塊的應用場景


Hive的數據模型

 
Hive數據模型.png

數據模型組成及應用場景

  • Hive的數據模型主要有:database、table、partition、bucket四部分;

數據模型之database

  • database:相當於關系型數據庫中的命名空間,作用是將數據庫應用隔離到不同的數據庫模式中,hive提供了create database dbname、use dbname 以及drop database dbname的語句;

數據模型之table

  • table:表是由存儲的數據以及描述表的一些元數據組成。數據存儲再分布式文件系統中,元數據存儲在關系型數據庫中;
  • hive表分四種:
    • MANGED_TABLE :內部表
    • EXTERNAL_TABLE:外部表
    • INDEX_TABLE:索引表
    • VIRTUAL_VIEW :視圖表
  • 查看表的具體信息使用:desc tablename或者 desc formatted tablename
    Hive內部表和外部表的區別

數據模型之partition

  • hive的分區是根據某列的值進行粗略的划分,每個分區對應HDFS上的一個目錄;

數據模型之bucket

  • 要使用hive的分桶功能,首先需要打開hive對痛的控制 set hive.enforce.bucketing=true;
  • bucket是按照指定值進行hash,每個桶就是表目錄里的一個文件


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM