我有地图功能
export BASE_DIR="/local/file/path/where/jar/is/available"
spark-submit \
--class ${class} \
--deploy-mode cluster \
--master yarn \
...
...
...
--name ${APPLICATION_NAME} \
${BASE_DIR}/*.jar
以上返回以下内容:
function (doc) {
for(var n =0; n<doc.Observations.length; n++){
emit(doc.Scenario, doc.Observations[n].Label);
}
}
我正在设计一个reduce函数,该函数将返回上述值的计数,类似于:
{"key":"Splunk","value":"Organized Alerts"},
{"key":"Splunk","value":"Organized Alerts"},
{"key":"Splunk","value":"Organized Alerts"},
{"key":"Splunk","value":"Generate Incident Report"},
{"key":"Splunk","value":"Ingest Data"}
我的地图函数必须在“场景”字段中进行过滤,因此为什么我将其作为地图函数中的发射键。
我曾尝试使用许多内置的reduce函数,但最终却得到了行数,或者由于可用的函数不适用而一无所获。
我只需要访问显示在值字段中的每个元素的计数。同样,这里显示的值具有代表性,在值字段中可以找到数百种不同类型的值,以说明其价值。
我非常感谢您的帮助!
以下是示例输入:
Organized Alerts: 3
Generate Incident Report: 1
Ingest Data: 1
答案 0 :(得分:1)
您可以通过“值”作为键设置映射,并将增量与该键关联以确保计数保持不变。然后,您可以打印地图,该地图应该看起来像您的要求。