<output id="qn6qe"></output>

    1. <output id="qn6qe"><tt id="qn6qe"></tt></output>
    2. <strike id="qn6qe"></strike>

      亚洲 日本 欧洲 欧美 视频,日韩中文字幕有码av,一本一道av中文字幕无码,国产线播放免费人成视频播放,人妻少妇偷人无码视频,日夜啪啪一区二区三区,国产尤物精品自在拍视频首页,久热这里只有精品12

      XuGang

      記錄一個程序員的成長

       

      SQL Server 2005 創建分區表

       

      背景:隨著公司的業務迅猛發展,導致部分數據表的數據量劇增(T_ZK_C0075ALog、T_ZK_C007ALog),無法滿足用戶對查詢效率、性能的要求。

      意義:在于將大數據從物理上切割為幾個相互獨立的小部分,從而在查詢時只取出其中一個或幾個分區,減少影響的數據;另外,對置于不同文件組的分區,并行查詢的性能也要高于對整個表的查詢性能。

      事實上,在SQL Server 2005 中就已經包含了分區功能,甚至在2005之前,還存在一個叫做“Partitioned Views”的功能,能通過將同樣結構的表Union在一個View中,實現類似現在分區表的效果。而在SQL Server 2008 中,分區功能得到了顯著加強,使得我們不僅能夠對表和索引做分區,而且允許對分區上鎖,而不是之前的全表上鎖。


      相關知識參考:

      1、對于SQL SERVER中分區表的理解和相關理論知識,請參考文章

      T-SQL查詢進階--理解SQL SERVER中的分區表

      理解SQL SERVER中的分區表(提供SQL語句)

      2、對于SQL Server數據庫中,關于文件的存放方式,以及文件和文件組,請參考文章:

      SQL Server中數據庫文件的存放方式,文件和文件組

      3、對于創建百萬或千萬級的測試數據表,建議采用 遞歸CTE插入。請參考文章

      SQL Server 2012中快速插入批量數據的示例及疑惑

      SQL2008使用CTE遞歸查詢批量插入500萬數據


      創建分區表的步驟:

      一、創建與刪除分區函數;

      二、創建與刪除文件組;

      三、創建與刪除文件;

      四、創建與刪除分區架構;

      五、查看分區是否成功;


      一、創建與刪除分區函數

      1.1創建分區函數

      CREATE PARTITION FUNCTION F_Partition_tzkc0075aLog_Range(datetime)
      AS RANGE LEFT FOR VALUES (
      '20130131 23:59:59.997',   -- 2013 年 1 月
      '20130228 23:59:59.997',   -- 2013 年 2 月
      '20130331 23:59:59.997',   -- 2013 年 3 月
      '20130430 23:59:59.997',    -- 2013 年 4 月
      '20130531 23:59:59.997',   -- 2013 年 5 月
      '20130630 23:59:59.997',   -- 2013 年 6 月
      '20130731 23:59:59.997',   -- 2013 年 7 月
      '20130831 23:59:59.997',   -- 2013 年 8 月
      '20130930 23:59:59.997',   -- 2013 年 9 月
      '20131031 23:59:59.997',   -- 2013 年 10 月
      '20131130 23:59:59.997',   -- 2013 年 11 月
      '20131231 23:59:59.997'    -- 2013 年 12 月*/
      )

      注:1、創建分區函數語法中,LEFT | RIGHT 關鍵字用于指定boundary_value [ ,...n ]中的每個boundary_value 屬于每個邊界值間隔的哪一側(左側還是右側)。如果未指定,則默認值為 LEFT。

      2、很明顯,這個分區函數創建了12個分區,因為此時 n=12,所以實際分區總數是 n+1=13。 

       

      1.2刪除分區函數

      DROP PARTITION FUNCTION F_Partition_tzkc0075aLog_Range;
      GO

       

      二、創建與刪除文件組

      2.1、創建文件組

      ALTER DATABASE DB_ZK3 ADD FILEGROUP FG1_TZKC0075Log;
      ALTER DATABASE DB_ZK3 ADD FILEGROUP FG2_TZKC0075Log;
      ALTER DATABASE DB_ZK3 ADD FILEGROUP FG3_TZKC0075Log;
      ALTER DATABASE DB_ZK3 ADD FILEGROUP FG4_TZKC0075Log;
      
      ALTER DATABASE DB_ZK3 ADD FILEGROUP FG5_TZKC0075Log;
      ALTER DATABASE DB_ZK3 ADD FILEGROUP FG6_TZKC0075Log;
      ALTER DATABASE DB_ZK3 ADD FILEGROUP FG7_TZKC0075Log;
      ALTER DATABASE DB_ZK3 ADD FILEGROUP FG8_TZKC0075Log;
      
      ALTER DATABASE DB_ZK3 ADD FILEGROUP FG9_TZKC0075Log;
      ALTER DATABASE DB_ZK3 ADD FILEGROUP FG10_TZKC0075Log;
      ALTER DATABASE DB_ZK3 ADD FILEGROUP FG11_TZKC0075Log;
      ALTER DATABASE DB_ZK3 ADD FILEGROUP FG12_TZKC0075Log;

       

      2.2、刪除文件組

      ALTER DATABASE DB_ZK3 REMOVE FILEGROUP FG1_TZKC0075Log;
      ALTER DATABASE DB_ZK3 REMOVE FILEGROUP FG2_TZKC0075Log;
      ALTER DATABASE DB_ZK3 REMOVE FILEGROUP FG3_TZKC0075Log;
      ALTER DATABASE DB_ZK3 REMOVE FILEGROUP FG4_TZKC0075Log;
      
      ALTER DATABASE DB_ZK3 REMOVE FILEGROUP FG5_TZKC0075Log;
      ALTER DATABASE DB_ZK3 REMOVE FILEGROUP FG6_TZKC0075Log;
      ALTER DATABASE DB_ZK3 REMOVE FILEGROUP FG7_TZKC0075Log;
      ALTER DATABASE DB_ZK3 REMOVE FILEGROUP FG8_TZKC0075Log;
      
      ALTER DATABASE DB_ZK3 REMOVE FILEGROUP FG9_TZKC0075Log;
      ALTER DATABASE DB_ZK3 REMOVE FILEGROUP FG10_TZKC0075Log;
      ALTER DATABASE DB_ZK3 REMOVE FILEGROUP FG11_TZKC0075Log;
      ALTER DATABASE DB_ZK3 REMOVE FILEGROUP FG12_TZKC0075Log;

       

      2.3、查詢文件組

      select name,type_desc,physical_name,state_desc,size,growth 
      from sys.database_files

       

      三、創建與刪除文件

      3.1、刪除文件

      ALTER DATABASE DB_ZK3 REMOVE FILE F4_TZKC0075Log;

       

      3.2、創建文件

      ALTER DATABASE DB_ZK3 ADD FILE(NAME=N'FB1_TZKC0075Log', FILENAME=N'D:\DB_ZK3\FB1_TZKC0075Log.ndf', SIZE=30720KB, FILEGROWTH=10% ) 
      TO FILEGROUP [FG1_TZKC0075Log];
      ALTER DATABASE DB_ZK3 ADD FILE(NAME=N'FB2_TZKC0075Log', FILENAME=N'D:\DB_ZK3\FB2_TZKC0075Log.ndf', SIZE=30720KB, FILEGROWTH=10% ) 
      TO FILEGROUP [FG2_TZKC0075Log];
      ALTER DATABASE DB_ZK3 ADD FILE(NAME=N'FB3_TZKC0075Log', FILENAME=N'D:\DB_ZK3\FB3_TZKC0075Log.ndf', SIZE=30720KB, FILEGROWTH=10% ) 
      TO FILEGROUP [FG3_TZKC0075Log];
      ALTER DATABASE DB_ZK3 ADD FILE(NAME=N'FB4_TZKC0075Log', FILENAME=N'D:\DB_ZK3\FB4_TZKC0075Log.ndf', SIZE=30720KB, FILEGROWTH=10% ) 
      TO FILEGROUP [FG4_TZKC0075Log];
      
      ALTER DATABASE DB_ZK3 ADD FILE(NAME=N'FB5_TZKC0075Log', FILENAME=N'D:\DB_ZK3\FB5_TZKC0075Log.ndf', SIZE=30720KB, FILEGROWTH=10% ) 
      TO FILEGROUP [FG5_TZKC0075Log];
      ALTER DATABASE DB_ZK3 ADD FILE(NAME=N'FB6_TZKC0075Log', FILENAME=N'D:\DB_ZK3\FB6_TZKC0075Log.ndf', SIZE=30720KB, FILEGROWTH=10% ) 
      TO FILEGROUP [FG6_TZKC0075Log];
      ALTER DATABASE DB_ZK3 ADD FILE(NAME=N'FB7_TZKC0075Log', FILENAME=N'D:\DB_ZK3\FB7_TZKC0075Log.ndf', SIZE=30720KB, FILEGROWTH=10% ) 
      TO FILEGROUP [FG7_TZKC0075Log];
      ALTER DATABASE DB_ZK3 ADD FILE(NAME=N'FB8_TZKC0075Log', FILENAME=N'D:\DB_ZK3\FB8_TZKC0075Log.ndf', SIZE=30720KB, FILEGROWTH=10% ) 
      TO FILEGROUP [FG8_TZKC0075Log];
      
      ALTER DATABASE DB_ZK3 ADD FILE(NAME=N'FB9_TZKC0075Log', FILENAME=N'D:\DB_ZK3\FB9_TZKC0075Log.ndf', SIZE=30720KB, FILEGROWTH=10% ) 
      TO FILEGROUP [FG9_TZKC0075Log];
      ALTER DATABASE DB_ZK3 ADD FILE(NAME=N'FB10_TZKC0075Log', FILENAME=N'D:\DB_ZK3\FB10_TZKC0075Log.ndf', SIZE=30720KB, FILEGROWTH=10% ) 
      TO FILEGROUP [FG10_TZKC0075Log];
      ALTER DATABASE DB_ZK3 ADD FILE(NAME=N'FB11_TZKC0075Log', FILENAME=N'D:\DB_ZK3\FB11_TZKC0075Log.ndf', SIZE=30720KB, FILEGROWTH=10% ) 
      TO FILEGROUP [FG11_TZKC0075Log];
      ALTER DATABASE DB_ZK3 ADD FILE(NAME=N'FB12_TZKC0075Log', FILENAME=N'D:\DB_ZK3\FB12_TZKC0075Log.ndf', SIZE=30720KB, FILEGROWTH=10% ) 
      TO FILEGROUP [FG12_TZKC0075Log];

       

      四、創建與刪除分區架構

      4.1、創建分區架構

      CREATE PARTITION SCHEME [S_Scheme_TZKC0075Log] 
      AS
      PARTITION F_Partition_tzkc0075aLog_Range
      TO ([FG1_TZKC0075Log],[FG2_TZKC0075Log],[FG3_TZKC0075Log],[FG4_TZKC0075Log],[FG5_TZKC0075Log],
          [FG6_TZKC0075Log],[FG7_TZKC0075Log],[FG8_TZKC0075Log],[FG9_TZKC0075Log],[FG10_TZKC0075Log],
          [FG11_TZKC0075Lot],[FG12_TZKC0075Log],[PRIMARY]);

      注意:建議將主數據文件 [PRIMARY]  放在分區最后!

       

      4.2 刪除分區架構

      DROP PARTITION SCHEME [S_Scheme_TZKC0075Log]; 

       

       五、查看分區是否成功

      select convert(varchar(50), ps.name) as partition_scheme, p.partition_number,  
      convert(varchar(10), ds2.name) as filegroup, 
       convert(varchar(19), isnull(v.value, ''), 120) as range_boundary,  
      str(p.rows, 9) as rows from sys.indexes i 
       join sys.partition_schemes ps on i.data_space_id = ps.data_space_id 
       join sys.destination_data_spaces dds on ps.data_space_id = dds.partition_scheme_id  
      join sys.data_spaces ds2 on dds.data_space_id = ds2.data_space_id  
      join sys.partitions p on dds.destination_id = p.partition_number 
      and p.object_id = i.object_id and p.index_id = i.index_id  
      join sys.partition_functions pf on ps.function_id = pf.function_id 
       LEFT JOIN sys.Partition_Range_values v on pf.function_id = v.function_id 
      and v.boundary_id = p.partition_number - pf.boundary_value_on_right  
      WHERE i.object_id = object_id('PartitionedTable')  --  PartitionedTable 對應具體的分區表名稱
      and i.index_id in (0, 1)  
      order by p.partition_number

       

      (完)

      posted on 2013-04-28 15:37  鋼鋼  閱讀(1980)  評論(0)    收藏  舉報

      導航

      主站蜘蛛池模板: 狠狠综合久久av一区二| av色综合久久天堂av色综合在| 亚洲国产精品久久久天堂麻豆宅男 | 中文字幕av一区二区| 久久超碰97人人做人人爱| 中文字幕有码无码人妻在线| 亚洲精品漫画一二三区| 亚洲a∨无码无在线观看| 日韩av天堂综合网久久| 最新偷拍一区二区三区| 轮台县| 久久精品免费自拍视频| 国产麻豆剧果冻传媒一区| 亚洲欧美v国产蜜芽tv| 亚洲国产午夜精品理论片| 女人喷液抽搐高潮视频| 欧美和黑人xxxx猛交视频| 久久精品午夜视频| 亚洲性色AV一区二区三区| 国产对白老熟女正在播放| 精品尤物TV福利院在线网站| 亚洲av无码成人精品区一区| 一本色道久久东京热| 久久丁香五月天综合网| 无码av不卡免费播放| 18岁日韩内射颜射午夜久久成人| 久久精品国产高潮国产夫妻| 特级做a爰片毛片免费看无码| 国产精品午夜福利免费看| 黄又色又污又爽又高潮| 亚洲日韩一区精品射精| 无码专区人妻系列日韩精品| 熟女系列丰满熟妇AV| 开心一区二区三区激情| 国产美女免费永久无遮挡| 97人妻免费碰视频碰免| 看亚洲黄色不在线网占| 久热久热中文字幕综合激情| 欧美老少配性行为| 麻豆tv入口在线看| 成人免费无遮挡在线播放|