Hadoop Hcatalog 在哪里存储数据库和表?

Where does Hadoop Hcatalog store databases and tables?

我是 Hadoop 新手。我一直在基于 Linux 上预构建的 Hadoop 虚拟机 运行 进行以下教程。

hadoop tutorial

我确实在基于文件的默认数据库上创建了一个 Hcatalog table。我想知道这些数据库和 table 是否可以在 Hadoop 文件系统上看到,或者它们是否在某种特殊存储中。

HCatalog 在存储在 HDFS 集群上的数据上创建了一个 table 抽象层。此 table 抽象层以熟悉的关系格式呈现数据,并使使用熟悉的查询语言概念读取和写入数据变得更加容易。

HCatalog 数据结构是使用 Hive 的数据定义语言 (DDL) 定义的,Hive 元存储存储 HCatalog 数据结构。使用命令行界面 (CLI),用户可以创建、更改和删除 tables。如果为 table 定义了 none,Table 将组织到数据库中或放置在默认数据库中。创建 table 后,您可以使用 Show Table 和 Describe Table 等命令探索 table 的元数据。 HCatalog 命令与 Hive 的 DDL 命令相同。

请参阅 When to use Hcatalog and what are its benefits 以获得更多说明。

请参阅 Microsoft Big Data Solution 了解更多关于 HCatalog 的信息。

HCatalog 建立在 Hive Metastore 之上,因此它存储元数据的位置将取决于您如何设置 Hive。如果您为元存储使用外部数据库,如果您使用默认配置,它就会存在,它存储在本地 derby 数据库中。您将无法在 hadoop 文件系统上看到 "databases and tables"。 Hive 提供了一种机制,可以将结构投影到此数据(在 hdfs 上)并使用称为 HiveQL 的 SQL 类语言查询数据。

https://cwiki.apache.org/confluence/display/Hive/HCatalog+UsingHCat