用户名:
密 码: 记住
您当前的位置:首页 > 网络编程 > sqlserver教程

用SQL测试具有百万条记录的数据库

时间:2014-11-30  来源:互联网  作者:佚名

  如果没有现实的数据集的话,进行基准测试就完全是浪费时间。Arthur Fuller向你展示了你可以怎样设置你的测试,让它能顺利测试那些包含百万行以上数据的数据库(数据库培训 数据库认证 ),并且返回更准确的测试结果。

  

  TechRepublic免费发行了一种SQL(SQL Server培训 mySQL培训 )Server时事通讯,该刊每周二刊发,里面有hands on提示,它可以帮助你更熟练的使用这个强大的相关数据库管理系统。

  

  进行基准测试的时候,你很可能会采取下面的步骤:设计一个数据库,它的任何一个表格里面都是连一行数据都没有(因为所有的查询都是闪电式进行的),在该数据库里面填上几行测试数据,然后再测试该数据库。不过,如果你知道你要测试的数据库包含着上百万行的数据,其中的每个表格都被填得满满的,那么,你认为你得到的测试结果的准确率会如何呢?

  

  为了了解当测试的数据库包含上百万行的数据时会出现什么样的情况,你有必要在现有的表格的基础上将它的行数增加到大约一百万(这个表格原来有1,000行)。你还要给所有的行都设一个主键。这些工作的每一项你都是分开做的,就像下面的编码所显示的:

  

  USE northwind

  

  SELECT COUNT(*) FROM [Source Table]

  

  SELECT * INTO TempTable FROM [Source Table]

  

  SELECT COUNT(*) FROM [TempTable]

  

  GO

  

  DECLARE @i Integer

  

  SET @i = 1

  

  WHILE @i < 10 BEGIN INSERT INTO TempTableSELECT * FROM TempTable SET @i = @i + 1 END

  

  SELECT COUNT(*) FROM TempTable

  

  SELECT Identity( int, 1, 1 ) AS PK, * INTO BigTable FROM TempTable

  

  GO

  

  SELECT COUNT(*) FROM BigTable

  

  GO

  

  DROP TempTable

  

  CREATE CLUSTERED INDEX BigTable_Index

  

  ON BigTable (PK)

  

  这个编码产生了一万行数据,也就是说在原来的表格的基础上增加了九倍的行数;接下来它会用SELECT语句来给该表添加一个主键。

  

  现在你可以用一个现成的数据集来开始进行你的基准测试了。如果你的这个现成的数据集需要上千万的行的话,你只需要修改WHILE@I这一命令行,将上限设置成10,000,000就行了。

  

  注意:尽管写出一个产生数据的工具是可能的,这个提示里面却并没有讲这些。不过,它里面也有一些可以用来产生数据的工具。Sybase PowerDesigner就包含了一个很巧妙的工具,它可以让你把带有示例数据的文本文件倒入到相应的表中,并且能依照表之间的各种关联关系生成不同的关系树。

来顶一下
返回首页
返回首页
推荐资讯
从零开始学ASP.NET-基础篇第1/7页 从零开始学ASP.NET-基础篇第1/7页第一天 学习目的: 掌握最基本的Label、TextBox、Button控件
ASP.NET入门数据篇 ASP.NET入门数据篇对于网站编程的初学者来说,总是会上网找些源码来看,但久而
相关文章
栏目更新
栏目热门