Delen via


Naslaginformatie over rekensysteemtabellen

Belangrijk

Deze systeemtabel bevindt zich in Openbare Preview. Voor toegang tot de tabel moet het schema zijn ingeschakeld in uw system catalogus. Zie Systeemtabelschema's inschakelenvoor meer informatie.

Dit artikel bevat een naslaghandleiding voor de rekensysteemtabellen. U kunt deze tabellen gebruiken om de activiteit en metrieken van algemeen gebruik en taakberekeningen in uw account te bewaken.

  • clusters: legt de configuraties voor berekeningen in uw account vast.
  • node_types: Bevat één record voor elk van de momenteel beschikbare knooppunttypen, inclusief hardwaregegevens.
  • node_timeline: Bevat minuut-per-minuut-records van de metrische gegevens over het gebruik van uw rekenproces.

Clustertabelschema

De clustertabel is een langzaam veranderende dimensietabel die de volledige geschiedenis van rekenconfiguraties in de loop van de tijd bevat voor alle doeleinden en taken.

tabelpad: deze systeemtabel bevindt zich op system.compute.clusters

Kolomnaam Gegevenstype Beschrijving Voorbeeld
account_id tekenreeks Id van het account waarin dit cluster is gemaakt. 23e22ba4-87b9-
4cc2-9770-d10b894b7118
workspace_id tekenreeks Id van de werkruimte waarin dit cluster is gemaakt. 1234567890123456
cluster_id tekenreeks Id van het cluster waaraan deze record is gekoppeld. 0000-123456-crmpt124
cluster_name tekenreeks Door de gebruiker gedefinieerde naam voor het cluster. My cluster
owned_by tekenreeks Gebruikersnaam van de eigenaar van het cluster. Standaard ingesteld op de maker van het cluster, maar kan worden gewijzigd via de Clusters-API. sample_user@email.com
create_time tijdstempel Tijdstempel van de wijziging in deze rekendefinitie. 2023-01-09 11:00:00.000
delete_time tijdstempel Tijdstempel van het moment waarop het cluster is verwijderd. De waarde is null als het cluster niet wordt verwijderd. 2023-01-09 11:00:00.000
driver_node_type tekenreeks Naam van het type besturingsknooppunt. Dit komt overeen met de naam van het exemplaartype van de cloudprovider. Standard_D16s_v3
worker_node_type tekenreeks Naam van werkknooppunttype. Dit komt overeen met de naam van het exemplaartype van de cloudprovider. Standard_D16s_v3
worker_count bigint Aantal werknemers. Alleen gedefinieerd voor clusters met een vaste grootte. 4
min_autoscale_workers bigint Het ingestelde minimumaantal werknemers. Dit veld is alleen geldig voor autoscaling-clusters. 1
max_autoscale_workers bigint Het ingestelde maximum aantal werknemers. Dit veld is alleen geldig voor autoscaling-clusters. 1
auto_termination_minutes bigint De geconfigureerde duur van automatischeterminatie. 120
enable_elastic_disk boolean Status van de inschakeling van automatische schaling voor schijf. true
tags kaart Door de gebruiker gedefinieerde tags voor het cluster (bevat geen standaardtags). {"ResourceClass":"SingleNode"}
cluster_source tekenreeks Hiermee wordt de maker voor het cluster aangegeven: UI, API, JOBenzovoort. UI
init_scripts array Set paden voor init-scripts. "/Users/example@email.com
/files/scripts/install-python-pacakges.sh"
aws_attributes struct SPECIFIEKE AWS-instellingen. null
azure_attributes struct Specifieke Azure-instellingen. {
"first_on_demand": "0",
"availability": "ON_DEMAND_AZURE",
"spot_bid_max_price": "—1"
}
gcp_attributes struct Specifieke GCP-instellingen. Dit veld is leeg. null
driver_instance_pool_id tekenreeks Exemplaargroep-ID als het stuurprogramma is geconfigureerd binnen een exemplaargroep. 1107-555555-crhod16-pool-DIdnjazB
worker_instance_pool_id tekenreeks Exemplaargroep-ID indien de werknemer op een exemplaargroep is geconfigureerd. 1107-555555-crhod16-pool-DIdnjazB
dbr_version tekenreeks De Databricks Runtime van het cluster. 14.x-snapshot-scala2.12
change_time tijdstempel Tijdstempel van wijziging in de berekeningsdefinitie. 2023-01-09 11:00:00.000
change_date datum Datum wijzigen. Wordt gebruikt voor retentie. 2023-01-09

tabelschema voor knooppunttypen

De tabel van het knooppunttype legt de momenteel beschikbare knooppunttypen vast met de basishardwaregegevens.

tabelpad: deze systeemtabel bevindt zich op system.compute.node_types.

Kolomnaam Gegevenstype Beschrijving Voorbeeld
account_id tekenreeks Id van het account waarin dit cluster is gemaakt. 23e22ba4-87b9-4cc2-9770-d10b894b7118
node_type tekenreeks Unieke id voor knooppunttype. Standard_D16s_v3
core_count dubbel Aantal vCPU's voor de instantie. 48.0
memory_mb lang Totaal geheugen voor de instance. 393216
gpu_count lang Aantal GPU's voor de instantie. 0

tijdlijntabelschema voor knooppunten

De tijdlijntabel voor knooppunten legt gegevens over resourcegebruik op knooppuntniveau vast op minuutgranulariteit. Elke record bevat gegevens voor een bepaalde minuut per instantie.

tabelpad: deze systeemtabel bevindt zich op system.compute.node_timeline.

Kolomnaam Gegevenstype Beschrijving Voorbeeld
account_id tekenreeks Id van het account waarop deze rekenresource wordt uitgevoerd. 23e22ba4-87b9-4cc2-9770-d10b894b7118
workspace_id tekenreeks Id van de werkruimte waarop deze rekenresource wordt uitgevoerd. 1234567890123456
cluster_id tekenreeks Id van de rekenresource. 0000-123456-crmpt124
instance_id tekenreeks ID voor de specifieke instantie. i-1234a6c12a2681234
start_time tijdstempel Begintijd voor de record in UTC. 2024-07-16T12:00:00Z
end_time tijdstempel Eindtijd voor de record in UTC. 2024-07-16T13:00:00Z
driver booleaan Of het exemplaar een besturingsknooppunt of werkknooppunt is. true
cpu_user_percent dubbel Percentage tijd dat de CPU in userland heeft besteed. 34.76163817234407
cpu_system_percent dubbel Percentage tijd dat de CPU in de kernel heeft besteed. 1.0895310279488264
cpu_wait_percent dubbel Percentage tijd dat de CPU heeft gewacht op I/O. 0.03445157400629276
mem_used_percent dubbel Percentage van het rekengeheugen dat tijdens de periode is gebruikt (inclusief geheugen dat wordt gebruikt door achtergrondprocessen die op de berekening worden uitgevoerd). 45.34858216779041
mem_swap_percent dubbel Percentage geheugengebruik dat is toegeschreven aan het wisselen van geheugen. 0.014648443087939
network_sent_bytes bigint Het aantal bytes dat wordt verzonden in netwerkverkeer. 517376
network_received_bytes bigint Het aantal ontvangen bytes van netwerkverkeer. 179234
disk_free_bytes_per_mount_point kaart Het schijfgebruik gegroepeerd op koppelpunt. Dit is tijdelijke opslag die alleen is ingericht terwijl de berekening wordt uitgevoerd. {"/var/lib/lxc":123455551234,"/":
123456789123,"/local_disk0":123412341234}
node_type tekenreeks De naam van het knooppunttype. Dit komt overeen met de naam van het exemplaartype van de cloudprovider. Standard_D16s_v3

Bekende beperkingen

  • Rekenresources die gemarkeerd waren als verwijderd vóór 23 oktober 2023, worden niet weergegeven in de clustertabel. Dit kan leiden tot joins uit de system.billing.usage-tabel die niet overeenkomen met de records in de clustertabel. Alle actieve rekenresources zijn weer ingevuld.
  • Deze tabellen bevatten alleen records voor generieke en taakcomputing. Ze bevatten geen records voor serverloze berekeningen, DLT-berekeningen of SQL-warehouses.
  • Knooppunten die minder dan 10 minuten hebben gedraaid, worden mogelijk niet weergegeven in de node_timeline tabel.

Voorbeeldqueries

U kunt de volgende voorbeeldquery's gebruiken om veelgestelde vragen te beantwoorden:

Notitie

Sommige van deze voorbeelden voegen de clustertabel samen met de system.billing.usage tabel. Omdat factureringsrecords regio-overschrijdend en clusterrecords zijn, komen factureringsrecords alleen overeen met clusterrecords voor de regio waarin u een query uitvoert. Als u records uit een andere regio wilt zien, voert u de query in die regio uit.

Clusterrecords koppelen met de meest recente factureringsrecords

Deze query kan u helpen inzicht te hebben in de uitgaven in de loop van de tijd. Zodra u de usage_start_time hebt bijgewerkt naar de meest recente factureringsperiode, worden de laatste updates voor de factureringsgegevens opgehaald om te worden samengevoegd tot clustergegevens.

Elke record is gekoppeld aan de eigenaar van het cluster tijdens die specifieke uitvoering. Dus als de eigenaar van het cluster verandert, worden de kosten doorberekend naar de juiste eigenaar op basis van het gebruiksmoment van het cluster.

SELECT
  u.record_id,
  c.cluster_id,
  c.owned_by,
  c.change_time,
  u.usage_start_time,
  u.usage_quantity
FROM
  system.billing.usage u
  JOIN system.compute.clusters c
  JOIN (SELECT u.record_id, c.cluster_id, max(c.change_time) change_time
    FROM system.billing.usage u
    JOIN system.compute.clusters c
    WHERE
      u.usage_metadata.cluster_id is not null
      and u.usage_start_time >= '2023-01-01'
      and u.usage_metadata.cluster_id = c.cluster_id
      and date_trunc('HOUR', c.change_time) <= date_trunc('HOUR', u.usage_start_time)
    GROUP BY all) config
WHERE
  u.usage_metadata.cluster_id is not null
  and u.usage_start_time >= '2023-01-01'
  and u.usage_metadata.cluster_id = c.cluster_id
  and u.record_id = config.record_id
  and c.cluster_id = config.cluster_id
  and c.change_time = config.change_time
ORDER BY cluster_id, usage_start_time desc;

De rekenresources identificeren met het hoogste gemiddelde gebruik en piekgebruik

Identificeer het rekenproces voor alle doeleinden en taken met het hoogste gemiddelde CPU-gebruik en het hoogste PIEK-CPU-gebruik.

SELECT
        distinct cluster_id,
driver,
avg(cpu_user_percent + cpu_system_percent) as `Avg CPU Utilization`,
max(cpu_user_percent + cpu_system_percent) as `Peak CPU Utilization`,
        avg(cpu_wait_percent) as `Avg CPU Wait`,
        max(cpu_wait_percent) as `Max CPU Wait`,
        avg(mem_used_percent) as `Avg Memory Utilization`,
        max(mem_used_percent) as `Max Memory Utilization`,
avg(network_received_bytes)/(1024^2) as `Avg Network MB Received per Minute`,
avg(network_sent_bytes)/(1024^2) as `Avg Network MB Sent per Minute`
FROM
        node_timeline
WHERE
        start_time >= date_add(now(), -1)
GROUP BY
        cluster_id,
        driver
ORDER BY
        3 desc;