海量数据挖掘--sql语句的执行机制

来源:互联网 发布:zph01单片机驱动程序 编辑:程序博客网 时间:2024/06/06 08:53

        这两天的值班,让我对自己的不足和学习方法有个感官的认识,也让我收益匪浅,本着服务大家的原则,在这里为大家分享我这近一个月的收获和感受!

        首先我们看一个现象:

这是第一场考试的截图:


这是第二场考试的截图:

               我们分析发现:cpu的使用率在逐步的提升,在最后一场,cpu的使用率达到80%以上,我们查了,数据库,只一个题型的存储量就达到了20多万条数据!

           这让我们很苦恼,为什么会这样,是sql的吞吐量出问题了吗,我们马上到网上去查,发现并不是,sql的吞吐量可以轻松处理百万级别的数据量,是我们的程序有问题吗?我想,应该是的,在我们查找了多方资料后,发现,大数据量的处理,涉及到sql的执行机制,我们在这里将网上的图拿过来,大家一起研究:

        服务器接收到SQL语句之后,要经过如下步骤完成操作:Parse(解析)—> Bind(绑定)—> Execute(执行)。

1.此为整体流程图:



 

 2.此为select语句流程图:




3.此为其他语句流程图:



        大家都可以看到,每个语句都有缓冲池和循环,这也题型我们,在处理大数据时,谨慎使用循环,如果不得不用,要考虑好解决循环时间过长,造成超时的情况(默认为30s),这里引入下一个要说的问题,就是多线程!敬请期待下一篇博客!

总结:

        工作和学习永远是相辅相成的,如果只把工作当成工作,最后是码农,或者其他,只有把工作当成自己的事,尽心尽力做好,才能相互促进,共同进步!