什么是 Apache HCatalog?

一则或许对你有用的小广告

欢迎加入小哈的星球 ,你将获得:专属的项目实战 / Java 学习路线 / 一对一提问 / 学习打卡/ 赠书活动

目前,正在 星球 内带小伙伴们做第一个项目:全栈前后端分离博客项目,采用技术栈 Spring Boot + Mybatis Plus + Vue 3.x + Vite 4手把手,前端 + 后端全栈开发,从 0 到 1 讲解每个功能点开发步骤,1v1 答疑,陪伴式直到项目上线,目前已更新了 204 小节,累计 32w+ 字,讲解图:1416 张,还在持续爆肝中,后续还会上新更多项目,目标是将 Java 领域典型的项目都整上,如秒杀系统、在线商城、IM 即时通讯、权限管理等等,已有 870+ 小伙伴加入,欢迎点击围观

什么是 HCatalog?

Apache HCatalog 是 Hadoop 的存储管理层,可帮助 Hadoop 生态系统中不同数据处理工具(如 Hive、Pig 和 MapReduce)的用户轻松地从集群读取和写入数据。 HCatalog 支持存储在 HDFS 上的 RCFile 格式、Parquet、ORC 文件或序列文件中数据的关系视图。它还向外部系统公开 REST API 以访问元数据。

HCatalog 函数

Apache HCatalog 提供以下好处:

  • 使用户不必知道数据存储在哪里(使用表抽象)
  • 启用数据可用性通知
  • 为数据清理和归档工具提供可见性

怎么运行的?

HCatalog 支持读取和写入任何格式的文件,可以为其编写 Hive SerDe(序列化器-解串器)。默认情况下,HCatalog 支持 RCFile、Parquet、ORCFile CSV、JSON 和 SequenceFile 格式。要使用自定义格式,您必须提供 InputFormat、OutputFormat 和 SerDe。

HCatalog 构建在 Hive 元存储之上,并包含来自 Hive DDL 的组件。 HCatalog 为 Pig 和 MapReduce 提供读写接口,并使用 Hive 的命令行接口来发布数据定义和元数据探索命令。它还提供了一个 REST 接口,允许外部工具访问 Hive DDL(数据定义语言)操作,例如“创建表”和“描述表”。

HCatalog 提供数据的关系视图。数据存储在表中,这些表可以放入数据库中。表也​​可以根据一个或多个键进行分区。对于一个键(或一组键)的给定值,将有一个分区包含具有该值(或一组值)的所有行。

要查看 HCatalog 如何与 Pig 一起使用,请访问 此处。