Hive中主要抱哈四类数据模型:表(Table),外部表(External Table),分区(Partition)和桶(Bucket)
- 创建表的操作:
表创建和数据加载两个步骤(可在一个语句中完成),在数据加载过程中,实际数据会移动到数仓目录中,之后的数据访问将直接在数仓目录中完成,删除表时,表中的数据和元数据都会同时删除。
- 创建外部表的操作:
只有一个步骤,家在数据和创建表同时完成,数据实际存储在创建语句LOCATION指定的HDFS路径中,并不会移动到数据仓库中,如果删除一个外部表,仅删除元数据,表中的数据不会删除。
Hive元数据存储方式
- 单用户模式(Single User Mode),存储在本地内存数据库Derby中,一般用于单元测试
- 多用户模式(Multi User Mode),通过网络连接到一个数据库中,常用模式,不能支持多个Hive同时操作元数据
- 远程服务模式(Remote Server Mode),在服务端启动一个MetaStoreServer,在客户端利用Thrift协议通过MetaStoreServer访问元数据库