【问题标题】:Cloudera Navigator API fail to fetch nested dataCloudera Navigator API 无法获取嵌套数据
【发布时间】:2016-06-23 05:47:08
【问题描述】:

我在 Cloudera Manager Navigator REST API 中工作,其中提取结果工作正常,但无法获取任何嵌套值。

提取的数据类型如下。

{
    "parentPath": "String",
    "customProperties": "Map[string,string]",
    "sourceType": "String",
    "entityType": "String"
}

数据应该是这样的

{
    "parentPath": "abcd",
    "customProperties": {
                            "nameservice" : "xyz"
                        },
    "sourceType": "rcs",
    "entityType": "ufo"
}

但我得到的键值结果如下。

parentPath :abcd
customProperties : null
sourceType : rcs
entityType : ufo

在上述响应数据中,“customProperties”带有一个空值,它应该返回一个包含["nameservice" : "xyz"] 的地图对象。这是下面代码sn-p的问题。

MetadataResultSet metadataResultSet = extractor.extractMetadata(null, null,"sourceType:HDFS", "identity:*");
Iterator<Map<String, Object>> entitiesIt = metadataResultSet.getEntities().iterator(); 
     while(entitiesIt.hasNext()){
        Map<String, Object> result = entitiesIt.next();
        for(String data : result.keySet()){
                        System.out.println(" key:"+data+" value:"+result.get(data));
                        }
        }

您能否建议我如何获取数据类型复杂的嵌套值。

【问题讨论】:

    标签: java bigdata cloudera-navigator


    【解决方案1】:

    您是否检查过数据在导航器 ui 上的外观?您可以先验证一次,然后在浏览器中尝试 cloudera /entities/entity-id rest API 来检查 json 响应是如何到来的

    【讨论】:

    • Navigator UI 不包含所有这些详细信息数据,并且“abcd:7777/api/v9/actions/running”正在返回 []。但是针对 (/entities/entity-id) 的 JSON 响应带有适当的数据。在提取简单数据期间,我的 java 代码也没有任何问题,只有复杂类型(如上所述的“customProperties”)返回空值。
    猜你喜欢
    • 1970-01-01
    • 2020-12-27
    • 1970-01-01
    • 2019-08-08
    • 2017-06-18
    • 2019-07-23
    • 1970-01-01
    • 1970-01-01
    • 2021-06-26
    相关资源
    最近更新 更多