Google app maker 性能服务器脚本

Google app maker 性能服务器脚本,google-app-maker,Google App Maker,我有多个customerKey值分配给一个数值的表;我编写了一个脚本,在该脚本中,我扫描每一行数据,找到分配给当前customerKey的所有值,并返回一个最高值 我有一个性能问题-脚本处理大约每秒10条记录-有什么想法如何改进这一点或可能提出一个替代解决方案吗 function getLastest() { var date = app.models.magicMain.newQuery(); var date_all = date.run(); date_all.f

我有多个customerKey值分配给一个数值的表;我编写了一个脚本,在该脚本中,我扫描每一行数据,找到分配给当前customerKey的所有值,并返回一个最高值

我有一个性能问题-脚本处理大约每秒10条记录-有什么想法如何改进这一点或可能提出一个替代解决方案吗

function getLastest() {
    var date = app.models.magicMain.newQuery();
    var date_all = date.run();

    date_all.forEach(function(e) { // for every row of date_all
        var temp = date_all.filter(function(x) {
            return x.SubscriberKey === e.SubscriberKey; // find matching records for the current x.SubscriberKey
        });
        var dates = [];
        temp.forEach(function(z) { // get all matching "dates"
            dates.push(z.Date);
        });
        var finalValue = dates.reduce(function(a, b) { // get highest dates value (integer)
            return Math.max(a, b);
        });

        var record = app.models.TempOperatoins.newRecord(); // save results to DB
        record.email = e.SubscriberKey.toString() + " " + finalValue.toString();
        app.saveRecords([record]);
    });
}

我唯一的建议是补充:

var recordstosave=[]

在你的功能的顶端。 然后用recordstosave.pushrecord替换app.saveRecords[record]

最后,在foreach函数之外执行app.saveRecordsrecordstosave

我看到主要的处理时间改进是这样做的,而不是将每条记录单独保存在一个循环中