【发布时间】:2016-10-07 00:25:03
【问题描述】:
我们运行一个 SAAS 产品。我们的一位客户是企业客户,而其他客户为 6 个月的账单报告生成 8-10,000 行数据。它们生成大约 300,000 行数据。每行有 30 列。因此,当他们尝试转到我们的报告模块并导出他们的 6 个月报告时,我们的服务器会因为 CPU 跃升至 80% 而无响应,并且整个过程都失败了。连接等后从 SQL 数据库中获取 300K 需要 30 分钟,然后需要 3 小时在 excel 中写入 30 列的 300K 行。我担心只有 1 个客户会导致整个网站瘫痪,因为我们有 40 份报告,如果他们开始返回 6 个月并导出数据,其他用户的体验将会很糟糕。
在 SAAS 产品中处理如此大量数据导出的最佳方法是什么?
发送
【问题讨论】:
-
您使用的是 Azure SQL DB 吗?如果有,那是几层?如果您使用的是高级数据库,您是否尝试过使用列存储、内存中 oltp 来提高性能?您是否有适当的索引 - azure sql 数据库中有索引顾问可以推荐丢失的索引。
标签: excel azure-sql-database high-volume