sys.pdw_nodes_pdw_physical_databases (Transact-SQL)
Gilt für: Analytics Platform System (PDW)
Enthält eine Zeile für jede physische Datenbank auf einem Computeknoten. Aggregieren Sie physische Datenbankinformationen, um detaillierte Informationen zu Datenbanken zu erhalten. Um Informationen zu kombinieren, verknüpfen Sie die Und-Tabellen.To combine information, join the sys.pdw_nodes_pdw_physical_databases
to the sys.pdw_database_mappings
and sys.databases
tables.
Spaltenname | Datentyp | Beschreibung |
---|---|---|
database_id | int | Die Objekt-ID für die Datenbank. Beachten Sie, dass dieser Wert nicht mit einem database_id in der Ansicht sys.databases (Transact-SQL) übereinstimmt. |
physical_name | sysname | Der physische Name für die Datenbank auf den Shell-/Computeknoten. Dieser Wert ist identisch mit einem Wert in der Spalte physical_name in der Ansicht sys.pdw_database_mappings (Transact-SQL). |
pdw_node_id | int | Eindeutige numerische ID, die dem Knoten zugeordnet ist. |
Beispiele: Analytics-Plattformsystem (PDW)
A. Retournierend
Die folgende Abfrage gibt den Namen und die ID jeder Datenbank im Master und den entsprechenden Datenbanknamen für jeden Berechnungsknoten zurück.
SELECT D.database_id AS DBID_in_master, D.name AS UserDatabaseName,
PD.pdw_node_id AS NodeID, DM.physical_name AS PhysDBName
FROM sys.databases AS D
JOIN sys.pdw_database_mappings AS DM
ON D.database_id = DM.database_id
JOIN sys.pdw_nodes_pdw_physical_databases AS PD
ON DM.physical_name = PD.physical_name
ORDER BY D.database_id, PD.pdw_node_ID;
B. Verwenden von sys.pdw_nodes_pdw_physical_databases zum Sammeln detaillierter Objektinformationen
Die folgende Abfrage zeigt Informationen zu Indizes und enthält nützliche Informationen zur Datenbank, die den Objekten in der Datenbank angehören.
SELECT D.name AS UserDatabaseName, D.database_id AS DBIDinMaster,
DM.physical_name AS PhysDBName, PD.pdw_node_id AS NodeID,
IU.object_id, IU.index_id, IU.user_seeks, IU.user_scans, IU.user_lookups, IU.user_updates
FROM sys.databases AS D
JOIN sys.pdw_database_mappings AS DM
ON D.database_id = DM.database_id
JOIN sys.pdw_nodes_pdw_physical_databases AS PD
ON DM.physical_name = PD.physical_name
JOIN sys.dm_pdw_nodes_db_index_usage_stats AS IU
ON PD.database_id = IU.database_id
ORDER BY D.database_id, IU.object_id, IU.index_id, PD.pdw_node_ID;
C. Verwenden von sys.pdw_nodes_pdw_physical_databases zum Ermitteln des Verschlüsselungszustands
Die folgende Abfrage stellt den Verschlüsselungsstatus der AdventureWorksPDW2012-Datenbank bereit.
WITH dek_encryption_state AS
(
SELECT ISNULL(db_map.database_id, dek.database_id) AS database_id, encryption_state
FROM sys.dm_pdw_nodes_database_encryption_keys AS dek
INNER JOIN sys.pdw_nodes_pdw_physical_databases AS node_db_map
ON dek.database_id = node_db_map.database_id AND dek.pdw_node_id = node_db_map.pdw_node_id
LEFT JOIN sys.pdw_database_mappings AS db_map
ON node_db_map .physical_name = db_map.physical_name
INNER JOIN sys.dm_pdw_nodes AS nodes
ON nodes.pdw_node_id = dek.pdw_node_id
WHERE dek.encryptor_thumbprint <> 0x
)
SELECT TOP 1 encryption_state
FROM dek_encryption_state
WHERE dek_encryption_state.database_id = DB_ID('AdventureWorksPDW2012 ')
ORDER BY (CASE encryption_state WHEN 3 THEN -1 ELSE encryption_state END) DESC;
Weitere Informationen
Katalogsichten von Azure Synapse Analytics und Parallel Data Warehouse Catalog
sys.databases (Transact-SQL)
sys.pdw_database_mappings (Transact-SQL)