SQL*_*ean 4 sql-server columnstore sql-server-2014
我正在从以下包含 52 亿条记录的聚集列存储索引中执行 SELECT。当我查看 STATISTICS IO 的输出时,我看到的是 LOB 逻辑读取。
我的问题是当表中的数据类型都不是 LOB 值时,为什么查询执行 LOB 逻辑读取?
我在 SQL Server 2014 SP3 企业版环境中工作。
表定义:
CREATE TABLE [dbo].[ColumnstoreTableA](
[RollupID] [bigint] IDENTITY(1,1) NOT NULL,
[DT_DIMID] [int] NOT NULL,
[TC_DIMID] [int] NOT NULL,
[C_DIMID] [int] NOT NULL,
[CD_DIMID] [int] NOT NULL,
[AC_DIMID] [int] NOT NULL,
[UA_DIMID] [int] NOT NULL,
[UL_DIMID] [int] NOT NULL,
[JP_DIMID] [int] NOT NULL,
[RTT_DIMID] [int] NOT NULL,
[RA] [int] NOT NULL,
[Impressions] [int] NOT NULL,
[Clicks] [int] NOT NULL,
[Conversions] [int] NOT NULL,
[Sends] [int] NOT NULL,
[CreationDate] [datetime2](0) NOT NULL DEFAULT GETDATE(),
[ModifyDate] [datetime2](0) NOT NULL DEFAULT GETDATE(),
[Z_DIMID] [int] NOT NULL,
[R_Actual] [money] NULL,
[JP_DIMID2] [int] NULL
) ON [PRIMARY]
Run Code Online (Sandbox Code Playgroud)
选择语句:
SELECT [T].[Impressions]
FROM [dbo].[ColumnstoreTableA] AS [T]
Run Code Online (Sandbox Code Playgroud)
统计 IO 输出:
表 'ColumnstoreTableA'。扫描计数 5,逻辑读取 127,物理读取 0,预读读取 0,lob 逻辑读取 3719,lob 物理读取 0,lob 预读读取 0。
多个来源似乎表明 Columnstore Indexes 将其数据存储为 LOB 数据,这种情况正在发生。我的理解和收获是,在使用列存储索引时,应该始终期望发生 LOB 读取。
SELECT COUNT([partition_number]) AS [Number of Partitions],
SUM([in_row_used_page_count]) AS [SUM_in_row_used_page_count],
SUM([lob_used_page_count]) AS [SUM_lob_used_page_count],
SUM([used_page_count]) AS [SUM_used_page_count],
SUM([row_count]) AS [SUM_row_count]
FROM [sys].[dm_db_partition_stats]
WHERE [partition_id] IN (
SELECT [p].[partition_id]
FROM [sys].[partitions] AS [p]
INNER JOIN [sys].[objects] AS [o] ON [o].[object_id] = [p].[object_id]
WHERE [o].[object_id] = 971254615
);
Run Code Online (Sandbox Code Playgroud)
结果:
Number of Partitions SUM_in_row_used_page_count SUM_lob_used_page_count SUM_used_page_count SUM_row_count
-------------------- -------------------------- ----------------------- -------------------- --------------------
847 0 5630558 5630558 5175958971
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
571 次 |
最近记录: |