HCatalog 教程
什么是HCatalog?
HCatalog 是 Hadoop 的表存储管理工具。它将 Hive 元存储的表格数据公开给其他 Hadoop 应用程序。它使使用不同数据处理工具(Pig、MapReduce)的用户能够轻松地将数据写入网格。它确保用户不必担心他们的数据存储在何处或以何种格式存储。
HCatalog 就像 Hive 的一个关键组件一样工作,它使用户能够以任何格式和任何结构存储他们的数据。
为什么选择 HCatalog?
为正确的工作启用正确的工具
Hadoop 生态系统包含不同的数据处理工具,例如 Hive、Pig 和 MapReduce。尽管这些工具不需要元数据,但当元数据存在时,它们仍然可以从中受益。共享元数据存储还使用户可以跨工具更轻松地共享数据。使用 MapReduce 或 Pig 加载和规范化数据,然后通过 Hive 进行分析的工作流程非常常见。如果所有这些工具共享一个元存储,那么每个工具的用户都可以立即访问使用另一个工具创建的数据。无需加载或转移步骤。
捕获处理状态以启用共享
HCatalog 可以发布您的分析结果。因此,其他程序员可以通过"REST"访问您的分析平台。您发布的模式对其他数据科学家也很有用。其他数据科学家使用您的发现作为后续发现的输入。
将 Hadoop 与一切集成
Hadoop 作为一种处理和存储环境,为企业带来了很多机会;然而,为了推动采用,它必须与现有工具配合使用并增强现有工具。 Hadoop 应作为分析平台的输入或与您的运营数据存储和 Web 应用程序集成。组织应该享受 Hadoop 的价值,而不必学习全新的工具集。 REST 服务使用熟悉的 API 和类似 SQL 的语言向企业开放平台。企业数据管理系统使用 HCatalog 与 Hadoop 平台更深入地集成。
HCatalog 架构
下图展示了HCatalog的整体架构。
HCatalog 支持读取和写入可以写入
SerDe (serializer-deserializer) 的任何格式的文件。默认情况下,HCatalog 支持 RCFile、CSV、JSON、SequenceFile 和 ORC 文件格式。要使用自定义格式,您必须提供 InputFormat、OutputFormat 和 SerDe。
HCatalog 构建在 Hive Metastore 之上,并结合了 Hive 的 DDL。 HCatalog 为 Pig 和 MapReduce 提供读写接口,并使用 Hive 的命令行接口发出数据定义和元数据探索命令。