Amazon DEA-C01: Veri Hattı İzleme ve Sorun Giderme — Çalışma kılavuzu
Şunun bir parçası: Amazon Data Engineer Associate DEA-C01 — Çalışma kılavuzu. Doğrulanmış cevaplarla şurada pratik yapın: Amazon sınav merkezi, veya şurada süreli deneme sınavları çözün: ExamRoll.io.
CloudTrail ve veri erişimi denetimi
CloudTrail, API etkinliğini ve isteğe bağlı olarak, varsayılan olarak etkinleştirilmeyen S3 ve Lambda için veri olaylarını (data events) sağlar. Nesne seviyesindeki S3 olaylarını yakalamak için, konsol aracılığıyla veya aws cloudtrail create-trail –include-global-service-events komutunu kullanarak CloudTrail üzerinde veri olaylarını açıkça etkinleştirin ve S3 veri kaynaklarını ekleyin. S3 veri olaylarını etkinleştirmeden CloudTrail’de GetObject/PutObject’i göremezsiniz; bu, incelemeler sırasında sıkça karşılaşılan bir eksikliktir.
Operasyonel metrikleri (ör. Glue job log’ları) erişim olaylarıyla ilişkilendirmek için CloudTrail log’larını CloudWatch Logs Insights ile birlikte kullanın. Sorgu kalıpları:
- CloudWatch Logs Insights: filter @message like /GetObject/ | stats count() by userIdentity.principalId
- Belirli API çağrılarına (ör. PutBucketAcl) tepki vermek ve hızlı uyarılar için SNS’e yönlendirmek üzere EventBridge kurallarını kullanın.
DMS replikasyon görevleri de CloudWatch metrikleri yayınlar: ilk kopyalamanın tamamlandığını izlemek için FullLoadRows’u, replikasyon gecikmesini (lag) tespit etmek için CDCLatencyMilliseconds’i ve işlemlerin hedefte uygulandığından emin olmak için AppliedChanges’i izleyin. CDCLatencyMilliseconds iş SLA’larını aştığında ve full load satırlarındaki bir artıştan sonra AppliedChanges düşük olduğunda alarm oluşturun.
Yaygın Hatalar ve Karar Kriterleri
- Kinesis’teki yüksek IteratorAgeMilliseconds değerinin kaynak sorunlarıyla karıştırılması — doğru yaklaşım: consumer’ın checkpoint’lerini ve işleme süresini kontrol edin; yalnızca consumer CPU/IO profili çıkardıktan sonra shard ekleyerek veya enhanced fan-out kullanarak ölçeklendirin.
- Glue job OOM hatalarının DPU’yu körü körüne artırarak ele alınması — doğru yaklaşım: Spark aşamalarının profilini çıkarın, bölümlemeyi (partitioning) ve veri filtrelemeyi optimize edin; yalnızca kaynak limitleri doğrulandıktan sonra DPU’yu veya worker türünü artırın.
- Firehose arabelleğe alma (buffering) gecikmesinin veri kaybı olarak algılanması — doğru yaklaşım: BufferIntervalInSeconds ve BufferSizeInMBs’yi doğrulayın; düşük gecikme (low-latency) ihtiyaçları için aralığı azaltın ve daha yüksek yazma oranlarını/maliyetini kabul edin.
- CloudTrail’in varsayılan olarak S3 nesne okumalarını kaydettiğini varsaymak — doğru yaklaşım: adli denetimler (forensic audits) için GetObject/PutObject’i yakalamak üzere CloudTrail’de S3 veri olaylarını etkinleştirin.
- Eksik DMS CDC gecikme (lag) alarmları — doğru yaklaşım: CDCLatencyMilliseconds üzerinde CloudWatch alarmları oluşturun ve AppliedChanges ile FullLoadRows’u karşılaştırın; gecikme arttığında ağı veya işlem birikimini (transaction backlog) araştırın.
- Geçici ani yükselişlerde aşırı alarm oluşturma — doğru yaklaşım: gürültüyü azaltmak için değerlendirme periyotları (evaluation-periods), alarm için veri noktası (datapoint-to-alarm) veya anomali tespiti (anomaly detection) kullanın ve birbiriyle ilişkili durumlar için bileşik alarmlar (composite alarms) kullanın.
Pratik Problem: Kullanım Senaryosu
Acme Analytics, Kinesis aracılığıyla gerçek zamanlı tıklama akışı (clickstream) alımı yapmakta, Glue ETL işleriyle olayları zenginleştirmekte, Firehose aracılığıyla eski yığınları (stale batches) S3’e kalıcı olarak kaydetmekte ve DMS ile eski veritabanlarını (legacy DBs) replike etmektedir. Uçtan uca gecikmeler gözlemliyorlar: Kinesis’te consumer gecikmesi (lag), Glue job OOM’ları ve Firehose’un büyük DeliveryToS3.DataFreshness göstermesi.
- Kinesis consumer’larının profilini çıkarın: GetRecords.IteratorAgeMilliseconds metriğini çekin, consumer log’larını inceleyin ve Kinesis enhanced fan-out ile shard ölçeklendirme arasında bir maliyet analizi yapın.
- OOM yığın izleri (stack traces) için Glue job CloudWatch metriklerini ve Logs Insights’ı inceleyin; yeniden bölümlemeyi (repartitioning) + pushdown predicate’i yerel olarak veya daha küçük bir işte test edin; yalnızca bundan sonra gerekirse DPU/worker türünü artırın.
- Firehose arabellek ayarlarını (BufferIntervalInSeconds) ve DeliveryToS3.DataFreshness’i inceleyin; kritik SLO’lar için arabellek aralığını azaltın ve S3 yazma izinlerini/KMS’i doğrulayın.
- IteratorAgeMilliseconds, Glue job hata oranı ve Firehose DataFreshness’i birleştiren CloudWatch bileşik alarmlarını (composite alarms) yapılandırın; uyarıları nöbetçi (on-call) bir SNS konusuna (topic) iletin ve EventBridge aracılığıyla bir runbook tetikleyin.
- Yetkisiz veya gecikmeli erişimi tespit etmek için CloudTrail S3 veri olaylarını etkinleştirin ve GetObject/PutObject olaylarını Glue job başlangıç zamanları ve DMS applied changes ile ilişkilendirin.
Bu yaklaşım, AWS en iyi uygulamalarını (best practices) takip eder: doğru hizmet metriklerini doğru ayrıntı düzeyinde izlemek, kaynakları ölçeklendirmeden önce hedefe yönelik kod ve yapılandırma düzeltmelerini tercih etmek ve hızlı kök neden analizi ile otomatik iyileştirmeyi sağlamak için denetim düzeyinde günlük kaydının (audit-level logging) açıkça etkinleştirildiğinden emin olmak.
← Veri Güvenliği · Tüm alanlar · Veri İş Yükleri için Maliyet Optimizasyonu →
Bu soruları çözün → · ExamRoll.io’da süreli pratik →
Pass the whole exam — not just this question
You found this answer. Get every verified question and explanation in one place, and save hours of prep. Free to start.
Sınavınızı geçin →