【问题标题】:Hive describe partitions to show partition urlHive 描述分区以显示分区 url
【发布时间】:2014-02-27 00:13:13
【问题描述】:

我知道有

DESCRIBE FORMATTED table_name;

向您显示表格格式。 除了

之外,有没有办法获得有关分区的更多信息
SHOW PARTITIONS table_name;

我看到Hive语言手册有这个

DESCRIBE [EXTENDED|FORMATTED] [db_name.]table_name PARTITION partition_spec

我想查看所有分区以及存储数据的 hdfs 或 s3 中的 url。

【问题讨论】:

    标签: java sql hadoop hive


    【解决方案1】:

    显示分区:

    show partitions table_name

    显示分区的物理存储位置:

    describe formatted dbname.tablename partition (name=value)

    我不知道创建(分区、路径)输出的内置方法,但您可以使用这两个命令和一些 grep/awk 或其他方式来构建它。

    【讨论】:

      【解决方案2】:
      analyze table TABLENAME partition(the_partition) compute statistics nopass;
      

      上面的代码为您提供了有关分区的更多信息(文件数、行数、总大小),但没有给出确切的位置。

      如果您想要确切的位置,您可能需要创建一个外部表。

      【讨论】:

        【解决方案3】:

        有多个选项来描述分区并获取分区 URL

        1. 使用 DESCRIBE FORMATTED

          DESCRIBE FORMATTED zipcodes PARTITION(state='PR');

        2. 使用 SHOW TABLE EXTENDED

          SHOW TABLE EXTENDED LIKE zipcodes PARTITION(state='PR');

        3. 运行 HDFS 命令。如果您知道所有分区都存储在同一位置,请使用此选项。

          hdfs dfs -ls /

        4. 如果你只是想知道表上现有的分区

          显示分区

        你可以在Hive Show all Table Partitions找到更多输出细节

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2017-04-25
          • 2019-01-06
          • 1970-01-01
          • 1970-01-01
          • 2013-03-15
          • 1970-01-01
          相关资源
          最近更新 更多