德比中的hive Metastore与hive / warehouse中的hive Metastore有什么区别?

时间:2016-02-18 08:38:29

标签: hadoop hive bigdata

这可能是一个非常基本的问题所以请原谅无知。

据我所知,hive将在开箱即用(hive tar.bin extract)香草设置中使用两个亚组件。在我的情况下,我有蜂巢0.14。

derby数据库中有一个 - 在hdfs之外有一个名为## Define column names you want to modify cols <- c("balance", "employment") ## Assign `NA`s when satus == "R" x[status == "R", (cols) := NA] ## Carry the last observation forward and update by reference library(zoo) ## You could do this with base R too, just more writing x[, (cols) := lapply(.SD, na.locf), .SDcols = cols] 的默认文件夹名称。

在/ user / hive / warehouse中有另一个hdfs。

这两者之间有什么区别?

2 个答案:

答案 0 :(得分:3)

在Hive中,Metastore构成(1)元存储服务和(2)数据库。

Metastore DB - 是任何JDBC投诉RDBMS数据库,其中存储managed and external tables的架构和分区详细信息。其他应用程序(如Impala)可以使用它来从中获取表和模式详细信息。顾名思义,它只存储元数据。

Metastore服务 - Hive还运行一个名为Metastore服务的独立服务来管理Metastore数据,例如,在Metastore数据库中存储Hive表和分区的元数据,并为客户端(包括Hive)提供访问权限通过Metastore服务API获取此信息。

仓库 - Hive数据存储在HDFS中,通常位于/ user / hive / warehouse下(或您在hive-site.xml中指定为hive.metastore.warehouse.dir的任何路径)。

答案 1 :(得分:1)

Metastore是hive存储表的架构,以及更多数据如何在仓库中为架构表引用数据的目录。

仓库通常存储在HDFS,关系数据库中的Metastore,如Derby,MySQL或Postgre。

Metastore通常用于许多其他应用程序,例如impala,用于仓库中的发现表。