Loading…
Thumbnail Image

Massively Parallel Data Processing on Infrastructure as a Service Platforms

Warneke, Daniel

Infrastructure as a Service (IaaS) Clouds haben sich in den vergangenen Jahren zu einer vielversprechenden neuen Plattform für massiv-parallele Datenverarbeitung entwickelt. Durch den Wegfall der Notwendigkeit hoher Anfangsinvestitionen bieten Betreiber von IaaS Clouds ihren Kunden die nie dagewesene Möglichkeit, kurzzeitigen Zugriff auf einen hoch skalierbaren Pool von Rechenressourcen zu erhalten und darauf Datenanalyseprogramme in einer Größenordnung auszuführen, die bislang nur großen Internetfirmen und Forschungseinrichtungen vorbehalten war. Trotz der steigenden Popularität dieser Form von verteilten Anwendungen, stammen die aktuellen Datenverarbeitungsframeworks, die die Erstellung und Ausführung dieser großangelegten Aufgaben (Jobs) zur Datenanalyse unterstützen, immernoch aus der Ära der dedizierten, statischen Rechencluster und haben die speziellen Eigenschaften der IaaS Plattformen bislang außer Acht gelassen. Diese Doktorarbeit greift den Entwurf eines parallelen Datenverarbeitungsframeworks vor dem Hintergrund der neuen Möglichkeiten und Herausforderungen einer IaaS Cloud neu auf, und zwar mit dem Ziel, die Verarbeitungseffizienz von Jobs auf dieser Plattform sowohl in Hinblick auf die Zeit als auch auf die Kosten zu verbessern. Dabei analysiert die Arbeit, wie ein Framework für parallele Datenverarbeitung die Fähigkeiten einer Cloud zur schnellen Ressourcenbereitstellung nutzen kann und präsentiert daraufhin ein neues Verarbeitungsframework mit dem Namen Nephele, welches diese neuen Möglichkeiten der Cloud explizit ausnutzt. Darüber hinaus werden noch mehrere Ansätze zur Reduzierung des erhöhten Risikos von I/O Flaschenhälsen während der Jobausführung vorgestellt, welches in einer Cloud durch die Verwendung von Hardwarevirtualisierung entsteht. Um ihre Leistungsfähigkeit aufzuzeigen, werden alle Beiträge dieser Doktorarbeit durch zahlreiche praktische Experimente evaluiert und, sofern möglich, mit dem aktuellen Stand der Technik gegenübergestellt.
In recent years, Infrastructure as a Service (IaaS) clouds have emerged as a promising new platform for massively parallel data processing. By eliminating the need for large upfront capital expenses, operators of IaaS clouds offer their customers the unprecedented possibility to acquire access to a highly scalable pool of computing resources on a short-term basis and enable them to execute data analysis applications at a scale which has been traditionally reserved to large Internet companies and research facilities. However, despite the growing popularity of these kinds of distributed applications, the current parallel data processing frameworks, which support the creation and execution of large-scale data analysis jobs, still stem from the era of dedicated, static compute clusters and have disregarded the particular characteristics of IaaS platforms so far. This thesis revisits the design of a parallel data processing framework against the background of the new possibilities and challenges of IaaS clouds with the objective of improving the processing efficiency on these platforms in terms of both time and cost. In particular, the thesis analyzes how parallel data processing frameworks can take advantage of the cloud's ability for rapid resource provisioning and presents a new parallel data processing framework called Nephele, which explicitly exploits these new cloud features. Moreover, several approaches are presented to reduce the increased risk of I/O bottlenecks during the job execution which results from the cloud's use of hardware virtualization. In order to underline their effectiveness, all contributions of this thesis are evaluated through various practical experiments and, whenever possible, contrasted to the state of the art in the respective field.