Advertisement

Hive存储引擎系统

阅读量:

目录

  • Hive存储引擎
  • ORC文件存储格式

Hive存储引擎

为何Hive会提供多种存储格式?由于Hive设计为处理大量文本数据,在导入阶段就存在挑战。具体来说,在实际应用中支持的数据存储格式种类繁多。例如二进制文件作为输入源时可直接读取;而普通文本文件则需要进行解析处理以提取有用信息。值得注意的是,在这种复杂的环境下,HIVE展现出其独特的优势,即无需对输入数据进行预先转换即可直接利用现有的I/O接口进行操作。同样地,当输出结果时,通过OutputFormat API接口,则可以根据需要将处理后的结果以不同的编码方式输出到磁盘或网络上。因此,对于不同来源的数据或者希望以不同编码形式保存的结果,都需要相应的InputFormat和Outputformat类来实现相应的功能支持

复制代码
     实际上hive使用一个TextInputFormat对象将输入流分割成记录,
     然后使用一个HiveIgnoreKeyTextOutputFormat对象来将记录格式化为输出流(比如查询的结果),
     再使用Serde在读数据时将记录解析成列。在写数据时将列编码成记录。
     所以stored as ''只是决定了行级别(记录级别 )的存储格式,
     而实际将记录解析成列依靠的则是Serde对象,比如hive默认的
     R

全部评论 (0)

还没有任何评论哟~