关闭
当前搜索:

临时表、表变量、CTE的比较

之前在上家公司开发报表时,大量使用了CTE,一个CTE中包含了10到20个的语句,最后关联出结果集。也就是对每个小语句,根据引用语句中相关表的统计信息,估计产生多少行结果,然后再估计这些小语句产生的多个结果集,当再次进行关联时,估计会有多少行结果集,也就是对估计的结果,再次进行估计。 这样偏差就会越来越大,最终往往会导致产生的执行计划不够准确,这样往往会有性能问题。 其实,本质问题就是,一个语句几千行,语句太复杂了,SQL Server很难做出最优化的执行计划,这确实难为SQL Server了,所...
阅读(3225) 评论(10)

SQL与NoSQL

关系型数据库的核心就是SQL,也就是关系,有很严谨的数学基础-关系代数,能很好的呈现现实世界的复杂联系。 另一个重要的特性就是对事务的支持,也就是ACID,这是由Jim Gray提出的,他因此荣获1998年度的图灵奖。 这种数据库,比较适合传统的企业,以及电商公司,也就是交易型。 NoSQL,存储的是key-value对,存储模型相对简单,容易扩展,比较适合简单的业务。 把任务分解...
阅读(935) 评论(0)

超大数据库的备份和恢复问题:分区表、文件组备份、部分还原

use master go alter database wc set single_user with rollback immediate drop database wc go --1.创建数据库 create database wc on primary ( name = wc_data, filename = 'D:\wc_data.mdf'...
阅读(2572) 评论(2)

【SQL Server性能优化】运用SQL Server的全文检索来提高模糊匹配的效率

今天去面试,这个公司的业务需要模糊查询数据,之前他们通过mongodb来存储数据,但他们说会有丢数据的问题,我从业务上了解到,显然对他们公司而言,丢数是绝对不能允许的。   另外,他们说之前也用过SQL Server的全文检索,但速度不够快,不如用mongodb快,当然我不太清楚他们所谓快的具体定义,比如查询只需要1秒,还是1分钟。他们的系统现在采用的是SQL Server,通过复制来实现高可...
阅读(6291) 评论(0)

【SQL Server备份恢复】维护计划实现备份:每周数据库完整备份、每天差异备份、每小时日志备份

在数据库管理中,数据库备份是非常重要的。 通过维护计划向导,可以很方便的完成数据库备份。 下面的例子说明了如何实现数据库的备份,具体的备份策略是:每周日一次完整备份、每天差异备份(除周日外)、每小时日志备份。 此外,还可以指定删除过期备份策略,比如,把10天前的备份删除,因为硬盘空间是有限的。   1、     2、   3、   4、这里你可以自定义名称,这里用...
阅读(13572) 评论(9)

通过SQL Server的扩展事件来跟踪SQL语句在运行时,时间都消耗到哪儿了?

从网上找的链接: http://blogs.msdn.com/b/sqlsakthi/archive/2011/02/20/sql-query-slowness-troubleshooting-using-extended-events-wait-info-event.aspx 网友的帖子:http://bbs.csdn.net/topics/390577449?page=1#post-3954...
阅读(1905) 评论(0)
    个人资料
    • 访问:526304次
    • 积分:9035
    • 等级:
    • 排名:第2474名
    • 原创:362篇
    • 转载:14篇
    • 译文:1篇
    • 评论:137条
    博客专栏
    最新评论