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:Azure Synapse Analytics
Analytics Platform System (PDW)
Fürtözött oszlopcentrikus indexinformációkat biztosít szegmensenként, hogy a rendszergazda rendszerfelügyeleti döntéseket hozzon az Azure Synapse Analyticsben. sys.pdw_nodes_column_store_row_groups tartalmaz egy oszlopot a fizikailag tárolt sorok teljes számához (beleértve a töröltként megjelölt sorokat is), valamint egy oszlopot a töröltként megjelölt sorok számához. A sys.pdw_nodes_column_store_row_groups segítségével megállapíthatja, hogy mely sorcsoportokban van nagy a törölt sorok aránya, és ezeket újra kell létrehozni.
| Oszlop neve | Adattípus | Leírás |
|---|---|---|
| object_id | A mögöttes tábla azonosítója. Ez a számítási csomópont fizikai táblája, nem pedig a Vezérlő csomópont logikai táblájának object_id. A object_id például nem egyezik a sys.tables object_id. A sys.tableshez való csatlakozáshoz használja a sys.pdw_index_mappings. |
|
| index_id | A fürtözött oszlopcentrikus index azonosítója object_id táblában. | |
| partition_number | A sorcsoportot row_group_idtartalmazó táblapartíció azonosítója. A partition_number használatával csatlakoztathatja ezt a DMV-t a sys.partitionshoz. | |
| row_group_id | A sorcsoport azonosítója. Ez a partíción belül egyedi. | |
| delta_store_hobt_id | bigint | A deltasorcsoportok hobt_id vagy NULL érték, ha a sorcsoport típusa nem különbözik. A deltasorcsoport egy olvasási/írási sorcsoport, amely új rekordokat fogad el. A deltasorcsoport OPEN állapotú. A deltasorcsoport továbbra is sortár formátumban van, és nem lett oszlopcentrikus formátumba tömörítve. |
| állapot | apró | A state_description társított azonosítószám. 1 = MEGNYITÁS 2 = ZÁRT 3 = TÖMÖRÍTVE |
| state_description | nvarchar(60) | A sorcsoport állandó állapotának leírása: OPEN – Új rekordokat elfogadó olvasási/írási sorcsoport. A megnyitott sorcsoportok továbbra is sortár formátumban vannak, és nem lettek oszlopcentrikus formátumba tömörítve. ZÁRT – Egy sorcsoport, amely ki van töltve, de még nem tömöríti a rekordátállítási folyamat. TÖMÖRÍTVE – Kitöltött és tömörített sorcsoport. |
| total_rows | bigint | A sorcsoportban fizikailag tárolt összes sor. Előfordulhat, hogy néhányat töröltek, de a rendszer továbbra is tárolja őket. Egy sorcsoport sorainak maximális száma 1 048 576 (hexadecimális FFFFF). |
| deleted_rows | bigint | A törlésre megjelölt sorcsoportban fizikailag tárolt sorok száma. Delta sorcsoportok esetén mindig 0. |
| size_in_bytes | A sorcsoport összes lapjának együttes mérete bájtban. Ez a méret nem tartalmazza a metaadatok vagy megosztott szótárak tárolásához szükséges méretet. | |
| pdw_node_id | Az Azure Synapse Analytics-csomópont egyedi azonosítója. | |
| distribution_id | A disztribúció egyedi azonosítója. |
Megjegyzések
Egy sort ad vissza minden oszlopcentrikus sorcsoporthoz minden olyan táblához, amely fürtözött vagy nemclustered oszlopcentrikus indexet tartalmaz.
A sys.pdw_nodes_column_store_row_groups segítségével meghatározhatja a sorcsoportban szereplő sorok számát és a sorcsoport méretét.
Ha egy sorcsoport törölt sorainak száma a teljes sorok nagy százalékára nő, a táblázat kevésbé lesz hatékony. Építse újra az oszlopcentrikus indexet a tábla méretének csökkentése érdekében, csökkentve a táblázat olvasásához szükséges lemez I/O-értékét. Az oszlopcentrikus index újraépítéséhez használja a
A frissíthető oszloptár először új adatokat szúr be egy OPEN sorcsoportba, amely sortár formátumban van, és más néven deltatáblának is nevezik. Miután megtelt egy nyitott sorcsoport, az állapota ZÁRTlesz. A zárt sorcsoportot oszlopcentrikus formátumba tömöríti a húzó mozgató, és az állapot TÖMÖRÍTETTváltozik. A hullámos mozgatás egy háttérfolyamat, amely rendszeresen felébred, és ellenőrzi, hogy vannak-e olyan zárt sorcsoportok, amelyek készen állnak a tömörítésre egy oszlopcentrikus sorcsoportba. A rekord mozgatása minden olyan sorcsoportot is felszabadít, amelyben minden sor törölve lett. A felszabadított sorcsoportok KIVEZETETTvannak megjelölve. A váltó azonnali futtatásához használja a ALTER INDEX utasítás REORGANIZE beállítását.
Ha egy oszlopcentrikus sorcsoport megtelt, a rendszer tömöríti, és nem fogadja el az új sorokat. Ha a sorok törölve vannak egy tömörített csoportból, azok megmaradnak, de töröltként vannak megjelölve. A tömörített csoportok frissítései a tömörített csoportból való törlésként, valamint egy megnyitott csoportba történő beszúrásként kerülnek implementálásra.
Engedélyek
KISZOLGÁLÓ ÁLLAPOTA engedély szükséges.
Példák: Azure Synapse Analytics and Analytics Platform System (PDW)
Az alábbi példa a sys.pdw_nodes_column_store_row_groups táblát más rendszertáblákhoz illeszti, és adott táblákra vonatkozó információkat ad vissza. A számított PercentFull oszlop a sorcsoport hatékonyságának becslése. Ha egyetlen tábláról szeretne információt keresni, távolítsa el a WHERE záradék előtti megjegyzéskötőjeleket, és adjon meg egy táblanevet.
SELECT IndexMap.object_id,
object_name(IndexMap.object_id) AS LogicalTableName,
i.name AS LogicalIndexName, IndexMap.index_id, NI.type_desc,
IndexMap.physical_name AS PhyIndexNameFromIMap,
CSRowGroups.*,
100*(ISNULL(deleted_rows,0))/total_rows AS PercentDeletedRows
FROM sys.tables AS t
JOIN sys.indexes AS i
ON t.object_id = i.object_id
JOIN sys.pdw_index_mappings AS IndexMap
ON i.object_id = IndexMap.object_id
AND i.index_id = IndexMap.index_id
JOIN sys.pdw_nodes_indexes AS NI
ON IndexMap.physical_name = NI.name
AND IndexMap.index_id = NI.index_id
JOIN sys.pdw_nodes_column_store_row_groups AS CSRowGroups
ON CSRowGroups.object_id = NI.object_id
AND CSRowGroups.pdw_node_id = NI.pdw_node_id
AND CSRowGroups.distribution_id = NI.distribution_id
AND CSRowGroups.index_id = NI.index_id
WHERE total_rows > 0
--WHERE t.name = '<table_name>'
ORDER BY object_name(i.object_id), i.name, IndexMap.physical_name, pdw_node_id;
Az alábbi Azure Synapse Analytics-példa megszámolja a fürtözött oszloptárolók partíciónkénti sorait, valamint azt, hogy hány sor van nyitott, zárt vagy tömörített sorcsoportokban:
SELECT
s.name AS [Schema Name]
,t.name AS [Table Name]
,rg.partition_number AS [Partition Number]
,SUM(rg.total_rows) AS [Total Rows]
,SUM(CASE WHEN rg.State = 1 THEN rg.Total_rows Else 0 END) AS [Rows in OPEN Row Groups]
,SUM(CASE WHEN rg.State = 2 THEN rg.Total_Rows ELSE 0 END) AS [Rows in Closed Row Groups]
,SUM(CASE WHEN rg.State = 3 THEN rg.Total_Rows ELSE 0 END) AS [Rows in COMPRESSED Row Groups]
FROM sys.pdw_nodes_column_store_row_groups rg
JOIN sys.pdw_nodes_tables pt
ON rg.object_id = pt.object_id
AND rg.pdw_node_id = pt.pdw_node_id
AND pt.distribution_id = rg.distribution_id
JOIN sys.pdw_table_mappings tm
ON pt.name = tm.physical_name
INNER JOIN sys.tables t
ON tm.object_id = t.object_id
INNER JOIN sys.schemas s
ON t.schema_id = s.schema_id
GROUP BY s.name, t.name, rg.partition_number
ORDER BY 1, 2
Lásd még:
Azure Synapse Analytics és párhuzamos adattárház-katalógusnézetek
CREATE COLUMNSTORE INDEX (Transact-SQL)
sys.pdw_nodes_column_store_segments (Transact-SQL)
sys.pdw_nodes_column_store_dictionaries (Transact-SQL)