Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Zapisuje iterator obiektów PyArrow RecordBatch do ujścia przesyłania strumieniowego.
Ta metoda jest wywoływana na funkcjach wykonawczych w celu zapisywania danych w ujściu danych przesyłanych strumieniowo w każdym mikrobajtach. Akceptuje iterator obiektów PyArrow RecordBatch i zwraca pojedynczy wiersz reprezentujący komunikat zatwierdzenia lub None jeśli nie ma komunikatu zatwierdzenia.
Sterownik zbiera komunikaty zatwierdzeń, jeśli istnieją, ze wszystkich funkcji wykonawczych i przekazuje je do commit() metody, jeśli wszystkie zadania zostały uruchomione pomyślnie. Jeśli jakiekolwiek zadanie zakończy się niepowodzeniem, abort() metoda zostanie wywołana z zebranymi komunikatami zatwierdzenia.
Składnia
write(iterator: Iterator[RecordBatch])
Parametry
| Parameter | Typ | Opis |
|---|---|---|
iterator |
Iterator[RecordBatch] | Iterator obiektów PyArrow RecordBatch reprezentujących dane wejściowe. |
Zwroty
WriterCommitMessage
Komunikat zatwierdzenia z możliwością serializacji.
Examples
from dataclasses import dataclass
@dataclass
class MyCommitMessage(WriterCommitMessage):
num_rows: int
batch_id: int
def write(self, iterator: Iterator["RecordBatch"]) -> "WriterCommitMessage":
total_rows = 0
for batch in iterator:
total_rows += len(batch)
return MyCommitMessage(num_rows=total_rows, batch_id=self.current_batch_id)