我是hadoop/hive新手。我想在hadoop数据库中找到一个特定的列。我是从另一个邮局得到这个问题的。但它看起来更像unix命令,我不知道应该在哪里执行它。
hive -S -e 'show databases'|
while read database
do
eval "hive -S -e 'show tables in $database'"|
while read line
do
if eval "hive -S -e 'describe $database.$line'"| grep -q "<column_name"; then
output="Required table name: $database.$line"'\n';
else
output=""'\n';
fi
echo -e "$output"
done
done
1条答案
按热度按时间06odsfpq1#
这只是一个bash脚本。
在机器上运行
hive
命令可用但是不要在互联网上运行任何你不知道它是做什么的代码(提示:它读取的不仅仅是一列)。
如果您真的想找到所有数据库表的特定列,那么查询您的配置单元元存储会快得多(假设它在mysql、postgres、sqlserver等中)