我有一个流分析工作,它使用了许多javascript UDF和UDA。我希望能够使用Azure资源管理器模板部署它。
https://docs.microsoft.com/en-us/rest/api/streamanalytics/stream-analytics-function上的文档似乎已经过时,只描述了Scalar
个函数,我认为这些函数意味着UDF。
是否有任何文档或示例显示如何使用ARM模板创建UDA?
答案 0 :(得分:2)
如果您已经使用UDA创建了一个作业,请使用PowerShell命令Get-AzureRMStreamAnalyticsJob来检索作业定义,您将了解如何定义UDA。
答案 1 :(得分:1)
对于UDA,应在模板的“功能”部分中使用“ type”:“ Aggregate”。下面的例子。
{
"properties": {
"type": "Aggregate", //Aggregate type.
"properties": {
"inputs": [ // accumulate input parameter(s).
{
"dataType": "any", // Input data type
}
],
"output": { // Output
"dataType": "any" // Output data type
},
"binding": {
"type": "Microsoft.StreamAnalytics/JavascriptUdf",
"properties": { // Aggregate definition
"script": "function main() {
this.init = function () {
this.state = 0;
}
this.accumulate = function (value, timestamp) {
this.state += value;
}
this.computeResult = function () {
return this.state;
}
}"
}
}
}
}
}
Microsoft文档参考:https://docs.microsoft.com/en-us/rest/api/streamanalytics/stream-analytics-aggregate