Firehose delivery stream'lerini yönetme
Veri mühendisliği bazen izinleri, kullanıcıları yönetmeyi ve bunu betikler yerine grafik arayüz (GUI) araçlarıyla yapmayı da içerir. Bu derste, sana Kinesis ve Lambda'yı kullanmak için boto3'ü nasıl kullanacağını göstereceğiz; ayrıca AWS üzerinde bazı işlemleri nasıl çalıştıracağını da öğreneceksin.
Kurs boyunca, AWS üzerindeki işlemler senin adına halledilecek; böylece işin programlama kısmına odaklanabileceksin.
Ekran kayıtları, işlerin nasıl yürüdüğüne dair tam bir bağlam sunar. Bu işlemleri AWS üzerinde kendin denemekte özgürsün, ama tamamen isteğe bağlıdır:
- AWS platformunda test edilmeyeceksin
- Kurs boyunca AWS işlemleri senin adına yapılacak, bu yüzden önce kursu bitirmeye odaklanmanı özellikle öneririz
- Bir gün AWS üzerinde denemek istersen, ortamdan ayrılır ayrılmaz instance'larını mutlaka durdur; yoksa yüklü bir faturayla karşılaşabilirsin
Şimdilik, Firehose stream'leriyle nasıl etkileşime geçeceğini öğrenmeye başlıyorsun. Senden önceki kişi birkaç Firehose stream'i oluşturmuş ve hesabı tertemiz başlatmak için bunların hepsini silmek istiyorsun.
Hadi, kentin AWS hesabında temiz bir başlangıç yapalım!
Bu egzersiz
AWS Kinesis ve Lambda ile Akış Verileri
kursunun bir parçasıdırEgzersiz talimatları
- boto3'ü içe aktar ve bir boto3 Firehose istemcisi oluştur.
- Firehose Delivery stream'lerinin listesini al.
- Yanıt içeriği üzerinde yineleme yap ve her bir stream'i sil.
.list_delivery_streams()sonuçlarını yazdırarak tüm delivery stream'lerinin silindiğini doğrula.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
# 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.____())