Aller au contenu principal

Référence des tables système compute

Cet article vous fournit un guide de référence pour les tables système de compute. Vous pouvez utiliser ces tables pour surveiller l'activité et les métriques du compute polyvalent classique, du compute de Jobs, et du compute de Lakeflow Pipelines dans votre compte. Ces tables de compute classiques incluent :

  • clusters: Enregistre les configurations compute dans votre compte.
  • node_types: Inclut un enregistrement unique pour chacun des types de nœuds actuellement disponibles, y compris les informations matérielles.
  • node_timeline: Inclut des enregistrements minute par minute des métriques d'utilisation de votre compute.
  • instance_events: Capture les transitions d'état des instances de compute classiques.
  • instance_pools: enregistre les configurations de pool d'instances dans votre compte.

Schéma de table de cluster

La table de cluster est une table de dimension à évolution lente qui contient l'historique complet des configurations de compute au fil du temps pour le compute à usage général, le compute de Jobs, le compute de LakeFlow Pipelines et le compute de maintenance de pipelines.

Chemin de la table : Cette table système se trouve à l'adresse suivante : system.compute.clusters

Nom de colonne

Type de données

Description

Exemple

account_id

chaîne

ID du compte où ce cluster a été créé.

23e22ba4-87b9- 4cc2-9770-d10b894b7118

workspace_id

chaîne

ID du workspace où ce cluster a été créé.

1234567890123456

cluster_id

chaîne

ID du cluster auquel cet enregistrement est associé.

0000-123456-xxxxxxxx

cluster_name

chaîne

Nom défini par l'utilisateur pour le cluster.

My cluster

owned_by

chaîne

Nom d'utilisateur du propriétaire du cluster. Par default, il s'agit du créateur du cluster, mais cela peut être modifié via l'API Clusters.

sample_user@email.com

create_time

Horodatage

Timestamp de la modification apportée à cette définition de compute.

2023-01-09 11:00:00.000

delete_time

Horodatage

Timestamp de la suppression du cluster. La valeur est null si le cluster n'est pas supprimé.

2023-01-09 11:00:00.000

driver_node_type

chaîne

Nom du type de nœud Driver. Cela correspond au nom du type d'instance du fournisseur cloud. Pour le compute qui utilise des types d'instances AWS Fleet, il s'agit du nom du type d'instance Fleet (par exemple, rd-fleet.4xlarge), qui ne correspond pas à un seul type d'instance de fournisseur cloud.

i3.xlarge

worker_node_type

chaîne

Nom du type de nœud Worker. Cela correspond au nom du type d'instance du fournisseur cloud. Pour le compute qui utilise des types d'instances AWS Fleet, il s'agit du nom du type d'instance Fleet (par exemple, rd-fleet.4xlarge), qui ne correspond pas à un seul type d'instance de fournisseur cloud.

i3.xlarge

worker_count

bigint

Nombre de workers. Défini uniquement pour les clusters à taille fixe.

4

min_autoscale_workers

bigint

Le nombre minimum de Worker défini. Ce champ n'est valide que pour les clusters à dimensionnement automatique.

1

max_autoscale_workers

bigint

Le nombre maximum défini de Workers. Ce champ n'est valide que pour les clusters à dimensionnement automatique.

1

auto_termination_minutes

bigint

La durée d'arrêt automatique configurée.

120

enable_elastic_disk

booléen

Statut d'activation du disque à mise à l'échelle automatique.

true

tags

Carte

Tags définis par l'utilisateur pour le cluster (n'inclut pas les tags default).

{"ResourceClass":"SingleNode"}

cluster_source

chaîne

Source du cluster. Les valeurs UI ou API s'appliquent uniquement au compute. Tout le Job compute est journalisé sous le nom JOB. Les pipelines sont PIPELINE ou PIPELINE_MAINTENANCE.

UI

init_scripts

tableau

Ensemble de chemins d'accès pour les scripts d'initialisation.

"/Users/example@email.com /files/scripts/install-python-pacakges.sh"

aws_attributes

structure

Paramètres spécifiques à AWS.

{ "ebs_volume_count": null, "availability": "SPOT_WITH_FALLBACK", "first_on_demand": "0", "spot_bid_price_percent": "100" }

azure_attributes

structure

Paramètres spécifiques à Azure.

null

gcp_attributes

structure

Paramètres spécifiques à GCP. Ce champ sera vide.

null

driver_instance_pool_id

chaîne

ID du Pool d'instances si le Driver est configuré au-dessus d'un Pool d'instances.

1107-555555-crhod16-pool-DIdnjazB

worker_instance_pool_id

chaîne

ID du Pool d'Instances si le Worker est configuré sur un pool d'instances.

1107-555555-crhod16-pool-DIdnjazB

dbr_version

chaîne

Le Databricks Runtime du cluster.

14.x-snapshot-scala2.12

change_time

Horodatage

Timestamp de la modification de la définition du compute.

2023-01-09 11:00:00.000

change_date

Date

Modifier la date. Utilisé pour la rétention.

2023-01-09

data_security_mode

chaîne

Le mode d’accès de la ressource compute. Voir la référence du mode d'accès.

USER_ISOLATION

policy_id

chaîne

ID de la politique de compute du cluster, le cas échéant.

1234F35636110A5B

Nom de colonne

Type de données

Description

Exemple

account_id

chaîne

ID du compte où ce cluster a été créé.

23e22ba4-87b9- 4cc2-9770-d10b894b7118

workspace_id

chaîne

ID du workspace où ce cluster a été créé.

1234567890123456

cluster_id

chaîne

ID du cluster auquel cet enregistrement est associé.

0000-123456-xxxxxxxx

cluster_name

chaîne

Nom défini par l'utilisateur pour le cluster.

My cluster

owned_by

chaîne

Nom d'utilisateur du propriétaire du cluster. Par default, il s'agit du créateur du cluster, mais cela peut être modifié via l'API Clusters.

sample_user@email.com

create_time

Horodatage

Timestamp de la modification apportée à cette définition de compute.

2023-01-09 11:00:00.000

delete_time

Horodatage

Timestamp de la suppression du cluster. La valeur est null si le cluster n'est pas supprimé.

2023-01-09 11:00:00.000

driver_node_type

chaîne

Nom du type de nœud Driver. Cela correspond au nom du type d'instance du fournisseur cloud. Pour le compute qui utilise des types d'instances AWS Fleet, il s'agit du nom du type d'instance Fleet (par exemple, rd-fleet.4xlarge), qui ne correspond pas à un seul type d'instance de fournisseur cloud.

i3.xlarge

worker_node_type

chaîne

Nom du type de nœud Worker. Cela correspond au nom du type d'instance du fournisseur cloud. Pour le compute qui utilise des types d'instances AWS Fleet, il s'agit du nom du type d'instance Fleet (par exemple, rd-fleet.4xlarge), qui ne correspond pas à un seul type d'instance de fournisseur cloud.

i3.xlarge

worker_count

bigint

Nombre de workers. Défini uniquement pour les clusters à taille fixe.

4

min_autoscale_workers

bigint

Le nombre minimum de Worker défini. Ce champ n'est valide que pour les clusters à dimensionnement automatique.

1

max_autoscale_workers

bigint

Le nombre maximum défini de Workers. Ce champ n'est valide que pour les clusters à dimensionnement automatique.

1

auto_termination_minutes

bigint

La durée d'arrêt automatique configurée.

120

enable_elastic_disk

booléen

Statut d'activation du disque à mise à l'échelle automatique.

true

tags

Carte

Tags définis par l'utilisateur pour le cluster (n'inclut pas les tags default).

{"ResourceClass":"SingleNode"}

cluster_source

chaîne

Source du cluster. Les valeurs UI ou API s'appliquent uniquement au compute. Tout le Job compute est journalisé sous le nom JOB. Les pipelines sont PIPELINE ou PIPELINE_MAINTENANCE.

UI

init_scripts

tableau

Ensemble de chemins d'accès pour les scripts d'initialisation.

"/Users/example@email.com /files/scripts/install-python-pacakges.sh"

aws_attributes

structure

Paramètres spécifiques à AWS.

{ "ebs_volume_count": null, "availability": "SPOT_WITH_FALLBACK", "first_on_demand": "0", "spot_bid_price_percent": "100" }

azure_attributes

structure

Paramètres spécifiques à Azure.

null

gcp_attributes

structure

Paramètres spécifiques à GCP. Ce champ sera vide.

null

driver_instance_pool_id

chaîne

ID du Pool d'instances si le Driver est configuré au-dessus d'un Pool d'instances.

1107-555555-crhod16-pool-DIdnjazB

worker_instance_pool_id

chaîne

ID du Pool d'Instances si le Worker est configuré sur un pool d'instances.

1107-555555-crhod16-pool-DIdnjazB

dbr_version

chaîne

Le Databricks Runtime du cluster.

14.x-snapshot-scala2.12

change_time

Horodatage

Timestamp de la modification de la définition du compute.

2023-01-09 11:00:00.000

change_date

Date

Modifier la date. Utilisé pour la rétention.

2023-01-09

data_security_mode

chaîne

Le mode d’accès de la ressource compute. Voir la référence du mode d'accès.

USER_ISOLATION

policy_id

chaîne

ID de la politique de compute du cluster, le cas échéant.

1234F35636110A5B

Référence du mode d'accès

Le tableau suivant traduit les valeurs possibles contenues dans la colonne data_security_mode. La colonne peut également être null pour certains pipelines et clusters créés par le système.

Valeur

Mode d’accès

USER_ISOLATION

Standard

SINGLE_USER

Dédié

Valeur

Mode d’accès

USER_ISOLATION

Standard

SINGLE_USER

Dédié

Les modes d'accès hérités sont enregistrés avec les valeurs suivantes :

Valeur

Mode d’accès

LEGACY_PASSTHROUGH

Transmission des identifiants (partagés)

LEGACY_SINGLE_USER

Transmission des identifiants (utilisateur unique)

LEGACY_TABLE_ACL

Personnalisé

NONE

Pas d'isolation partagée

Valeur

Mode d’accès

LEGACY_PASSTHROUGH

Transmission des identifiants (partagés)

LEGACY_SINGLE_USER

Transmission des identifiants (utilisateur unique)

LEGACY_TABLE_ACL

Personnalisé

NONE

Pas d'isolation partagée

Schéma de table des types de nœuds

La table des types de nœuds recense les types de nœuds actuellement disponibles avec leurs informations matérielles de base.

**Chemin de la table** : Cette table système est située system.compute.node_types à.

Nom de colonne

Type de données

Description

Exemple

account_id

chaîne

ID du compte où ce cluster a été créé.

23e22ba4-87b9-4cc2-9770-d10b894b7118

node_type

chaîne

Identifiant unique pour le type de nœud.

i3.xlarge

core_count

double

Nombre de vCPU pour l'instance.

48.0

memory_mb

long

Mémoire totale pour l'instance.

393216

gpu_count

long

Nombre de GPU pour l’instance.

0

Nom de colonne

Type de données

Description

Exemple

account_id

chaîne

ID du compte où ce cluster a été créé.

23e22ba4-87b9-4cc2-9770-d10b894b7118

node_type

chaîne

Identifiant unique pour le type de nœud.

i3.xlarge

core_count

double

Nombre de vCPU pour l'instance.

48.0

memory_mb

long

Mémoire totale pour l'instance.

393216

gpu_count

long

Nombre de GPU pour l’instance.

0

Schéma de la table de chronologie des nœuds

Le tableau chronologique des nœuds capture les données d'utilisation des Ressources au niveau des nœuds à la granularité de la minute. Chaque enregistrement contient des données pour une minute donnée par instance. Ce tableau capture les chronologies des nœuds pour le compute à usage général, le compute de Job, le compute des LakeFlow Pipelines et les Ressources de compute de maintenance des pipelines de votre compte.

**Chemin de la table** : Cette table système est située system.compute.node_timeline à.

Nom de colonne

Type de données

Description

Exemple

account_id

chaîne

ID du compte où cette ressource de compute est en cours d'exécution.

23e22ba4-87b9-4cc2-9770-d10b894b7118

workspace_id

chaîne

ID du Workspace où cette ressource de compute est exécutée.

1234567890123456

cluster_id

chaîne

ID de la ressource de compute.

0000-123456-crmpt124

instance_id

chaîne

ID de l'instance spécifique.

i-1234a6c12a2681234

start_time

Horodatage

Heure de start de l'enregistrement en UTC.

2024-07-16T12:00:00Z

end_time

Horodatage

Heure de fin de l'enregistrement en UTC.

2024-07-16T13:00:00Z

driver

booléen

Si l'instance est un nœud driver ou worker.

true

cpu_user_percent

double

Pourcentage de temps que le processeur a passé en mode utilisateur.

34.76163817234407

cpu_system_percent

double

Pourcentage du temps passé par le CPU dans le noyau.

1.0895310279488264

cpu_wait_percent

double

Pourcentage de temps que le CPU a passé à attendre les E/S.

0.03445157400629276

mem_used_percent

double

Pourcentage de la mémoire du compute qui a été utilisé pendant la période (y compris la mémoire utilisée par les processus d'arrière-plan s'exécutant sur le compute).

45.34858216779041

mem_swap_percent

double

Pourcentage d'utilisation de la mémoire attribué à la mémoire swap.

0.014648443087939

network_sent_bytes

bigint

Le nombre d'octets envoyés dans le trafic réseau.

517376

network_received_bytes

bigint

Le nombre d'octets reçus du trafic réseau.

179234

disk_free_bytes_per_mount_point

Carte

L'utilisation du disque regroupée par point de montage. Il s'agit d'un stockage éphémère provisionné uniquement pendant l'exécution du compute.

{"/var/lib/lxc":123455551234,"/": 123456789123,"/local_disk0":123412341234}

node_type

chaîne

Le nom du type de nœud. Cela correspond au nom du type d'instance du fournisseur cloud.

i3.xlarge

private_ip

chaîne

L'adresse IP privée attribuée au nœud.

10.0.0.42

Nom de colonne

Type de données

Description

Exemple

account_id

chaîne

ID du compte où cette ressource de compute est en cours d'exécution.

23e22ba4-87b9-4cc2-9770-d10b894b7118

workspace_id

chaîne

ID du Workspace où cette ressource de compute est exécutée.

1234567890123456

cluster_id

chaîne

ID de la ressource de compute.

0000-123456-crmpt124

instance_id

chaîne

ID de l'instance spécifique.

i-1234a6c12a2681234

start_time

Horodatage

Heure de start de l'enregistrement en UTC.

2024-07-16T12:00:00Z

end_time

Horodatage

Heure de fin de l'enregistrement en UTC.

2024-07-16T13:00:00Z

driver

booléen

Si l'instance est un nœud driver ou worker.

true

cpu_user_percent

double

Pourcentage de temps que le processeur a passé en mode utilisateur.

34.76163817234407

cpu_system_percent

double

Pourcentage du temps passé par le CPU dans le noyau.

1.0895310279488264

cpu_wait_percent

double

Pourcentage de temps que le CPU a passé à attendre les E/S.

0.03445157400629276

mem_used_percent

double

Pourcentage de la mémoire du compute qui a été utilisé pendant la période (y compris la mémoire utilisée par les processus d'arrière-plan s'exécutant sur le compute).

45.34858216779041

mem_swap_percent

double

Pourcentage d'utilisation de la mémoire attribué à la mémoire swap.

0.014648443087939

network_sent_bytes

bigint

Le nombre d'octets envoyés dans le trafic réseau.

517376

network_received_bytes

bigint

Le nombre d'octets reçus du trafic réseau.

179234

disk_free_bytes_per_mount_point

Carte

L'utilisation du disque regroupée par point de montage. Il s'agit d'un stockage éphémère provisionné uniquement pendant l'exécution du compute.

{"/var/lib/lxc":123455551234,"/": 123456789123,"/local_disk0":123412341234}

node_type

chaîne

Le nom du type de nœud. Cela correspond au nom du type d'instance du fournisseur cloud.

i3.xlarge

private_ip

chaîne

L'adresse IP privée attribuée au nœud.

10.0.0.42

Pour le compute qui utilise les types d'instances de flotte AWS, la valeur node_type est le nom du type d'instance de flotte (par exemple, rd-fleet.4xlarge), qui ne correspond pas à un seul type d'instance de fournisseur de cloud.

Schéma de la table d'événements d'instance

info

Aperçu

Cette table système est en aperçu public.

La table d'événements d'instance capture les transitions d'état des instances de compute classiques. Chaque ligne représente un changement d'état pour une seule instance. Ce tableau inclut les enregistrements pour le compute universel, le compute de Job et le compute de LakeFlow Pipelines de tous les Workspaces de votre compte déployés dans la même région de cloud.

**Chemin de la table** : Cette table système est située system.compute.instance_events à.

Nom de colonne

Type de données

Description

Exemple

account_id

chaîne

ID du compte où cette instance est lancée.

23e22ba4-87b9- 4cc2-9770-d10b894b7118

workspace_id

chaîne

ID du Workspace où cette instance est lancée.

1234567890123456

instance_id

chaîne

ID de l'instance.

i-0a1b2c3d4e5f67890

event_time

Horodatage

Timestamp de l'événement.

2024-01-15 10:30:00.000

event_type

chaîne

Type d'événement. Les valeurs possibles sont INSTANCE_LAUNCHING et STATE_TRANSITION.

STATE_TRANSITION

instance_pool_id

chaîne

ID de pool d'instances si l'instance appartient à un pool.

1107-555555-pool-abcd1234

cluster_id

chaîne

ID du cluster sur lequel cette instance est placée. Renseigné uniquement lorsque state est INSTANCE_PLACED. Voir les détails cluster_id.

0000-123456-xxxxxxxx

node_type

chaîne

Le nom du type de nœud. Cela correspond au nom du type d'instance du fournisseur cloud.

i3.xlarge

state

chaîne

État d'instance. Consultez les états d'instance.

INSTANCE_PLACED

availability_type

chaîne

Type de disponibilité de l'instance. Les valeurs possibles sont ON_DEMAND et SPOT (AWS, Azure) ou ON_DEMAND et PREEMPTIBLE (GCP).

ON_DEMAND

Nom de colonne

Type de données

Description

Exemple

account_id

chaîne

ID du compte où cette instance est lancée.

23e22ba4-87b9- 4cc2-9770-d10b894b7118

workspace_id

chaîne

ID du Workspace où cette instance est lancée.

1234567890123456

instance_id

chaîne

ID de l'instance.

i-0a1b2c3d4e5f67890

event_time

Horodatage

Timestamp de l'événement.

2024-01-15 10:30:00.000

event_type

chaîne

Type d'événement. Les valeurs possibles sont INSTANCE_LAUNCHING et STATE_TRANSITION.

STATE_TRANSITION

instance_pool_id

chaîne

ID de pool d'instances si l'instance appartient à un pool.

1107-555555-pool-abcd1234

cluster_id

chaîne

ID du cluster sur lequel cette instance est placée. Renseigné uniquement lorsque state est INSTANCE_PLACED. Voir les détails cluster_id.

0000-123456-xxxxxxxx

node_type

chaîne

Le nom du type de nœud. Cela correspond au nom du type d'instance du fournisseur cloud.

i3.xlarge

state

chaîne

État d'instance. Consultez les états d'instance.

INSTANCE_PLACED

availability_type

chaîne

Type de disponibilité de l'instance. Les valeurs possibles sont ON_DEMAND et SPOT (AWS, Azure) ou ON_DEMAND et PREEMPTIBLE (GCP).

ON_DEMAND

Pour le compute qui utilise les types d'instances de flotte AWS, la valeur node_type est le nom du type d'instance de flotte (par exemple, rd-fleet.4xlarge), qui ne correspond pas à un seul type d'instance de fournisseur de cloud.

États des instances

  • INSTANCE_LAUNCHING: L'instance est en cours d'initialisation.
  • INSTANCE_READY: L'instance est entièrement initialisée et prête à être utilisée, mais pas actuellement en cours d'utilisation.
  • INSTANCE_PLACED: L'instance est actuellement utilisée (connectée à un cluster).
  • INSTANCE_TERMINATED: L'instance est arrêtée.

Quand cluster_id est-il rempli ?

Le champ cluster_id est renseigné uniquement lorsque l'instance est à l'état INSTANCE_PLACED. Pour tous les autres états (INSTANCE_LAUNCHING, INSTANCE_READY, INSTANCE_TERMINATED), cluster_id est null. Ce comportement est cohérent pour les instances avec pool et sans pool.

La table instance_events inclut uniquement les événements de placement pour le compute polyvalent, les Job et le compute des LakeFlow Pipelines. Les événements de placement pour d’autres charges de travail, telles que les SQL Warehouse, ne sont pas inclus dans ce tableau.

Schéma de la table des pools d'instances

info

Aperçu

Cette table système est en aperçu public.

La table des pools d'instances est une table de dimensions à évolution lente qui contient l'historique complet des configurations de pool d'instances au fil du temps. Lorsqu'une configuration change, une nouvelle ligne est émise, remplaçant logiquement la précédente.

**Chemin de la table** : Cette table système est située system.compute.instance_pools à.

Nom de colonne

Type de données

Description

Exemple

account_id

chaîne

ID du compte où ce pool d'instances a été créé.

23e22ba4-87b9- 4cc2-9770-d10b894b7118

workspace_id

chaîne

ID du workspace où ce Pool d'instances a été créé.

1234567890123456

instance_pool_id

chaîne

ID du pool d'instances.

1107-555555-pool-abcd1234

change_time

Horodatage

Timestamp de la modification de la configuration du pool d'instances.

2024-01-15 10:30:00.000

create_time

Horodatage

Timestamp de la création du Pool d'instances.

2024-01-10 08:00:00.000

delete_time

Horodatage

Timestamp de suppression du pool d'instances. La valeur est null si le Pool d'instances n'est pas supprimé.

null

instance_pool_name

chaîne

Nom défini par l'utilisateur du Pool d'instances.

My instance pool

tags

Carte

Tags définis par l’utilisateur pour le Pool d’instances (n’inclut pas les tags par default).

{"team":"data-engineering"}

node_type

chaîne

Type de nœud utilisé pour les instances dans le Pool. Cela correspond au nom du type d'instance du fournisseur cloud. Pour le compute qui utilise des types d'instances AWS Fleet, il s'agit du nom du type d'instance Fleet (par exemple, rd-fleet.4xlarge), qui ne correspond pas à un seul type d'instance de fournisseur cloud.

i3.xlarge

idle_instance_autotermination_minutes

bigint

Le nombre de minutes après lesquelles les instances inactives du cache du pool sont arrêtées automatiquement après être restées inactives.

120

min_idle_instances

bigint

Nombre minimal d'instances inactives à conserver dans le Pool d'instances.

2

max_capacity

bigint

Nombre maximal d'instances en attente à conserver dans le pool, y compris les instances utilisées par les clusters et les instances inactives.

10

enable_elastic_disk

booléen

Mise à l'échelle automatique du stockage local : lorsque activées, les instances de ce Pool acquièrent dynamiquement de l'espace disque supplémentaire lorsque les Worker Spark manquent d'espace disque.

true

disk_spec

structure

La spécification des disques qui sont attachés à tous les conteneurs Spark.

{ "disk_type": "GENERAL_PURPOSE_SSD", "disk_count": 2, "disk_size": 100 }

preloaded_docker_images

tableau

Images Docker personnalisées préchargées sur le Pool.

[]

preloaded_spark_version

chaîne

Version d'image Spark préchargée pour le Pool, si défini.

14.3.x-scala2.12

aws_attributes

structure

Attributs liés aux pools d'instances s'exécutant sur AWS.

{ "availability": "ON_DEMAND", "zone_id": "us-west-2a", "spot_bid_price_percent": 100 }

azure_attributes

structure

Attributs liés aux Pools d'instances exécutés sur Azure.

null

gcp_attributes

structure

Attributs liés aux pools d'instances s'exécutant sur GCP.

null

Nom de colonne

Type de données

Description

Exemple

account_id

chaîne

ID du compte où ce pool d'instances a été créé.

23e22ba4-87b9- 4cc2-9770-d10b894b7118

workspace_id

chaîne

ID du workspace où ce Pool d'instances a été créé.

1234567890123456

instance_pool_id

chaîne

ID du pool d'instances.

1107-555555-pool-abcd1234

change_time

Horodatage

Timestamp de la modification de la configuration du pool d'instances.

2024-01-15 10:30:00.000

create_time

Horodatage

Timestamp de la création du Pool d'instances.

2024-01-10 08:00:00.000

delete_time

Horodatage

Timestamp de suppression du pool d'instances. La valeur est null si le Pool d'instances n'est pas supprimé.

null

instance_pool_name

chaîne

Nom défini par l'utilisateur du Pool d'instances.

My instance pool

tags

Carte

Tags définis par l’utilisateur pour le Pool d’instances (n’inclut pas les tags par default).

{"team":"data-engineering"}

node_type

chaîne

Type de nœud utilisé pour les instances dans le Pool. Cela correspond au nom du type d'instance du fournisseur cloud. Pour le compute qui utilise des types d'instances AWS Fleet, il s'agit du nom du type d'instance Fleet (par exemple, rd-fleet.4xlarge), qui ne correspond pas à un seul type d'instance de fournisseur cloud.

i3.xlarge

idle_instance_autotermination_minutes

bigint

Le nombre de minutes après lesquelles les instances inactives du cache du pool sont arrêtées automatiquement après être restées inactives.

120

min_idle_instances

bigint

Nombre minimal d'instances inactives à conserver dans le Pool d'instances.

2

max_capacity

bigint

Nombre maximal d'instances en attente à conserver dans le pool, y compris les instances utilisées par les clusters et les instances inactives.

10

enable_elastic_disk

booléen

Mise à l'échelle automatique du stockage local : lorsque activées, les instances de ce Pool acquièrent dynamiquement de l'espace disque supplémentaire lorsque les Worker Spark manquent d'espace disque.

true

disk_spec

structure

La spécification des disques qui sont attachés à tous les conteneurs Spark.

{ "disk_type": "GENERAL_PURPOSE_SSD", "disk_count": 2, "disk_size": 100 }

preloaded_docker_images

tableau

Images Docker personnalisées préchargées sur le Pool.

[]

preloaded_spark_version

chaîne

Version d'image Spark préchargée pour le Pool, si défini.

14.3.x-scala2.12

aws_attributes

structure

Attributs liés aux pools d'instances s'exécutant sur AWS.

{ "availability": "ON_DEMAND", "zone_id": "us-west-2a", "spot_bid_price_percent": 100 }

azure_attributes

structure

Attributs liés aux Pools d'instances exécutés sur Azure.

null

gcp_attributes

structure

Attributs liés aux pools d'instances s'exécutant sur GCP.

null

Limitations connues

  • Les ressources compute qui ont été marquées comme supprimées avant le 23.10.2023 n'apparaissent pas dans le tableau des clusters. Cela pourrait entraîner des jointures de la table system.billing.usage ne correspondant pas aux enregistrements dans la table des clusters. Toutes les ressources compute actives ont été rattrapées.
  • Ces tables incluent uniquement les enregistrements pour le compute polyvalent et les jobs. Elles ne contiennent pas d'enregistrements pour le compute Serverless ou les SQL Warehouse.
  • Les nœuds qui ont fonctionné pendant moins de 10 minutes pourraient ne pas apparaître dans le tableau node_timeline.

Exemples de query

Vous pouvez utiliser les requêtes d’échantillon suivantes pour répondre aux questions courantes :

remarque

Certains de ces exemples joignent la table des clusters à la table system.billing.usage. Étant donné que les enregistrements de facturation sont interrégionaux et que les enregistrements de clusters sont spécifiques à la région, les enregistrements de facturation ne correspondent aux enregistrements de clusters que pour la région dans laquelle vous effectuez la query. Pour afficher les enregistrements d'une autre région, veuillez exécuter la query dans cette région.

Associez les enregistrements de clusters aux enregistrements de facturation les plus récents.

Cette query peut vous aider à comprendre les dépenses au fil du temps. Une fois que vous mettez à jour le usage_start_time à la période de facturation la plus actuelle, il récupère les mises à jour les plus récentes des enregistrements de facturation pour les joindre aux données des clusters.

Chaque enregistrement est associé au propriétaire du cluster pendant cette exécution particulière. Ainsi, si le propriétaire du cluster change, les coûts seront attribués au propriétaire correct en fonction du moment où le cluster a été utilisé.

SQL
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;

Identifiez les ressources compute avec l'utilisation moyenne la plus élevée et l'utilisation maximale.

Identifiez le compute polyvalent et les jobs de compute qui ont l'utilisation moyenne du CPU la plus élevée et l'utilisation maximale du CPU la plus élevée.

SQL
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;

Obtenir la version la plus récente de chaque pool d'instances

La table instance_pools est de type SCD2, où au lieu de mettre à jour les enregistrements existants, un nouvel enregistrement est créé chaque fois qu'une modification est apportée. Pour obtenir la version la plus récente, prenez l'entrée avec la plus grande change_time.

SQL
SELECT *
FROM system.compute.instance_pools
QUALIFY row_number() OVER (
PARTITION BY workspace_id, instance_pool_id
ORDER BY change_time DESC
) = 1;

Calculer le temps d'inactivité et d'activité des instances

Cette query calcule le temps d'inactivité total et le temps actif pour chaque instance en utilisant les transitions d'état de la table instance_events.

SQL
WITH instance_states AS (
SELECT
*,
event_time AS start_time,
lead(event_time) OVER (
PARTITION BY workspace_id, instance_id
ORDER BY event_time
) AS end_time
FROM system.compute.instance_events
WHERE event_type IN ('INSTANCE_LAUNCHING', 'STATE_TRANSITION')
)
SELECT
workspace_id,
instance_id,
instance_pool_id,
sum(if(state = 'INSTANCE_READY',
TIMESTAMPDIFF(SECOND, start_time, end_time), 0)) / 60 AS idle_minutes,
sum(if(state = 'INSTANCE_PLACED',
TIMESTAMPDIFF(SECOND, start_time, end_time), 0)) / 60 AS active_minutes
FROM instance_states
GROUP BY workspace_id, instance_id, instance_pool_id;