hive疑云

1.hive.cli.print.header,  hive.cli.print.row.to.vertical,  hive.cli.print.row.to.vertical.num 这三个参数没有其作用

原因:hive-site文件没有被hive程序找到。


2.hive所创建的表的数据存放在哪里了,hadoop上的hdfs吗?是通过什么参数控制的?但为什么在hadoop环境下用 hadoop fs -lsr 看不到表的数据文件呢?

是;

hive.metastore.warehouse.dir;

因为hadoop dfs -lsr 默认显示的是用户(hadoop的用户,不是计算的用户)主目录下的内容,相当于hadoop dfs -lsr . 须通过名令 hadoop dfs -lsr [hive.metastore.warehouse.dir] 查看 .通过hadoop dfs -lsr /可查看整个hadoop 的文件系统。


3.hive的元数据(表头)存放在哪里? 通过什么参数控制?

放在mysql数据库里, 由javax.jdo.option.ConnectionURL和javax.jdo.option.ConnectionDriverName决定


4.如何把hive的元数据存放在关系数据库中去?怎么配置?

把hive下的一个表(头)会映射成mysql下的多个表。因为如果仅仅存下表头信息显然无法在hadoop上找到相应的表的内容。


5.conf/hive-site.xml似乎没有其作用啊?

原因:hive-site文件没有被hive程序找到。


6.hive是否一定需要hadoop的支持? 怎么设置?

需要。hive-site.xml与环境变量综合


7.如何使hive找到hive-site.xml配置文件呢?

其中一种办法是把hive-site.xml添加到JAR包hive-commom-0.9.0(跟具体的版本有关)里面去。应该还有更加灵活的方法吧。


8.hive链接已经存在的数据库总是失败,必须先把数据库删除之后重建才能成功!这是什么原因呢?

这是使用嵌入式数据库(derby)是出现的。原因搞不懂。


你可能感兴趣的:(hive疑云)