0

在创建 hive 表时,我可以将“位置”指向 hdfs 中存在数据的位置吗?我还需要加载数据还是直接在 hive 上提供数据?

4

1 回答 1

2

您可以在创建表时指定任何位置,并且可以访问数据。如果表已分区,则使用ALTER TABLE ADD PARTITIONorMSCK REPAIR TABLE table_name或 Amazon version ALTER TABLE table_name RECOVER PARTITIONS,这会将 HDFS 上存在但不在 Metastore 中的任何分区添加到 Metastore。请参阅此处的文档:https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DDL#LanguageManualDDL-RecoverPartitions(MSCKREPAIRTABLE)

如果表未分区,您可以在创建表时简单地使用数据指定位置或使用 更改表位置ALTER TABLE SET LOCATION

于 2017-12-08T19:20:12.890 回答