The Doppler Quarterly (DEUTSCHE) Frühjahr 2017 | Page 30

Die gleiche Workload, viele Cluster So, wie wir uns mit dem Konzept von Clustern vertraut machen müssen, die für intensive Berechnungen zum Leben erweckt werden und dann wieder ruhen, sollten wir auch davon abkommen, nur einzelne Cluster in Erwägung zu zie- hen. Stattdessen sollten wir das Konzept verfolgen, viele Cluster für unter- schiedliche Workloads zu verwenden. Wenn Sie sich an die speziellen Entwick- lungs-, Test- und Implementierungsmuster im Zusammenhang mit flüchtigen Clustern gewöhnen, besteht der logische nächste Schritt darin, an die Ausfüh- rung separater Cluster für die verschiedenen Nutzungsmuster zu denken (z. B. ein oder mehrere Cluster für die Datenaufnahme, ein oder mehrere Cluster für schnelle Abfragen und einer für Data-Science-Tasks). Toolumgebung Wir erwähnten bereits, dass HDFS die bevorzugte Technologie für den Aufbau eines Data Lake ist. Wenn Sie sich HDFS verschreiben, ist Apache Oozie die natürliche Wahl für das Workflow-Management, Apache Pig für das Scripting und Apache Hive für Batch- und einige interaktive Abfragen. Apache Spark ist in den letzten Jahren immer beliebter geworden und sollte ein ernstzunehmender Kandidat für die Verarbeitung von Streaming Analytics und das maschinelle Lernen sein. Wir sehen oft auch den Einsatz von Redshift-, DynamoDB- und ElasticSearch-Clustern gemeinsam mit dem Hadoop-Ökosys- tem in einer Implementierung von Amazon Web Services. Alle Tools haben bestimmte Einschränkungen. Daher ist vorab eine sorgfältige Analyse nötig, um sicherzustellen, dass unerlässliche Funktionen unterstützt werden oder in der kurzfristigen Roadmap geplant sind. Abbildung 5: Zusammenwirken verschiedener Technologien in AWS Automation der Datenaufnahme In unseren Diskussionen werden hinsichtlich Polyglot Persistence des Öfteren Bedenken zu einem Punkt geäußert: der Komplexität der Back-End-Dateninte- gration. Mehrere Verarbeitungsengines erfordern mehr Code für die Daten- aufnahme und sind mit mehr Kosten für Entwicklung, Wartung und Änderun- gen verbunden. Doch durch die Verteilung der Workloads auf mehrere Automatisierungsengines können wir die Datenstrukturen in jeder einzelnen Engine vereinfachen. Ein sehr typisches Muster ist die Erstellung von Code für die Datenaufnahme im Data Lake und die Nutzung von temporären AWS EMR-Clustern oder AWS Lambda-Funktionen, um automatische Datenaktuali- sierungen in anderen Persistenzengines auszulösen. 28 | THE DOPPLER | FRÜHJAHR 2017