一: 数据库的优化一直项目后期的重中之重,特别是当单表数据庞大到1000W时候。各种SQL语句执行效率都会慢很多。SQL 效率 与索引,行数据,列数据,以及Where 刷选字段类型 (效率 整数型大于字符串,时间等式)都很有关系。平时的优化 除了针对性增加非聚集索引,对字节较长的字符串 如:身份证号码进行整形处理存储。对大文本比如 信息正文进行单独表关联,对一些字段暂用的字节大小进行优化外。还可以对臃肿的表进行 水平切分以及垂直切分,或者对整库进行切分,主从读写分离等诸多手段。

二:以 SQL 2008 企业版为例。单表数据量为380W,进行水平切分,分区处理 。应该能稍微对比出两者间的效率。

三:如何建立分区表:参考大牛博客:ttp://blog.sina.com.cn/s/blog_614316190100egs2.html

ps:值得注意的建立 分区方案 分区函数的时候 文件。文件组最好多建立一个。楼主在建立一样的时候报错。多建立一个文件就通过了。如图:

分区函数和分区方案脚本:

USE [SMSRoute] GO

/****** Object:  PartitionFunction [partitionFunArea]    Script Date: 12/05/2013 22:27:09 ******/ CREATE PARTITION FUNCTION [partitionFunUserName](nvarchar(50)) AS RANGE LEFT FOR VALUES (N'ck_fengxiong_system', N'ck_hujiao_system', N'ck_jianfei_system', N'ck_yifubao_system', N'ck_zengzhi_system') GO

USE [SMSRoute] GO

/****** Object:  PartitionScheme [partitionSchemeUserName]    Script Date: 12/05/2013 22:27:45 ******/ CREATE PARTITION SCHEME [partitionSchemeUserName] AS PARTITION [partitionFunUserName] TO ([fengxiong], [hujiao], [zengzhi], [jianfei], [yifubao], [zengzhi]) GO

四:以经典ROW_NUMBER 分页函数为对比。

PS: 由于数据比较少。对比不是很明显。当数据超过1000W的时候差距才会逐渐明显。

个人浅见,欢迎指正。

以 280W 数据为依据。对比SQL2008 表分区前和分区后的 T_SQL 效率的更多相关文章

  1. sql2008 计划自动创建数据库分区【转】

    本文转自:http://jingyan.baidu.com/article/6b97984d9a26ec1ca3b0bf77.html sql2008 计划自动创建数据库分区 固定增量的数据,自动创建 ...

  2. mysql表分区、查看分区

    原文地址:http://blog.csdn.net/feihong247/article/details/7885199 一.       mysql分区简介 数据库分区 数据库分区是一种物理数据库设 ...

  3. ORACLE表、索引和分区详解

    ORACLE表.索引和分区 一.数据库表 每种类型的表都有不同的特性,分别应用与不同的领域 堆组织表 聚簇表(共三种) 索引组织表 嵌套表 临时表 外部表和对象表 1.行迁移 建表过程中可以指定以下两 ...

  4. MySQL表的四种分区类型

    MySQL表的四种分区类型 一.什么是表分区 通俗地讲表分区是将一大表,根据条件分割成若干个小表.mysql5.1开始支持数据表分区了. 如:某用户表的记录超过了600万条,那么就可以根据入库日期将表 ...

  5. mysql表分区(摘自 MySQL表的四种分区类型)

    一.什么是表分区通俗地讲表分区是将一大表,根据条件分割成若干个小表.mysql5.1开始支持数据表分区了. 如:某用户表的记录超过了600万条,那么就可以根据入库日期将表分区,也可以根据所在地将表分区 ...

  6. SQL Server 堆表与栈表的对比(大表)

    环境准备 使用1个表,生成1000万行来进行性能对比(勉强也算比较大了),对比性能差别. 为了简化过程,不提供生成随机数据的过程.该表初始为非聚集索引(堆表),测试过程中会改为聚集索引(栈表). CR ...

  7. Hive 7、Hive 的内表、外表、分区(22)

    Hive 7.Hive 的内表.外表.分区   1.Hive的内表 Hive 的内表,就是正常创建的表,在 http://www.cnblogs.com/raphael5200/p/5208437.h ...

  8. Hive 7、Hive 的内表、外表、分区

    1.Hive的内表 Hive 的内表,就是正常创建的表,在 http://www.cnblogs.com/raphael5200/p/5208437.html 中已经提到: 2.Hive的外表 创建H ...

  9. 通过读取excel数据和mysql数据库数据做对比(二)-代码编写测试

    通过上一步,环境已搭建好了. 下面开始实战, 首先,编写链接mysql的函数conn_sql.py import pymysql def sql_conn(u,pwd,h,db): conn=pymy ...

随机推荐

  1. 深度学习多机多卡解决方案-purine

    未经允许请不要转载,原作者:zhxfl,http://www.cnblogs.com/zhxfl/p/5287644.html 目录: 一.简介 二.环境配置 三.运行demo 四.硬件配置建议 五. ...

  2. dataStructure@ Check if a directed graph has cycles

    #include<iostream> #include<cstdio> #include<cstring> #include<limits> #incl ...

  3. POJ-2926 Requirements 最远曼哈顿距离

    题目链接:http://poj.org/problem?id=2926 题意:求5维空间的点集中的最远曼哈顿距离.. 降维处理,推荐2009武森<浅谈信息学竞赛中的“0”和“1”>以及&l ...

  4. [坑]c#中double转字符串精度丢失问题记录

    在项目遇到了一个比较大的double值,然后出现了一些意想不到的状况: double b=1141.161994934082; b.ToString();//'1141.16199493408' 然后 ...

  5. oracle 时间函数

    加法 select sysdate,add_months(sysdate,12) from dual; --加1年 select sysdate,add_months(sysdate,1) from ...

  6. nyoj 289 苹果

    苹果 时间限制:3000 ms  |  内存限制:65535 KB 难度:3   描述 ctest有n个苹果,要将它放入容量为v的背包.给出第i个苹果的大小和价钱,求出能放入背包的苹果的总价钱最大值. ...

  7. centos 火狐浏览器安装adobe flash player插件

    来个CentOS 6.3 为Firefox安装Flash插件教程 下载install_flash_player_11_linux.i386.tar.gz打包文件到本地   终端进入install_fl ...

  8. JAVA使用EPoll来进行NIO处理的方法(转)

    JDK 6.0 以及JDK 5.0 update 9 的 nio支持epoll (仅限 Linux 系统 ),对并发idle connection会有大幅度的性能提升,这就是很多网络服务器应用程序需要 ...

  9. Spring Quartz结合Spring mail定期发送邮件

    文件配置例如以下: <?xml version="1.0" encoding="UTF-8"?> <beans xmlns="htt ...

  10. Codeforces Round #324 (Div. 2) B. Kolya and Tanya 快速幂

    B. Kolya and Tanya Time Limit: 1 Sec Memory Limit: 256 MB 题目连接 http://codeforces.com/contest/584/pro ...