sys.pdw_nodes_pdw_physical_databases (Transact-SQL)

Gäller för:Analytics Platform System (PDW)

Innehåller en rad för varje fysisk databas på en beräkningsnod. Samla fysisk databasinformation för att få detaljerad information om databaser. För att kombinera information, koppla ihop med sys.pdw_nodes_pdw_physical_databasessys.pdw_database_mappings och sys.databases tabellerna.

Kolumnnamn Datatyp Description
database_id int Objekt-ID:t för databasen. Observera att detta värde inte är samma som en database_id i sys.databases (Transact-SQL) -vyn.
physical_name sysname Det fysiska namnet på databasen på Shell/Compute-noderna. Detta värde är samma som ett värde i kolumnen physical_name i sys.pdw_database_mappings (Transact-SQL) -vyn.
pdw_node_id int Unikt numeriskt ID som är associerat med noden.

Exempel: Analysplattformssystem (PDW)

A. Återvänder

Följande fråga returnerar namn och ID för varje databas i master, samt motsvarande databasnamn på varje beräkningsnod.

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. Att använda sys.pdw_nodes_pdw_physical_databases för att samla detaljerad objektinformation

Följande fråga visar information om index och inkluderar användbar information om databasen. Objekten tillhör objekt i databasen.

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. Att använda sys.pdw_nodes_pdw_physical_databases för att bestämma krypteringstillståndet

Följande fråga ger krypteringstillstånd för AdventureWorksPDW2012-databasen.

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;