亚洲韩日午夜视频,欧美日韩在线精品一区二区三区,韩国超清无码一区二区三区,亚洲国产成人影院播放,久草新在线,在线看片AV色

您好,歡迎來(lái)到思海網(wǎng)絡(luò),我們將竭誠(chéng)為您提供優(yōu)質(zhì)的服務(wù)! 誠(chéng)征網(wǎng)絡(luò)推廣 | 網(wǎng)站備案 | 幫助中心 | 軟件下載 | 購(gòu)買(mǎi)流程 | 付款方式 | 聯(lián)系我們 [ 會(huì)員登錄/注冊(cè) ]
促銷(xiāo)推廣
客服中心
業(yè)務(wù)咨詢(xún)
有事點(diǎn)擊這里…  531199185
有事點(diǎn)擊這里…  61352289
點(diǎn)擊這里給我發(fā)消息  81721488
有事點(diǎn)擊這里…  376585780
有事點(diǎn)擊這里…  872642803
有事點(diǎn)擊這里…  459248018
有事點(diǎn)擊這里…  61352288
有事點(diǎn)擊這里…  380791050
技術(shù)支持
有事點(diǎn)擊這里…  714236853
有事點(diǎn)擊這里…  719304487
有事點(diǎn)擊這里…  1208894568
有事點(diǎn)擊這里…  61352289
在線客服
有事點(diǎn)擊這里…  531199185
有事點(diǎn)擊這里…  61352288
有事點(diǎn)擊這里…  983054746
有事點(diǎn)擊這里…  893984210
當(dāng)前位置:首頁(yè) >> 技術(shù)文章 >> 文章瀏覽
技術(shù)文章

SQL Server中創(chuàng)建數(shù)據(jù)倉(cāng)庫(kù)已分區(qū)表

添加時(shí)間:2014-3-24 17:04:39  添加: 思海網(wǎng)絡(luò) 
在創(chuàng)建一個(gè)分區(qū)數(shù)據(jù)倉(cāng)庫(kù)事實(shí)數(shù)據(jù)表。非常大的表經(jīng)常需要跨幾個(gè)磁盤(pán)卷存儲(chǔ)數(shù)據(jù)。SQL Server 表無(wú)法放置在特定文件中。但是,文件組可以放置在文件中,而表可以分配給文件組。這樣您就可以控制 SQL Server 中非常大的表中的數(shù)據(jù)的存儲(chǔ)。而且,如果表跨幾個(gè)文件組,定義哪些數(shù)據(jù)放置在哪個(gè)文件組中會(huì)非常有用。分區(qū)函數(shù)通過(guò)基于特定列中的值沿水平方向拆分表提供 了此功能。

  注意: 您可以復(fù)制下面的腳本,這些腳本位于 C:\SQLHOLS\Partitioning\Solution\Partition Processing 文件夾中的 Partition Processing.ssmssln 解決方案中。

  1.新建 SQL Server 腳本項(xiàng)目

  (1)從開(kāi)始->所有程序菜單中的 Microsoft SQL Server 2008 程序組中啟動(dòng)SQL Server Management Studio。

  (2)在連接到服務(wù)器對(duì)話框中,驗(yàn)證下列設(shè)置無(wú)誤后單擊連接:

  • 服務(wù)器類(lèi)型:數(shù)據(jù)庫(kù)引擎

  • 服務(wù)器名稱(chēng):(local)

  • 身份驗(yàn)證:Windows 身份驗(yàn)證

  (3)在文件菜單上,指向新建,然后單擊項(xiàng)目。

  (4)確保選中 SQL Server 腳本,然后輸入下列設(shè)置:

  • 名稱(chēng):Partition Processing

  • 位置:C:\SQLHOLs\Partitioning\Starter

  • 解決方案名稱(chēng):Partition Processing

  (5)確保選中創(chuàng)建解決方案的目錄,然后單擊確定。

  (6)在解決方案資源管理器中,右鍵單擊連接,然后單擊新建連接。

  (7)在連接到服務(wù)器對(duì)話框中,驗(yàn)證下列設(shè)置無(wú)誤后單擊確定:

  • 服務(wù)器名稱(chēng):(local)

  • 身份驗(yàn)證:Windows 身份驗(yàn)證

  2.創(chuàng)建文件組和文件

  (1)在解決方案資源管理器中,右鍵單擊在前面步驟中添加的連接,然后單擊新建查詢(xún)。

  (2)右鍵單擊 SQLQuery1.sql,然后單擊重命名。

  (3)鍵入 Files and Filegroups.sql,然后按 Enter。

  (4)鍵入下面的代碼(每個(gè) FILENAME 參數(shù)都應(yīng)單占一行)。

  USE [master]

  
ALTER DATABASE [AdventureWorksDW] ADD FILEGROUP [fg2001]

  
GO

  
ALTER DATABASE [AdventureWorksDW] ADD FILEGROUP [fg2002]

  
GO

  
ALTER DATABASE [AdventureWorksDW] ADD FILEGROUP [fg2003]

  
GO

  
ALTER DATABASE [AdventureWorksDW] ADD FILEGROUP [fg2004]

  
GO

  
ALTER DATABASE [AdventureWorksDW] ADD FILE

  (NAME
= N'AdventureWorksDW_Data2001',

  FILENAME
= N'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\AdventureWorksDW_Data2001.ndf',

  SIZE
= 2048KB , FILEGROWTH = 1024KB ) TO FILEGROUP [fg2001]

  
GO

  
ALTER DATABASE [AdventureWorksDW] ADD FILE

  (NAME
= N'AdventureWorksDW_Data2002',

  FILENAME
= N'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\AdventureWorksDW_Data2002.ndf',

  SIZE
= 2048KB , FILEGROWTH = 1024KB ) TO FILEGROUP [fg2002]

  
GO

  
ALTER DATABASE [AdventureWorksDW] ADD FILE

  (NAME
= N'AdventureWorksDW_Data2003',

  FILENAME
= N'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\AdventureWorksDW_Data2003.ndf',

  SIZE
= 2048KB , FILEGROWTH = 1024KB) TO FILEGROUP [fg2003]

  
GO

  
ALTER DATABASE [AdventureWorksDW] ADD FILE

  (NAME
= N'AdventureWorksDW_Data2004',

  FILENAME
= N'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\AdventureWorksDW_Data2004.ndf',

  SIZE
= 2048KB , FILEGROWTH = 1024KB ) TO FILEGROUP [fg2004]

  
GO

 

  (5)單擊執(zhí)行。

  3.創(chuàng)建分區(qū)函數(shù)

  (1)在解決方案資源管理器中,右鍵單擊該連接,然后單擊新建查詢(xún)。

  (2)右鍵單擊 SQLQuery1.sql,然后單擊重命名。

  (3)鍵入 Create Partition Function.sql,然后按 Enter。

  (4)鍵入下面的代碼。

  USE AdventureWorksDW

  
CREATE PARTITION FUNCTION pf_OrderDateKey(int)

  
AS RANGE RIGHT

  
FOR VALUES(185,550)

  
GO

 

  (5)單擊執(zhí)行。

  注意:分區(qū)函數(shù)提供了兩個(gè)文件組之間的邊界。在本例中,值是與 1 月 1 日對(duì)應(yīng)的鍵。

  4.創(chuàng)建分區(qū)方案

  (1)在解決方案資源管理器中,右鍵單擊該連接,然后單擊新建查詢(xún)。

  (2)右鍵單擊 SQLQuery1.sql,然后單擊重命名。

  (3)鍵入 Create Partition Scheme.sql,然后按 Enter。

  (4)鍵入下面的代碼。單擊執(zhí)行。

  USE AdventureWorksDW

  
CREATE PARTITION SCHEME ps_OrderDateKey

  
AS PARTITION pf_OrderDateKey

  
TO (fg2001,fg2002,fg2003,fg2004)

  
GO

 

  注意:雖然分區(qū)函數(shù)中僅列出了兩個(gè)邊界,但卻有四個(gè)文件組在分區(qū)函數(shù)中列出。第四個(gè)文件組是作為供將來(lái)的文件組拆分使用的下一個(gè)文件組提供的。

  5.創(chuàng)建已分區(qū)表

  (1)在解決方案資源管理器中,右鍵單擊該連接,然后單擊新建查詢(xún)。

  (2)右鍵單擊 SQLQuery1.sql,然后單擊重命名。

  (3)鍵入 Create Table.sql,然后按 Enter。

  (4)鍵入下面的代碼。

  USE AdventureWorksDW

  
CREATE TABLE [dbo].[FactInternetSalesPartitioned]

  (

  
[InternetSalesID] [int] IDENTITY(1,1) NOT NULL,

  
[ProductKey] [int] NOT NULL,

  
[OrderDateKey] [int] NOT NULL,

  
[DueDateKey] [int] NOT NULL,

  
[ShipDateKey] [int] NOT NULL,

  
[CustomerKey] [int] NOT NULL,

  
[PromotionKey] [int] NOT NULL,

  
[CurrencyKey] [int] NOT NULL,

  
[SalesTerritoryKey] [int] NOT NULL,

  
[SalesOrderNumber] [nvarchar](20) NOT NULL,

  
[OrderQuantity] [smallint] NULL,

  
[UnitPrice] [money] NULL,

  
CONSTRAINT [PK_ FactInternetSalesPartitioned] PRIMARY KEY CLUSTERED

  (

  
[InternetSalesID],

  
[ProductKey],

  
[OrderDateKey],

  
[DueDateKey],

  
[ShipDateKey],

  
[CustomerKey],

  
[PromotionKey],

  
[CurrencyKey],

  
[SalesTerritoryKey]

  )

  )

  
ON ps_OrderDateKey(OrderDateKey)

  
GO

 

  (5)單擊執(zhí)行。

  6.將數(shù)據(jù)插入已分區(qū)表中

  (1)在解決方案資源管理器中,右鍵單擊該連接,然后單擊新建查詢(xún)。

  (2)右鍵單擊 SQLQuery1.sql,然后單擊重命名。

  (3)鍵入 Load Data.sql,然后按 Enter。

  (4)鍵入下面的代碼。

  USE AdventureWorksDW

  
INSERT INTO [dbo].[FactInternetSalesPartitioned]

  (

  
[ProductKey],

  
[OrderDateKey],

  
[DueDateKey],

  
[ShipDateKey],

  
[CustomerKey],

  
[PromotionKey],

  
[CurrencyKey],

  
[SalesTerritoryKey],

  
[SalesOrderNumber],

  
[OrderQuantity],

  
[UnitPrice]

  )

  
SELECT

  
[ProductKey],

  
[OrderDateKey],

  
[DueDateKey],

  
[ShipDateKey],

  
[CustomerKey],

  
[PromotionKey],

  
[CurrencyKey],

  
[SalesTerritoryKey],

  
[SalesOrderNumber],

  
[OrderQuantity],

  
[UnitPrice]

  
FROM [dbo].[FactInternetSales]

  
GO

 

  (5)單擊執(zhí)行。

  7.查看分區(qū)數(shù)據(jù)

  (1)在解決方案資源管理器中,右鍵單擊該連接,然后單擊新建查詢(xún)。

  (2)右鍵單擊 SQLQuery1.sql,然后單擊重命名。

  (3)鍵入 View Partitioned Data.sql,然后按 Enter。

  (4)鍵入下面的代碼。

  USE AdventureWorksDW

  SELECTProductKey,

  OrderDateKey,

  $PARTITION.pf_OrderDateKey (OrderDateKey)
AS PartitionNo

  
FROM FactInternetSalesPartitioned

  
GO

  
SELECT $PARTITION.pf_OrderDateKey (OrderDateKey) AS PartitionNo,

  
COUNT(*) AS Rows FROM FactInternetSalesPartitioned

  
GROUP BY $PARTITION.pf_OrderDateKey (OrderDateKey)

  
ORDER BY PartitionNo

  
GO

 

  (5)單擊執(zhí)行。

  (6)待查詢(xún)完成后,查看結(jié)果。

  注意:第一個(gè)結(jié)果集顯示表中每行的產(chǎn)品密鑰和訂單日期密鑰以及存儲(chǔ)各行的相應(yīng)分區(qū)。

  第二個(gè)結(jié)果集顯示各分區(qū)中的行數(shù)。

  (7)保持 SQL Server Management Studio 打開(kāi),下一個(gè)練習(xí)還要使用此程序。

  在本練習(xí)中,您將創(chuàng)建一個(gè)分區(qū)數(shù)據(jù)倉(cāng)庫(kù)事實(shí)數(shù)據(jù)表。非常大的表經(jīng)常需要跨幾個(gè)磁盤(pán)卷存儲(chǔ)數(shù)據(jù)。SQL Server 表無(wú)法放置在特定文件中。但是,文件組可以放置在文件中,而表可以分配給文件組。這樣您就可以控制 SQL Server 中非常大的表中的數(shù)據(jù)的存儲(chǔ)。而且,如果表跨幾個(gè)文件組,定義哪些數(shù)據(jù)放置在哪個(gè)文件組中會(huì)非常有用。分區(qū)函數(shù)通過(guò)基于特定列中的值沿水平方向拆分表提供 了此功能。

  注意: 您可以復(fù)制此練習(xí)中所用的腳本,這些腳本位于 C:\SQLHOLS\Partitioning\Solution\Partition Processing 文件夾中的 Partition Processing.ssmssln 解決方案中。

  1.新建 SQL Server 腳本項(xiàng)目

  (1)從開(kāi)始->所有程序菜單中的 Microsoft SQL Server 2008 程序組中啟動(dòng)SQL Server Management Studio。

  (2)在連接到服務(wù)器對(duì)話框中,驗(yàn)證下列設(shè)置無(wú)誤后單擊連接:

  • 服務(wù)器類(lèi)型:數(shù)據(jù)庫(kù)引擎

  • 服務(wù)器名稱(chēng):(local)

  • 身份驗(yàn)證:Windows 身份驗(yàn)證

  (3)在文件菜單上,指向新建,然后單擊項(xiàng)目。

  (4)確保選中 SQL Server 腳本,然后輸入下列設(shè)置:

  • 名稱(chēng):Partition Processing

  • 位置:C:\SQLHOLs\Partitioning\Starter

  • 解決方案名稱(chēng):Partition Processing

  (5)確保選中創(chuàng)建解決方案的目錄,然后單擊確定。

  (6)在解決方案資源管理器中,右鍵單擊連接,然后單擊新建連接。

  (7)在連接到服務(wù)器對(duì)話框中,驗(yàn)證下列設(shè)置無(wú)誤后單擊確定:

  • 服務(wù)器名稱(chēng):(local)

  • 身份驗(yàn)證:Windows 身份驗(yàn)證

  2.創(chuàng)建文件組和文件

  (1)在解決方案資源管理器中,右鍵單擊在前面步驟中添加的連接,然后單擊新建查詢(xún)。

  (2)右鍵單擊 SQLQuery1.sql,然后單擊重命名。

  (3)鍵入 Files and Filegroups.sql,然后按 Enter。

  (4)鍵入下面的代碼(每個(gè) FILENAME 參數(shù)都應(yīng)單占一行)。

  USE [master]

  
ALTER DATABASE [AdventureWorksDW] ADD FILEGROUP [fg2001]

  
GO

  
ALTER DATABASE [AdventureWorksDW] ADD FILEGROUP [fg2002]

  
GO

  
ALTER DATABASE [AdventureWorksDW] ADD FILEGROUP [fg2003]

  
GO

  
ALTER DATABASE [AdventureWorksDW] ADD FILEGROUP [fg2004]

  
GO

  
ALTER DATABASE [AdventureWorksDW] ADD FILE

  (NAME
= N'AdventureWorksDW_Data2001',

  FILENAME
= N'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\AdventureWorksDW_Data2001.ndf',

  SIZE
= 2048KB , FILEGROWTH = 1024KB ) TO FILEGROUP [fg2001]

  
GO

  
ALTER DATABASE [AdventureWorksDW] ADD FILE

  (NAME
= N'AdventureWorksDW_Data2002',

  FILENAME
= N'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\AdventureWorksDW_Data2002.ndf',

  SIZE
= 2048KB , FILEGROWTH = 1024KB ) TO FILEGROUP [fg2002]

  
GO

  
ALTER DATABASE [AdventureWorksDW] ADD FILE

  (NAME
= N'AdventureWorksDW_Data2003',

  FILENAME
= N'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\AdventureWorksDW_Data2003.ndf',

  SIZE
= 2048KB , FILEGROWTH = 1024KB) TO FILEGROUP [fg2003]

  
GO

  
ALTER DATABASE [AdventureWorksDW] ADD FILE

  (NAME
= N'AdventureWorksDW_Data2004',

  FILENAME
= N'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\AdventureWorksDW_Data2004.ndf',

  SIZE
= 2048KB , FILEGROWTH = 1024KB ) TO FILEGROUP [fg2004]

  
GO

 

  (5)單擊執(zhí)行。


  3.創(chuàng)建分區(qū)函數(shù)

  (1)在解決方案資源管理器中,右鍵單擊該連接,然后單擊新建查詢(xún)。

  (2)右鍵單擊 SQLQuery1.sql,然后單擊重命名。

  (3)鍵入 Create Partition Function.sql,然后按 Enter。

  (4)鍵入下面的代碼。

  USE AdventureWorksDW

  
CREATE PARTITION FUNCTION pf_OrderDateKey(int)

  
AS RANGE RIGHT

  
FOR VALUES(185,550)

  
GO

 

  (5)單擊執(zhí)行。

  注意:分區(qū)函數(shù)提供了兩個(gè)文件組之間的邊界。在本例中,值是與 1 月 1 日對(duì)應(yīng)的鍵。

  4.創(chuàng)建分區(qū)方案

  (1)在解決方案資源管理器中,右鍵單擊該連接,然后單擊新建查詢(xún)。

  (2)右鍵單擊 SQLQuery1.sql,然后單擊重命名。

  (3)鍵入 Create Partition Scheme.sql,然后按 Enter。

  (4)鍵入下面的代碼。單擊執(zhí)行。

  USE AdventureWorksDW

  
CREATE PARTITION SCHEME ps_OrderDateKey

  
AS PARTITION pf_OrderDateKey

  
TO (fg2001,fg2002,fg2003,fg2004)

  
GO

 

  注意:雖然分區(qū)函數(shù)中僅列出了兩個(gè)邊界,但卻有四個(gè)文件組在分區(qū)函數(shù)中列出。第四個(gè)文件組是作為供將來(lái)的文件組拆分使用的下一個(gè)文件組提供的。

  5.創(chuàng)建已分區(qū)表

  (1)在解決方案資源管理器中,右鍵單擊該連接,然后單擊新建查詢(xún)。

  (2)右鍵單擊 SQLQuery1.sql,然后單擊重命名。

  (3)鍵入 Create Table.sql,然后按 Enter。

  (4)鍵入下面的代碼。

  USE AdventureWorksDW

  
CREATE TABLE [dbo].[FactInternetSalesPartitioned]

  (

  
[InternetSalesID] [int] IDENTITY(1,1) NOT NULL,

  
[ProductKey] [int] NOT NULL,

  
[OrderDateKey] [int] NOT NULL,

  
[DueDateKey] [int] NOT NULL,

  
[ShipDateKey] [int] NOT NULL,

  
[CustomerKey] [int] NOT NULL,

  
[PromotionKey] [int] NOT NULL,

  
[CurrencyKey] [int] NOT NULL,

  
[SalesTerritoryKey] [int] NOT NULL,

  
[SalesOrderNumber] [nvarchar](20) NOT NULL,

  
[OrderQuantity] [smallint] NULL,

  
[UnitPrice] [money] NULL,

  
CONSTRAINT [PK_ FactInternetSalesPartitioned] PRIMARY KEY CLUSTERED

  (

  
[InternetSalesID],

  
[ProductKey],

  
[OrderDateKey],

  
[DueDateKey],

  
[ShipDateKey],

  
[CustomerKey],

  
[PromotionKey],

  
[CurrencyKey],

  
[SalesTerritoryKey]

  )

  )

  
ON ps_OrderDateKey(OrderDateKey)

  
GO

 

  (5)單擊執(zhí)行。


  6.將數(shù)據(jù)插入已分區(qū)表中

  (1)在解決方案資源管理器中,右鍵單擊該連接,然后單擊新建查詢(xún)。

  (2)右鍵單擊 SQLQuery1.sql,然后單擊重命名。

  (3)鍵入 Load Data.sql,然后按 Enter。

  (4)鍵入下面的代碼。

  USE AdventureWorksDW

  
INSERT INTO [dbo].[FactInternetSalesPartitioned]

  (

  
[ProductKey],

  
[OrderDateKey],

  
[DueDateKey],

  
[ShipDateKey],

  
[CustomerKey],

  
[PromotionKey],

  
[CurrencyKey],

  
[SalesTerritoryKey],

  
[SalesOrderNumber],

  
[OrderQuantity],

  
[UnitPrice]

  )

  
SELECT

  
[ProductKey],

  
[OrderDateKey],

  
[DueDateKey],

  
[ShipDateKey],

  
[CustomerKey],

  
[PromotionKey],

  
[CurrencyKey],

  
[SalesTerritoryKey],

  
[SalesOrderNumber],

  
[OrderQuantity],

  
[UnitPrice]

  
FROM [dbo].[FactInternetSales]

  
GO

 

  (5)單擊執(zhí)行。

  7.查看分區(qū)數(shù)據(jù)

  (1)在解決方案資源管理器中,右鍵單擊該連接,然后單擊新建查詢(xún)。

  (2)右鍵單擊 SQLQuery1.sql,然后單擊重命名。

  (3)鍵入 View Partitioned Data.sql,然后按 Enter。

  (4)鍵入下面的代碼。

  USE AdventureWorksDW

  SELECTProductKey,

  OrderDateKey,

  $PARTITION.pf_OrderDateKey (OrderDateKey)
AS PartitionNo

  
FROM FactInternetSalesPartitioned

  
GO

  
SELECT $PARTITION.pf_OrderDateKey (OrderDateKey) AS PartitionNo,

  
COUNT(*) AS Rows FROM FactInternetSalesPartitioned

  
GROUP BY $PARTITION.pf_OrderDateKey (OrderDateKey)

  
ORDER BY PartitionNo

  
GO

 

  (5)單擊執(zhí)行。

  (6)待查詢(xún)完成后,查看結(jié)果。

  注意:第一個(gè)結(jié)果集顯示表中每行的產(chǎn)品密鑰和訂單日期密鑰以及存儲(chǔ)各行的相應(yīng)分區(qū)。

  第二個(gè)結(jié)果集顯示各分區(qū)中的行數(shù)。

  (7)保持 SQL Server Management Studio 打開(kāi),下一個(gè)練習(xí)還要使用此程序。

關(guān)鍵字:服務(wù)器、SQL Server、數(shù)據(jù)庫(kù)

分享到:

頂部 】 【 關(guān)閉
版權(quán)所有:佛山思海電腦網(wǎng)絡(luò)有限公司 ©1998-2024 All Rights Reserved.
聯(lián)系電話:(0757)22630313、22633833
中華人民共和國(guó)增值電信業(yè)務(wù)經(jīng)營(yíng)許可證: 粵B1.B2-20030321 備案號(hào):粵B2-20030321-1
網(wǎng)站公安備案編號(hào):44060602000007 交互式欄目專(zhuān)項(xiàng)備案編號(hào):200303DD003  
察察 工商 網(wǎng)安 舉報(bào)有獎(jiǎng)  警警  手機(jī)打開(kāi)網(wǎng)站