Lea*_*ore 5 mysql sql stored-procedures
我有一个应用程序,每小时大约20000个数据操作数据操作有30个参数(对于所有10个查询).有些是文本,有些是数字.一些文本参数长达10000个字符.
每个数据操作都遵循以下内容:
现在执行此数据操作,
我个人认为,如果我从10个以上的查询中创建一个存储过程,那将是更好的选择.
在SP的情况下,DATA-OPERATION将具有:
我建议这样,但我被告知
我仍然认为SP是更好的选择.请让我知道您的意见.
基准测试是一种选择.将不得不搜索任何有助于此的工具.任何人都可以建议已经有这种问题的基准.
任何建议部分取决于执行查询的脚本所在的位置。如果执行查询的脚本与 MySQL 实例位于同一台服务器上,那么您不会看到太大的差异,但与 1 个存储过程相比,执行 200k 查询仍然会产生很小的开销。
无论哪种方式,我的建议都是将其作为存储过程。您可能需要几个程序。
CURSOR以输入过程 1 的过程你的流程是
这将产生性能优势,因为不需要连接到 MySQL 服务器 20000*10 次。虽然每个请求的开销可能很小,但毫秒数加起来。即使每个请求节省了 0.1 毫秒,仍然节省了 20 秒。
另一种选择可能是通过调整 10 个查询以从上述数据库表中提取数据来修改您的请求,以一次执行所有 20k 数据操作(如果可行)。所有这一切的关键是在单个批量插入中加载参数,然后在过程中使用 MySQL 服务器上的语句来处理它们,而无需进一步往返。
| 归档时间: |
|
| 查看次数: |
2348 次 |
| 最近记录: |