--=========================================================
更新时的操作
1>更新时有两种方式,一种是在原来的位置更新,另外一种是移除删除再插入。
2>无论采用何种方式更新数据,在触发器中都能使用DELETED和INSERTED表来获取更新前和更新后数据。

--=========================================================
--8亿数据创建非聚集索引时间
数据表中数据:873476300
建立索引耗时:41分39秒
索引键:BIGINT+DATETIME+INT
服务器配置:8核32G内存 7块SAS硬盘做成的RAID5,内存资源不足

--=========================================================
堆表和聚簇表测试
INSERT: 当数据库文件单次增长较小时,聚簇表插入效率会相对高,但当当数据库文件单次增长较大时,数据文件不需要频繁增长,堆表的插入效率略高于聚簇表。
SELECT/UPDATE/DELETE:聚簇表性能高于堆表(聚簇索引被使用时)
表无须额外增加过多空间来存放聚簇索引,只需少量空间存放非叶子节点

--=========================================================
DML操作在聚簇索引和非聚簇索引上的顺序
测试结论:
1>在插入数据时,先插入聚簇索引,再插入非聚簇索引
2>在更新数据时,先更新聚簇索引,再更新非聚簇索引
3>在删除数据时,先将非聚簇索引上数据MARK AS GHOST,然后再将聚簇索引上数据MARK AS GHOST,再删除聚簇索引上数据,最后移除非聚簇索引上数据

--=========================================================
数据的物理顺序和聚簇索引的顺序完全一致吗?
结论:在同一数据页上,数据的顺序和Slot的顺序一致,但数据不一定依次存放在依次递增的数据页上(逻辑碎片)

最新文章

  1. HTML5新特性——HTML 5 Canvas vs. SVG
  2. 分析MariaDB初始化脚本mysql_install_db
  3. Android客户端消息推送原理简介
  4. 查看Mysql实时执行的Sql语句
  5. JSBinding / Memory Management (GC)
  6. jquery的ajax同步和异步
  7. 剑指offer--面试题20
  8. skip list
  9. C语言的32个关键字
  10. maven 如何解决因本地jar导致的编译错误
  11. Factory Method 工厂方法模式
  12. Delphi 2007体验!
  13. AfxOleInit()和::CoInitialize(NULL)区别
  14. Step by step guide to set up master and slave machines(转)
  15. junit 注意事项,切记
  16. iOS.Animations.by.Tutorials.v2.0汉化(三)
  17. 启动django时报错Watching for file changes with StatReloader(使用状态加载程序监视文件更改 )
  18. [开源] C# 封装 银海医保的接口
  19. 如何将文章列表用<li>分两列显示
  20. loaclStorage、sessionStorage

热门文章

  1. 推荐一篇mysql优化干货
  2. SpringMVC前后台数据传递中Json格式的相互转换(前台显示格式、Json-lib日期处理)及Spring中的WebDataBinder浅析
  3. <转>Linux环境进程间通信(五): 共享内存(上)
  4. ROS 禁止公网暴力破解SSH FTP
  5. 从零玩转JavaWeb系列7web服务器-----表单的提交
  6. MySQL数据库篇之多表查询
  7. easyui容易被忽略掉的部分
  8. 用java实现一个简易编译器2-语法解析
  9. 20. Valid Parentheses检验括号字符串的有效性
  10. 17. Merge Two Binary Trees 融合二叉树