
Fallstudie
Brasidas: Nutzung von AWS-Services, Pipeline für unstrukturierte Daten

Mit Hauptsitz in der Nähe von Zürich, Schweiz, sowie Niederlassungen in New Jersey (USA) und Belgrad (Serbien) ist die Brasidas Group ein multinationales Unternehmen für strategische Aufklärung und Risikoberatung. Basierend auf den Prinzipien von Vertraulichkeit, Zuverlässigkeit, Wahrhaftigkeit und Aktualität bietet das Unternehmen hochwertige, maßgeschneiderte Business-Intelligence-Dienstleistungen. Als Partner in der globalen Risikoberatung ist es ihr Ziel, die internationalen Schlagzeilen von morgen vorherzusehen und nützliche Informationen bereitzustellen, die das Leben verändern. Sie baten uns um Unterstützung bei der Nutzung von AWS-Services und beim Data-Lake-Management.
Ausgangslage
Brasidas verfügte über verschiedene unstrukturierte Daten in unterschiedlichen Formaten und an unterschiedlichen Speicherorten. Ihr Wunsch war es, mehrere Datenquellen in einem zentralen Data Lake zu aggregieren, AWS-ETL-Services zur Aufnahme der Daten zu nutzen und sie anschließend für spätere datenanalytische Zwecke per SQL abzufragen.
Die Herausforderung
Für die Datenpipeline gab es im Projekt mehrere Ansätze, doch die wohl größte Herausforderung bestand darin, alle Verbindungen zu den verschiedenen Ressourcen herzustellen und mit der Konvertierung nicht unterstützter Datenformate umzugehen. Dies wurde beispielhaft mit einem Prototyp eines Glue-Python-Skripts sowie mit einer AWS-Glue-DataBrew-Pipeline gelöst.
Was wir getan haben
Die Architektur besteht aus einer dreistufigen VPC für private, öffentliche und Datenbank-Workloads, einer RDS-Instanz, einem Bastion-Host (EC2), S3-Buckets sowie Glue-Jobs und -Crawlern. Athena wird verwendet, um die gecrawlten Daten per SQL-Anweisungen abzufragen.
Alle vertraulichen Daten wie Secrets werden in Tresoren des Secrets Manager aufbewahrt, die mit einem projektgebundenen KMS-Schlüssel entschlüsselt werden können. Die IAM-Sicherheitsrichtlinien basieren auf ABAC (Attribute-based Access Control), das heißt, die Ressourcen müssen über entsprechende Attribute verfügen, um von AWS-Services genutzt werden zu können.
Das Projekt zeigt mehrere Beispiele für den Einsatz von Glue für den ETL-Prozess sowie für die Kommunikation von Glue mit verschiedenen Services und Ressourcen, um Daten abzurufen.
Das gesamte Projekt ist in Terraform geschrieben; Aktualisierungen und Änderungen sollten und werden in Terraform statt über die Konsole/UI vorgenommen, um Konfigurationsdrift zu vermeiden.

Ergebnisse
Testimonial

Fragen Sie unsere Experten
Hinterlassen Sie uns einen Kontakt, wir melden uns bei Ihnen




