Datenverarbeitung der nächsten Generation im riesigen Maßstab bei Pinterest mit Moka (Teil 1 von 2)
Das Data-Engineering-Team von Pinterest entwickelt eine neue, groß angelegte Datenverarbeitungsplattform, die die aktuelle Hadoop-basierte Plattform Monarch ersetzen soll. Das Team untersuchte Kubernetes-basierte Systeme als Ersatz aufgrund ihrer wachsenden Popularität und zunehmenden Akzeptanz in der Big-Data-Community. Die neue Plattform musste bestimmte Kriterien erfüllen, darunter umfangreiche Unterstützung für Container, die Ausführung des benutzerdefinierten Spark-Forks von Pinterest sowie niedrigere Betriebs- und Wartungskosten. Das Team führte eine umfassende Bewertung der Ausführung von Spark auf verschiedenen Plattformen durch und entschied sich aufgrund ihrer Vorteile, einschließlich containerbasierter Isolation und Sicherheit, einfacher Bereitstellung und integrierter Frameworks, für Kubernetes-fokussierte Frameworks. Kubernetes bietet eine feiner abgestimmte Unterstützung für die Containerverwaltung und -bereitstellung als andere Systeme, aber es fehlt die integrierte Unterstützung für die Verwaltung, Speicherung und Verarbeitung von Daten. Das aktuelle Bereitstellungsmodell des Teams in Hadoop ist umständlich, und es wird ein einfacherer Ansatz mit Terraform, Container-Images und Helm verwendet. Die neue Plattform wird Kubernetes und EKS nutzen, um Monarch zu ersetzen, was mehrere Herausforderungen mit sich bringt, darunter die Integration von EKS in die bestehende Pinterest-Umgebung und die Suche nach Ersatz für Hadoop-Komponenten. Das Team hat eine neue Plattform, Moka, entwickelt, die in der Lage ist, Spark-Batch-Workloads zu verarbeiten, die nur auf nicht vertrauliche Daten zugreifen, und in Zukunft weitere Funktionen hinzufügen wird. Das anfängliche High-Level-Design von Moka umfasst ein System, das Spark-Batch-Workloads verarbeiten kann, wobei Aufträge über eine Reihe von Komponenten übermittelt und verarbeitet werden, darunter Spinner, Archer und der Spark-Operator. Weitere Details zu den wichtigsten anwendungsorientierten Aspekten ihrer Plattform wird das Team im nächsten Teil seiner Blog-Serie bekannt geben.