read_statestore
fonction table
S’applique à : Databricks SQL Databricks Runtime 14.3 et versions ultérieures
Important
Cette fonctionnalité est disponible en préversion publique.
Fonction table pour la lecture des enregistrements à partir du magasin d’état des requêtes de streaming. La relation renvoyée prend uniquement en charge l’exécution sous forme de requête par lots.
Syntaxe
read_statestore ( path [, option_key => option_value ] [ ... ] )
Arguments
read_statestore
nécessite un appel de paramètre nommé pour ses paramètres facultatifs.
path
: uneSTRING literal
. Chemin d’accès de l’emplacement du point de contrôle de la requête de streaming.option_key
: le nom de l’option à configurer. Vous devez utiliser des guillemets inversés (`) pour les options qui contiennent des points (.).option_value
: une expression constante sur laquelle définir l’option. Accepte les fonctions littérales et scalaires.
Les option_value
ne respectent pas la casse.
option_key | Type | Default | Description |
---|---|---|---|
batchId |
BIGINT |
ID du dernier lot | Représente le lot cible à partir duquel effectuer la lecture. Cette option est utilisée quand des utilisateurs souhaitent effectuer un voyage dans le temps. Le lot doit être valisé, mais pas encore nettoyé. |
OperatorId |
BIGINT |
0 | Représente l’opérateur cible à partir duquel effectuer la lecture. Cette option est utilisée quand la requête utilise plusieurs opérateurs avec état. |
storeName |
STRING |
'DEFAULT' |
Représente le côté cible à partir duquel effectuer la lecture. Cette option est utilisée quand des utilisateurs souhaitent lire l’état à partir d’une jointure flux-flux. |
joinSide |
STRING |
'None' |
Représente le côté cible à partir duquel effectuer la lecture. Cette option est utilisée quand des utilisateurs souhaitent lire l’état à partir d’une jointure flux-flux. Valeurs possibles : 'Left' , 'Right' , 'None' . |
Retours
La fonction renvoie un jeu de résultats comportant les colonnes suivantes.
Remarque
Les colonnes imbriquées pour des clés et des valeurs dépendent fortement du schéma d’entrée de l’opérateur avec état et du type d’opérateur.
Name | Type de données | Nullable | Standard | Description |
---|---|---|---|---|
id |
STRUCT |
Non | Ligne de clés de l’opérateur avec état stockée dans le point de contrôle d’état. | |
value |
STRUCT |
Oui | Ligne de valeurs de l’opérateur avec état stockée dans le point de contrôle d’état. | |
partition_id |
INTEGER |
Non | La partition contenant l’enregistrement. | |
shardId |
STRING |
Non | Identificateur unique de la partition à partir de laquelle les données ont été lues. | |
sequenceNumber |
BIGINT |
Non | Identificateur unique de l’enregistrement dans sa partition. | |
approximateArrivalTimestamp |
TIMESTAMP |
Non | Heure approximative à laquelle l’enregistrement a été inséré dans le flux. |
Exemples
- Read from state
> SELECT * FROM read_statestore('/checkpoint/path');
– Read from state with storeName option
> SELECT * FROM read_statestore(
'/checkpoint/path',
operatorId => 0,
batchId => 2,
storeName => 'default'
);
– Read from state with joinSide option
> SELECT * FROM read_statestore(
'/checkpoint/path',
joinSide => 'left'
);