Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Restituisce l'offset più recente disponibile in base a un limite di lettura.
L'offset start può essere usato per determinare la quantità di nuovi dati da leggere in base al limite. Per il primo microbatch, start viene fornito dal valore restituito di initialOffset(). Per i microbatches successivi, continua dall'ultimo microbatch. L'origine può restituire lo stesso offset dell'offset iniziale se non sono presenti dati da elaborare.
ReadLimit può essere usato dall'origine per limitare la quantità di dati restituiti. Implementare getDefaultReadLimit() per fornire il corretto ReadLimit se l'origine può limitare i dati in base alle opzioni di origine.
Il motore può comunque chiamare latestOffset() con ReadAllAvailable anche se l'origine produce un limite di lettura diverso da getDefaultReadLimit(). L'origine deve sempre rispettare l'oggetto fornito ReadLimit dal motore.
Aggiunta in Databricks Runtime 15.2
Sintassi
latestOffset(start: dict, limit: ReadLimit)
Parametri
| Parametro | Tipo | Descrizione |
|---|---|---|
start |
dizionario | Offset iniziale del microbatch da cui continuare la lettura. |
limit |
ReadLimit | Limite per la quantità di dati da restituire da questa chiamata. |
Restituzioni
dict
Dict o dict ricorsivo il cui valore e la chiave sono tipi primitivi, che includono Integer, String e Boolean.
Examples
from pyspark.sql.streaming.datasource import ReadAllAvailable, ReadMaxRows
def latestOffset(self, start, limit):
# Assume the source has 10 new records between start and latest offset
if isinstance(limit, ReadAllAvailable):
return {"index": start["index"] + 10}
else: # e.g., limit is ReadMaxRows(5)
return {"index": start["index"] + min(10, limit.maxRows)}