Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从配置单元SQL表描述生成json对象?_Json_Hive_Hiveql_Hiveddl - Fatal编程技术网

如何从配置单元SQL表描述生成json对象?

如何从配置单元SQL表描述生成json对象?,json,hive,hiveql,hiveddl,Json,Hive,Hiveql,Hiveddl,我使用descripe formatted table\u name获取表的描述。我得到以下结果。我想以某种方式将其转换为json。有什么好办法吗?换句话说,我希望以json的形式获取我的sql表描述。不是像下面输出中所示的表那样的表 我想要得到的输出应该如下所示: { "columns" : { "id" : "int", "name": "string"

我使用
descripe formatted table\u name
获取表的描述。我得到以下结果。我想以某种方式将其转换为json。有什么好办法吗?换句话说,我希望以json的形式获取我的sql表描述。不是像下面输出中所示的表那样的表

我想要得到的输出应该如下所示:

{
    "columns" : {
        "id" : "int",
        "name": "string"
    },


    "partition_information": {
        "columns" : {
            "dt_temp" : "string"
        }
    },

    "Detailed table information" : {
        "Database" : "d1",
        "owner" : "root",
        .
        .
        .
        .
        .
        
    }
}

是否有任何函数或库可以为我这样做?现在,我正在使用python脚本手动执行此操作,但这非常困难和混乱。我不期望得到与我提到的完全相同的输出,我正在寻找一种方法,从一些python脚本中轻松而有意义地解析它。有什么建议吗?

描述扩展可以生成JSON(选中它在Hive 2.1.1上运行良好):

它产生如下输出:

{"columns":[{"name":"id","type":"bigint","comment":"from deserializer"}, 
            {"name":"col1","type":"string","comment":"from deserializer"},
            ...

感谢这个解决方案,但它并没有给我完整的json对象。我只获取列名及其类型,其余信息在json对象中丢失。json对象中未接收到包括分区列、输入格式在内的信息。@RuchitVithani在我的配置单元2.1.1中返回了“PartitionKey迭代器”数组、“inputFormat”、“outputFormat”@RuchitVithani DESC FORMATTED不返回PartitionKey迭代器和inputFormat,但DESC EXTENDED works,请检查您是否使用了DESC EXTENDEDYep,这起作用了。感谢您提供的解决方案:)可以从这样的json对象点击CreateTable查询吗?
{"columns":[{"name":"id","type":"bigint","comment":"from deserializer"}, 
            {"name":"col1","type":"string","comment":"from deserializer"},
            ...