易截截图软件、单文件、免安装、纯绿色、仅160KB

MS Sql Server 2005 分区表有点麻烦


ALTER DATABASE AdventureWorks ADD FILEGROUP [2003Q3]

创建文件组后,使用 ALTER DATABASE 将文件添加到该文件组中。
ALTER DATABASE AdventureWorks
ADD FILE
(NAME = N'2003Q3',
FILENAME = N'C:\AdventureWorks\2003Q3.ndf',
SIZE = 5MB,
MAXSIZE = 100MB,
FILEGROWTH = 5MB)
TO FILEGROUP [2003Q3]
 
确定是否应使用多个文件组
  为了有助于优化性能和维护,应使用文件组分离数据。文件组的数目一定程度上由硬件资源决定:一般情况下,文件组数最好与分区数相同,并且这些文件组通常位于不同的磁盘上。但是,这主要适用于打算对整个数据集进行分析的系统。如果您有多个 CPU,SQL Server 则可以并行处理多个分区,从而大大缩短处理大量复杂报表和分析的总体时间。这种情况下,可以获得并行处理以及在分区表中移入和移出分区的好处。
 
 
边上的同事说文件组包含多个文件可以增加并行度,也就是多个CPU可以一起读?
他的意思难道是说操作系统对程序访问单个文件有限制,多了话会阻塞?
如果是的话 Windows 2003 64位 企业版  文件有大小限制 有并行访问的限制不?
他还说可以把它们分配到不同磁盘上。不过如今都用Raid 10了 不需要人为的分成多个文件,反而增加维护复杂度。
他接着说 文件小而多比大而少 容易备份!
他说的是真的吗?

因此本人还是采用一个文件组和一个文件.其实就是用原来的数据文件的.
建立分区函数
CREATE PARTITION FUNCTION FuPart_szumevent(datetime)AS RANGE RIGHT FOR VALUES ('20070801','20070901','20071001','20071101','20071201','20080101','20080201','20080301','20080401','20080501','20080601','20080701','20080801','20080901','20081001','20081101','20081201')
 这里采用的是范围分区。 这里有个Right 和Left 。Right比较容易理解 它是小于时间点的是另外个分区数据,大于和等于它的是所在的分区。
A<Time1<=B<Time2<=C  而Left是反过来 A>=Time1>B>=Time2>C
Left 有个麻烦点是 >=Time1 => 2008-01-01 23:59:59.997
 
建立分区架构:
CREATE PARTITION SCHEME FNw_szumevent AS PARTITION FuPart_szumevent ALL TO ([PRIMARY])
其实就是关联东东,或许Ms认为以后DBA会对分区表进行改用分区函数

建立分区表:
CREATE TABLE [dbo].[Part_


相关文档:

java与SQL数据库桥接方式易错问题与设计核心

 文章原创,转载请与Blog主人联系,robin9257@hotmail.com
JAVA与SQL桥接的优缺点:
1、优点:不用下载驱动程序,允许用相同代码访问不同DBMS。
2、缺点:效率低。
经常出现的报错点:
1、java.sql.SQLException: [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序
  
&nbs ......

SQL语句

1. 说明:复制表(只复制结构,源表名:a,新表名:b)
SQL: select * into b from a where 1<>1;
        2. 说明:拷贝表(拷贝数据,源表名:a,目标表名:b)
SQL: insert into b(a, b, c) select d, e, f from b;
        3. 说明: ......

ORACLE SQL执行步骤

 ORACLE sql 的处理过程大致如下:
 1.运用HASH算法,得到一个HASH值,这个值可以通过V$SQLAREA.HASH_VALUE 查看
 2.到shared pool 中的 library cache 中查找是否有相同的HASH值,如果存在,则无需硬解析,进行软解析
 3.如果shared pool不存在此HASH值,则进行语法检查,查看是否有语法错误
&nbs ......

用索引提高SQL Server性能

 在微软的SQL Server系统中通过有效的使用索引可以提高数据库的查询性能,但是性能的提高取决于数据库的实现。在本文中将会告诉你如何实现索引并有效的提高数据库的性能。 
  
  在关系型数据库中使用索引能够提高数据库性能,这一点是非常明显的。用的索引越多,从数据库系统中得到数据的速度就越快。然而,需 ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号