我们使用Google表格存储和操作来自我们网络应用程序用户的基于事件的数据。最近,我一直在使用Google Apps脚本来自动化这个数据处理过程,现在我正在寻找一些建议。
我的脚本运行良好一段时间,然后在上周末,我开始收到错误,'超过最长执行时间'。我在前两天工作正常的两个脚本上收到此错误,两者之间没有任何编辑。我正在处理大量数据,甚至在我的电子表格上多次达到2,000,000个单元格限制。
我的目标是能够将我的七个脚本排在一起,以便我可以使用一个触发器将它们全部触发。如何在不达到最大执行时间错误的情况下执行此操作?有时,当我尝试删除其中的一个工作表时,我的电子表格会崩溃。电子表格的大小是否会导致脚本失败?
我已尽力遵循Google文档中列出的最佳做法,但有人可以推荐电子表格和脚本组织的最佳做法吗?
答案 0 :(得分:4)
您可能对Bruce Mcpherson在Google Apps脚本中进行大规模并行处理所编写的工具感兴趣。
http://ramblings.mcpher.com/Home/excelquirks/htmlservice/parallel
http://ramblings.mcpher.com/Home/excelquirks/htmlservice/parallel/implement
答案 1 :(得分:1)
Here您可以在应用程序脚本中找到与配额相关的文档,因为您可以看到脚本运行时间为6分钟后,服务器将停止脚本并抛出异常,就像您遇到的那样。
如果您已经在应用Google的最佳做法,请尝试查找瓶颈的位置。 - 您需要阅读完整的数据范围或只是其中的一部分吗? - 您可以存储任何信息(例如在缓存或属性中),这样您就不必再计算或阅读了吗? - 您是否跟踪每个脚本的时间? - 你在阅读每个脚本的全部数据吗?或者只读一遍并将其作为参数传递给其他脚本?
希望这会有所帮助。