IniziaInizia gratis

Gestire i delivery stream di Firehose

Nel data engineering capita di dover gestire permessi, utenti e usare strumenti GUI invece degli script. In questo corso ti mostreremo come usare boto3 con Kinesis e Lambda, ma anche come eseguire alcune operazioni su AWS.

Per tutto il corso, le operazioni su AWS sono già predisposte per te, così puoi concentrarti sull'aspetto di programmazione.

Gli screencast servono per darti il contesto completo su come funzionano le cose. Se vuoi, puoi provare queste operazioni su AWS in autonomia, ma è del tutto facoltativo:

  • Non verrai valutato/a sulla piattaforma AWS
  • Le operazioni su AWS sono gestite per te per tutta la durata del corso, quindi ti consigliamo di concentrarti prima sul completamento del corso
  • Se decidi di provare qualcosa su AWS, ricordati di interrompere sempre le tue istanze appena termini, altrimenti potresti ricevere un conto salato

Per ora, stai iniziando a imparare come interagire con i stream di Firehose. La persona che c'era prima di te ha creato alcuni stream Firehose e tu vuoi eliminarli tutti per ripartire da zero con l'account.

Facciamo piazza pulita nell'account AWS della città!

Questo esercizio fa parte del corso

Dati in streaming con AWS Kinesis e Lambda

Visualizza il corso

Istruzioni dell'esercizio

  • Importa boto3 e crea un client Firehose di boto3.
  • Ottieni l'elenco dei Firehose Delivery stream.
  • Itera sul contenuto della risposta ed elimina ogni stream.
  • Verifica che tutti i delivery stream siano stati eliminati stampando il risultato di .list_delivery_streams().

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# Import boto3 and create boto3 Firehose client
import ____
firehose = boto3.____('____', 
    aws_access_key_id=AWS_KEY_ID, aws_secret_access_key=AWS_SECRET, 
    region_name='us-east-1', endpoint_url=endpoints['FIREHOSE'])

# Get list of delivery streams
response = firehose.____()

# Iterate over the response contents and delete every stream
for stream_name in response['DeliveryStreamNames']:
    firehose.____(DeliveryStreamName=stream_name)
    print(f"Deleted stream: {stream_name}")

# Print list of delivery streams
print(firehose.____())
Modifica ed esegui il codice