Hive Transactional Tables 事务表

文章目录

    • 1. 背景
    • 2. Hive事务的局限性

1. 背景

Hive设计之初不支持事务。因为Hive的核心目标时将已经存在的结构化数据文件映射成为表,然后提供基于表的SQL分析处理,是一款面向分析的工具,且映射的数据通常存储于HDFS上,而HDFS是不支持随机修改文件数据的。这个定位意味着早期的HiveSQL语法中没有update、delete操作的,只有select查询分析操作,所以没有支持事务的说法。

2. Hive事务的局限性

  1. 尚不支持begin,commit,和rollback,所有语言操作都是自动提交的。
  2. 仅支持ORC文件格式(stored as orc)
  3. 默认情况下事务配置为关闭,需要配置参数开启使用
  4. 表必须是分桶表才可以使用事务功能
  5. 表参数transactional必须为true
  6. 外部表不能称为ACID表,不允许从非ACID会话读取/写入ACID表。

你可能感兴趣的:(Hive,hive,大数据,hadoop)