搜索配置单元中所有数据库中的表

v83*_*hul 7 hadoop hive hdfs hiveql

在Hive中,我们如何在所有数据库中按名称搜索表?

我是Teradata用户.是否存在系统表的对应物(存在于Teradata中),如dbc.tables,dbc.columns,它们存在于HIVE中?

Man*_*ngh 6

您可以使用SQL来搜索表.示例:我想搜索名称从"Benchmark"开始的表我不知道其余部分.

输入HIVE CLI:

show tables like 'ben*'
Run Code Online (Sandbox Code Playgroud)

输出:

+-----------------------+--+
|       tab_name        |
+-----------------------+--+
| benchmark_core_month  |
| benchmark_core_qtr    |
| benchmark_core_year   |
+-----------------------+--+
3 rows selected (0.224 seconds)
Run Code Online (Sandbox Code Playgroud)

或者,如果您使用直线,则可以尝试以下命令

!tables
Run Code Online (Sandbox Code Playgroud)

注意:它仅适用于Beeline(基于JDBC客户端)

更多关于直线的信息:http://blog.cloudera.com/blog/2014/02/migrating-from-hive-cli-to-beeline-a-primer/

  • 不幸的是,此查询仅在默认数据库或使用“use”选择的数据库中搜索。 (2认同)

HIS*_*ISI 5

您还可以使用 hdfs 在所有数据库中查找表:

hive数据库的路径是:

/apps/hive/warehouse/
Run Code Online (Sandbox Code Playgroud)

所以,通过使用 hdfs :

hdfs dfs -find /apps/hive/warehouse/ -name t*
Run Code Online (Sandbox Code Playgroud)


Dav*_*itz 3

您应该查询元存储。

您可以在其中找到连接属性hive-site.xml

巴什

<$HIVE_HOME/conf/hive-site.xml grep -A1 jdo
Run Code Online (Sandbox Code Playgroud)
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://127.0.0.1/metastore?createDatabaseIfNotExist=true</value>
--
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.jdbc.Driver</value>
--
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>hive</value>
--
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>cloudera</value>
Run Code Online (Sandbox Code Playgroud)

在元存储中,您可以使用类似于以下内容的查询

mysql

select          *

from                            metastore.DBS             as d

                join            metastore.TBLS            as t 

                on              t.DB_ID =
                                d.DB_ID  

where           t.TBL_NAME  like '% ... put somthing here ... %'

order by       d.NAME 
              ,t.TBL_NAME                                          
;
Run Code Online (Sandbox Code Playgroud)