read_statestore
tabellvärdesfunktion
Gäller för: Databricks SQL Databricks Runtime 14.3 och senare
Viktigt!
Den här funktionen finns som allmänt tillgänglig förhandsversion.
En tabellvärdefunktion för att läsa poster från tillståndsarkivet för strömmande frågor. Den returnerade relationen stöder endast körning som en batchfråga.
Syntax
read_statestore ( path [, option_key => option_value ] [ ... ] )
Argument
read_statestore
kräver namngiven parameteranrop för sina valfria parametrar.
path
: ASTRING literal
. Sökvägen till platsen för kontrollpunkten för strömmande fråga.option_key
: Namnet på alternativet som ska konfigureras. Du måste använda backticks (') för alternativ som innehåller punkter (.).option_value
: Ett konstant uttryck som alternativet ska anges till. Accepterar literaler och skalärfunktioner.
Alla option_value
är skiftlägesokänsliga.
option_key | Typ | Standardvärde | beskrivning |
---|---|---|---|
batchId |
BIGINT |
senaste batch-ID | Representerar målbatchen som ska läsas från. Det här alternativet används när användare vill utföra tidsresor. Batchen ska checkas in men inte rensas ännu. |
OperatorId |
BIGINT |
0 | Representerar måloperatorn som ska läsas från. Det här alternativet används när frågan använder flera tillståndskänsliga operatorer. |
storeName |
STRING |
'DEFAULT' |
Representerar målsidan som ska läsas från. Det här alternativet används när användare vill läsa tillståndet från stream-stream-anslutning. |
joinSide |
STRING |
'None' |
Representerar målsidan som ska läsas från. Det här alternativet används när användare vill läsa tillståndet från stream-stream-anslutning. En av: 'Left' , 'Right' , 'None' . |
Returer
Funktionen returnerar en resultatuppsättning med följande kolumner.
Kommentar
De kapslade kolumnerna för nyckel och värde beror starkt på indataschemat för den tillståndskänsliga operatorn och typen av operator.
Name | Datatyp | Kan ha värdet null | Standard | beskrivning |
---|---|---|---|---|
id |
STRUCT |
Nej | Nyckelraden för den tillståndskänsliga operatorn som lagras i tillståndskontrollpunkten. | |
value |
STRUCT |
Ja | Värderaden för den tillståndskänsliga operatorn som lagras i tillståndskontrollpunkten. | |
partition_id |
INTEGER |
Nej | Partitionen som innehåller posten. | |
shardId |
STRING |
Nej | En unik identifierare för fragmentet där data lästes från. | |
sequenceNumber |
BIGINT |
Nej | Den unika identifieraren för posten i dess fragment. | |
approximateArrivalTimestamp |
TIMESTAMP |
Nej | Den ungefärliga tid då posten infogades i dataströmmen. |
Exempel
- 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'
);