Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Concetti chiave KPL
Le seguenti sezioni contengono i concetti e la terminologia necessari per comprendere e sfruttare la Kinesis Producer Library KPL ().
Argomenti
Registri
In questa guida, distinguiamo tra record KPL utente e record Kinesis Data Streams. Quando utilizziamo il termine record senza un qualificatore, ci riferiamo a un record utente. KPL Quando facciamo riferimento a un record del flusso di dati Kinesis, diciamo esplicitamente record del flusso di dati Kinesis.
Un record KPL utente è un insieme di dati che ha un significato particolare per l'utente. Gli esempi includono un JSON blob che rappresenta un evento dell'interfaccia utente su un sito Web o una voce di registro da un server Web.
Un record Kinesis Data Streams è un'istanza Record
della struttura dati definita dal servizio Kinesis Data Streams. API Contiene una chiave di partizione, un numero di sequenza e un blob di dati.
Batching
Batching si riferisce all'esecuzione di una singola operazione su più elementi anziché eseguire ripetutamente l'operazione su ogni singolo elemento.
In questo contesto, un "elemento" è un record e l'operazione è inviarlo al flusso di dati Kinesis. In una situazione senza batch, è necessario inserire ogni record in un record Kinesis Data Streams separato ed effettuare HTTP una richiesta per inviarlo a Kinesis Data Streams. Con il batching, ogni HTTP richiesta può contenere più record anziché uno solo.
KPLSupporta due tipi di batching:
-
Aggregazione: l'archiviazione di più record in un singolo record del flusso di dati Kinesis.
-
Raccolta: utilizzo dell'APIoperazione
PutRecords
per inviare più record Kinesis Data Streams a uno o più shard nel flusso di dati Kinesis.
I due tipi di KPL dosaggio sono progettati per coesistere e possono essere attivati o disattivati indipendentemente l'uno dall'altro. Come impostazione predefinita, entrambi sono abilitati.
Aggregazione
Aggregazione si riferisce all'archiviazione di più record in un record del flusso di dati Kinesis. L'aggregazione consente ai clienti di aumentare il numero di record inviati per API chiamata, il che aumenta efficacemente la produttività dei produttori.
Le partizioni del flusso di dati Kinesis supportano fino a 1.000 record del flusso di dati Kinesis al secondo o 1 MB di velocità di trasmissione effettiva. I record al secondo del flusso di dati Kinesis vincola i clienti a record di dimensioni inferiori a 1 KB. L'aggregazione dei record consente ai clienti di combinare più record in un singolo record del flusso di dati Kinesis. Questo consente ai clienti di migliorare il loro throughput per shard.
Considera ad esempio il caso di uno shard nella regione us-east-1 che attualmente è in esecuzione a velocità costante di 1.000 record al secondo, con record di 512 byte ciascuno. Con KPL l'aggregazione, puoi raggruppare 1.000 record in soli 10 record Kinesis Data Streams, RPS riducendoli a 10 (da 50 KB ciascuno).
Raccolta
La raccolta si riferisce al raggruppamento in batch di più record Kinesis Data Streams e all'invio in un'HTTPunica richiesta con una chiamata API all'PutRecords
operazione, anziché inviare ogni record Kinesis Data Streams nella propria richiesta. HTTP
Ciò aumenta la velocità effettiva rispetto all'assenza di raccolta perché riduce il sovraccarico derivante dall'invio di molte richieste separate. HTTP Infatti, PutRecords
è stato specificamente progettato per questo scopo.
La raccolta differisce dall'aggregazione in quanto lavora con gruppi di record del flusso di dati Kinesis. I record del flusso di dati Kinesis raccolti possono comunque contenere più record da parte dell'utente. La relazione può essere visualizzata come segue:
record 0 --|
record 1 | [ Aggregation ]
... |--> Amazon Kinesis record 0 --|
... | |
record A --| |
|
... ... |
|
record K --| |
record L | | [ Collection ]
... |--> Amazon Kinesis record C --|--> PutRecords Request
... | |
record S --| |
|
... ... |
|
record AA--| |
record BB | |
... |--> Amazon Kinesis record M --|
... |
record ZZ--|