sequelize vs sql存储过程。在我的情况下我应该使用什么?

时间:2018-03-20 11:22:08

标签: node.js sequelize.js

我正在使用sequelize来计算我的仪表板数字。目前有超过5000个用户,这个数字有望增长。对于每个用户,我必须处理大量具有大量条件/规则和多个连接的数据。

对于大约250名测试用户,sequelize需要超过25秒才能返回结果。我应该切换到存储过程以提高性能还是有办法优化续集查询?

1 个答案:

答案 0 :(得分:1)

要回答这个问题,我们需要看一些你的模型及其关联。 但是,您必须首先尝试优化模型,因为sequelize不会创建索引,但您可以创建自己的“外键”,例如:

stored procdures

此外,sequelize在隔离操作或数字操作(如'AVG')中减慢速度,如果不将它们包含在最大的查询中,则更好的选择。

在我个人的情况下(可能不是更好的方法),对于大量记录,我更喜欢[2, [23]] 并生成我自己的索引来执行具有更好性能的最大查询。

另外,如您所知node.js是单线程,那么您必须优化服务器端的操作。

总之,如果您在查询中使用隔离操作或数学操作,我的推荐是“使用存储过程”。