微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

iis – 比内存更快地从内存运行SQL?

最近我们一直遇到问题,我们的oracle数据库锁定了迄今为止我们所知道的1个查询.

我会对发生的事情进行细分,但是我的问题并没有太多关系,但我愿意接受建议.

间歇性地不知道它什么时候会发生,过去一个月发生了4次,一个用户,会点击应用程序中的某些内容.用户点击的内容仍然未知.当点击它时,它将在数据库上运行查询,该查询生成大约700k行.

我检查了表运行查询并且索引看起来很好.

数据库为60GB,服务器上有32GB.

数据库服务器上的日志中我看到高I / O但cpu和RAM保持不变.

一个应用服务器,cpu上升到大约75%.我可以找到工作进程,找到PID,但是当我杀死与工作进程关联的PID时,cpu会短暂停机然后再向上运行.

同时回收应用程序池,并重新启动IIS也会做同样的事情,cpu会短暂停机,然后再向右移动.

使服务器恢复正常的唯一办法就是重启.

所以我的建议如果这个查询是导致锁定的原因可以在框上增加内存以允许数据库被缓存并耗尽内存.我听过一次,但我不确定它是否属实.

存储是HP PAR 3,有3层,数据库几乎存在于SSD层.

哪个是更快的SSD或内存

解决方法

Which is faster SSD or Memory

DRAM比NAND闪存更快. RAM访问大约为100 ns,而SSD随机读取大约16,000 ns. Latency Numbers Every Programmer Should Know

您需要对正在发生的事情和原因进行系统分析.不要仅仅因为你听到另一个关于另一个系统的事情而改变事物.找出这个系统的问题.

幸运的是,DBMS系统往往具有性能工具. Oracle和其他RDBMS具有EXPLAIN PLAN以显示完整扫描和其他低效率.即使使用索引,查询也可以执行得非常糟糕.还有像Oracle AWR这样的系统性能报告可以找到瓶颈.如果您想进一步询问数据库性能,您也可以询问我们的姐妹网站https://dba.stackexchange.com/

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐