我在蜂巢中使用SQL创建了数据库。 我使用HDFS查找数据库。 但我无法在HDFS中找到数据库。
在配置单元中:
CREATE DATABASE practice
LOCATION '/user/hive/warehouse'/
检查:
hdfs dfs -ls /user/hive/warehouse
仓库什么都没有。
此外,我在蜂巢中的特定数据库中创建了一个表。 但是,使用Hue,我可以在默认位置看到该表。 我想将表插入特定的数据库位置。
CREATE TABLE prac (
id INT,
title STRING,
salary INT,
posted TIMESTAMP
)
ROW FORMAT DELIMITED
FIELDS TERMINATED BY ','
LOCATION '/user/hive/warehouse/practice.db/prac';
我在Hue和HDFS的数据库prac
中找不到表practice
。
如何查看HDFS中的数据库? 而且我也想知道如何在特定数据库位置查看该表。
答案 0 :(得分:0)
默认情况下,在创建配置单元表db name
时尝试指定 prac
。配置单元在default
数据库中创建表。
Example:
hive> CREATE DATABASE practice LOCATION '/user/hive/warehouse/practice.db';
hive> CREATE TABLE `practice.prac` ( id INT, title STRING, salary INT, posted TIMESTAMP ) ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' LOCATION '/user/hive/warehouse/practice.db/prac';
答案 1 :(得分:0)
尝试使用以下命令:
创建数据库实践 位置'/user/hive/warehouse/practice.db';
hive默认情况下使用“ / user / hive / warehouse /”目录在此位置下创建数据库。因此,在创建数据库时,如果不提供位置,它将选择数据库位置,例如“ /user/hive/warehouse/practice.db”。
您可以在hdfs上选择任何位置,直到获得对该位置的读写许可为止。