Gestione degli shard di dati utilizzando le API di Kinesis Data StreamsAWS SDK for PHPVersione 3 - AWS SDK for PHP

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à.

Gestione degli shard di dati utilizzando le API di Kinesis Data StreamsAWS SDK for PHPVersione 3

Amazon Kinesis Data Streams consente di inviare dati in tempo reale a un endpoint. La velocità del flusso di dati dipende dal numero di shard nel tuo flusso.

È possibile scrivere 1.000 record al secondo in un singolo shard. Ogni shard ha inoltre un limite di caricamento di 1 MiB al secondo. L'utilizzo viene calcolato e applicato per shard, quindi utilizza questi esempi per gestire la capacità dei dati e il costo del flusso.

Gli esempi seguenti mostrano come:

  • Elenca gli shard in un flusso utilizzando ListShards.

  • Aggiungi o riduci il numero di shard in un flusso utilizzando UpdateShardCount.

La versione integrale del codice di esempio di AWS SDK for PHP è disponibile qui su GitHub.

Credenziali

Prima di eseguire il codice di esempio, configura ilAWScredenziali, come descritto inImpostazione delle credenziali . Quindi importaAWS SDK for PHP, come descritto inUtilizzo di base.

Per ulteriori informazioni sull'utilizzo di Amazon Kinesis Data StreamsGuida per sviluppatori di Amazon Kinesis Data Streams.

Elenco di shard nei flussi di dati

Elenca i dettagli di un massimo di 100 shard in un flusso specifico.

Per visualizzare l'elenco degli shard in un flusso di dati di Kinesis, utilizzaListShardsoperazione.

Importazioni

require 'vendor/autoload.php'; use Aws\Kinesis\KinesisClient; use Aws\Exception\AwsException;

Codice di esempio

$kinesisClient = new Aws\Kinesis\KinesisClient([ 'profile' => 'default', 'version' => '2013-12-02', 'region' => 'us-east-2' ]); $name = "my_stream_name"; try { $result = $kinesisClient->ListShards([ 'StreamName' => $name, ]); var_dump($result); } catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo "\n"; }

Aggiungi altri shard di flussi di dati

Se hai bisogno di più shard dei flussi di dati, è possibile aumentare il tuo attuale numero di shard. Consigliamo di raddoppiare il tuo conteggio di shard nella fase di incremento. In questo modo viene eseguita una copia di ciascun shard attualmente disponibile per aumentare le tue capacità. È possibile raddoppiare il numero di shard solo due volte in un periodo di 24 ore.

Ricorda che la fatturazione per l'utilizzo di Kinesis Data Streams viene calcolata per shard, perciò quando la domanda diminuisce, ti consigliamo di ridurre gli shard conteggiati della metà. Quando elimini gli shard, puoi solo ridurre la quantità di shard a metà del tuo attuale conteggio di shard.

Per aggiornare il numero di shard conteggiati di un flusso di dati di Kinesis, utilizzaUpdateShardCountoperazione.

Importazioni

require 'vendor/autoload.php'; use Aws\Kinesis\KinesisClient; use Aws\Exception\AwsException;

Codice di esempio

$kinesisClient = new Aws\Kinesis\KinesisClient([ 'profile' => 'default', 'version' => '2013-12-02', 'region' => 'us-east-2' ]); $name = "my_stream_name"; $totalshards = 4; try { $result = $kinesisClient->UpdateShardCount([ 'ScalingType' => 'UNIFORM_SCALING', 'StreamName' => $name, 'TargetShardCount' => $totalshards ]); var_dump($result); } catch (AwsException $e) { // output error message if fails echo $e->getMessage(); echo "\n"; }