Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
A következőkre vonatkozik:SQL Server
Azure SQL Database
Felügyelt Azure SQL-példány
SQL-adatbázis a Microsoft Fabricben
Egy sor minden oszlopszegmenshez egy oszloptároló indexben. Minden sorcsoporthoz egy oszlopszegmens tartozik. Egy 10 sorcsoportot és 34 oszlopot tartalmazó oszlopcentrikus index például 340 sort tartalmaz ebben a nézetben.
| Oszlop név | Adattípus | Description |
|---|---|---|
partition_id |
bigint | Jelzi a partíció azonosítóját. Az adatbázison belül egyedi. |
hobt_id |
bigint | A halom vagy B-fa index (HoBT) azonosítója annak a táblának, amely tartalmazza ezt az oszloptároló indexet. |
column_id |
int | Az oszlopcentrikus oszlop azonosítója. |
segment_id |
int | A sorcsoport azonosítója. A visszafelé kompatibilitás érdekében az oszlop nevét továbbra is segment_id-nek hívják, még akkor is, ha ez a sorcsoport azonosítója. A szegmenseket egyedileg azonosíthatja a következő használatával <hobt_id, partition_id, column_id, segment_id>: . |
version |
int | Az oszlopszegmens formátum változata. |
encoding_type |
int | Az adott szegmens kódolásának típusa: 1 = VALUE_BASED - nem string/bináris szótár nélkül (hasonló a 4-hez, néhány belső változattal) 2 = VALUE_HASH_BASED - nem string/bináris oszlop közös értékekkel a szótárban 3 = STRING_HASH_BASED - láncsor/bináris oszlop közös értékekkel a szótárban 4 = STORE_BY_VALUE_BASED - nem string/bináris szótár nélkül 5 = STRING_STORE_BY_VALUE_BASED - láncsor/bináris szótár nélkül További információ: Megjegyzések szakasz. |
row_count |
int | A sorcsoportban lévő sorok száma. |
has_nulls |
int | 1, ha az oszlopszegmensben NULL-ek vannak. |
base_id |
bigint | Alapérték azonosító, ha 1-es típusú kódolást használnak. Ha nem használja az 1. kódolási típust, base_id akkor -1 értékre van állítva. |
magnitude |
float | Nagyság, ha 1-es típusú kódolást használnak. Ha nem használja az 1. kódolási típust, magnitude akkor -1 értékre van állítva. |
primary_dictionary_id |
int | 0 érték a globális szótárt jelöli. Egy -1 érték azt jelzi, hogy ehhez az oszlophoz nem hoztak létre globális szótárt. |
secondary_dictionary_id |
int | Egy nem nulla érték mutatja a helyi szótárt ezen oszlopnak a jelenlegi szegmensben (például a sorcsoportban). Egy -1 érték azt jelzi, hogy erre a szegmensre nincs helyi szótár. |
min_data_id |
bigint | Csak belső használatra. |
max_data_id |
bigint | Csak belső használatra. |
null_value |
bigint | Az érték, amelyet nullák képviselésére használnak. |
on_disk_size |
bigint | A szegmens mérete bájtokban. |
collation_id |
int | A jelenlegi összeállítás, amikor a szegmens létrejött. Belső azonosítóhoz igazít. Csak belső használatra. A következőkre vonatkozik: SQL Server 2022 (16.x) és újabb verziókra, az Azure SQL Database-ra és a felügyelt Azure SQL-példányra |
min_deep_data |
varbinary(18) | Szegmens kizárására használják. 1 Csak belső használatra. A következőkre vonatkozik: SQL Server 2022 (16.x) és újabb verziókra, az Azure SQL Database-ra és a felügyelt Azure SQL-példányra |
max_deep_data |
varbinary(18) | Szegmens kizárására használják. 1 Csak belső használatra. A következőkre vonatkozik: SQL Server 2022 (16.x) és újabb verziókra, az Azure SQL Database-ra és a felügyelt Azure SQL-példányra |
1 Az adatbázismotor azon verziójára való frissítés után, amely támogatja a minimális/maximális szegmenselivételt egy bővített adattípuscsoport esetében (az SQL Server 2022-ben (16.x)), az min_deep_datamax_deep_data oszlopcentrikus index egy vagy CREATE INDEX ... WITH (DROP_EXISTING = ON) utasítás használatával ALTER INDEX ... REBUILD történő újraépítéséig tartNULL.
Megjegyzések
Az oszlopcentrikus szegmenskódolási típust az adatbázismotor választja ki a szegmensadatok elemzésével a legalacsonyabb tárolási költség elérése érdekében. Ha az adatok többnyire különállóak, az Adatbázis Motor értékalapú kódolást használ. Ha az adatok többnyire nem különállóak, az Adatbázis Motor hash-alapú kódolást használ. A string-alapú és értékalapú kódolás közötti választás attól függ, hogy milyen adat tárolt a tárolt, legyen az string vagy bináris adat. Minden kódolás lehetőség szerint kihasználja a bitcsomagolást és futáshosszú kódolást.
Az oszlopcentrikus szegmensek megszüntetése numerikus, dátum- és időadattípusokra, valamint a datetimeoffset adattípusra vonatkozik, amelynek mérete kisebb vagy egyenlő kettőnél. Az SQL Server 2022 -től kezdve (16.x) a szegmensek megszüntetése sztring- és bináris adattípusokra, a uniqueidentifier adattípusra és a kettőnél nagyobb skálázáshoz használt datetimeoffset adattípusra terjed ki. A szegmensek megszüntetése nem vonatkozik a LOB adattípusokra, például a varchar(max), az nvarchar(max) és a varbinary(max). További információ: Az oszlopcentrikus indexek újdonságai.
Permissions
A VIEW DEFINITION nézet engedélyére van szükség. A következő oszlopok akkor térnek vissza NULL , ha a felhasználónak is van SELECT engedélye: has_nulls, base_id, magnitude, min_data_id, max_data_idés null_value.
A katalógusnézetekben a metaadatok láthatósága olyan biztonságos adatokra korlátozódik, amelyek egy felhasználó tulajdonában vannak, vagy amelyeken a felhasználó engedélyt kapott. További információ: Metaadatok láthatóságának konfigurációja.
Példák
A következő lekérdezés információt ad vissza egy oszloptároló index szegmenseiről.
SELECT i.name, p.object_id, p.index_id, i.type_desc,
COUNT(*) AS number_of_segments
FROM sys.column_store_segments AS s
INNER JOIN sys.partitions AS p
ON s.hobt_id = p.hobt_id
INNER JOIN sys.indexes AS i
ON p.object_id = i.object_id
WHERE i.type = 5 OR i.type = 6
GROUP BY i.name, p.object_id, p.index_id, i.type_desc;
Kapcsolódó tartalom
- Oszlopalapú indexek útmutatója
- Teljesítményhangolás rendezett oszlopcentrikus indexekkel
- objektumkatalógus nézetei (Transact-SQL)
- katalógusnézetek (Transact-SQL)
- SQL Server rendszerkatalógusának lekérdezése – gyakori kérdések
- sys.columns (Transact-SQL)
- sys.all_columns (Transact-SQL)
- sys.computed_columns (Transact-SQL)
- sys.column_store_dictionaries (Transact-SQL)