Abstracts

Large Scale ETL Design, Optimization and Implementation Based On Spark and AWS Platform

by Di Zhu




Institution: KTH
Department:
Year: 2017
Keywords: ETL; Spark; AWS; Large Scale Data Warehouse; ETL; Spark; AWS; Storskaliga datalager; Computer Sciences; Datavetenskap (datalogi)
Posted: 02/01/2018
Record ID: 2196570
Full text PDF: http://urn.kb.se/resolve?urn=urn:nbn:se:kth:diva-215702


Abstract

Nowadays, the amount of data generated by users within an Internet product is increasing exponentially, for instance, clickstream for a website application from millions of users, geospatial information from GIS-based APPs of Android and IPhone, or sensor data from cars or any electronic equipment, etc. All these data may be yielded billions every day, which is not surprisingly essential that insights could be extracted or built. For instance, monitoring system, fraud detection, user behavior analysis and feature verification, etc.Nevertheless, technical issues emerge accordingly. Heterogeneity, massiveness and miscellaneous requirements for taking use of the data from different dimensions make it much harder when it comes to the design of data pipelines, transforming and persistence in data warehouse. Undeniably, there are traditional ways to build ETLs from mainframe [1], RDBMS, to MapReduce and Hive. Yet with the emergence and popularization of Spark framework and AWS, this procedure could be evolved to a more robust, efficient, less costly and easy-to-implement architecture for collecting, building dimensional models and proceeding analytics on massive data. With the advantage of being in a car transportation company, billions of user behavior events come in every day, this paper contributes to an exploratory way of building and optimizing ETL pipelines based on AWS and Spark, and compare it with current main Data pipelines from different aspects. Mngden data som genereras internet-produkt-anvndare kar lavinartat och exponentiellt. Det finns otaliga exempel p detta; klick-strmmen frn hemsidor med miljontals anvndare, geospatial information frn GISbaserade Android och iPhone appar, eller frn sensorer p autonoma bilar.Mngden hndelser frn de hr typerna av data kan enkelt uppn miljardantal dagligen, drfr r det fga frvnande att det r mjligt att extrahera insikter frn de hr data-strmmarna. Till exempel kan man stta upp automatiserade vervakningssystem eller kalibrera bedrgerimodeller effektivt. Att handskas med data i de hr storleksordningarna r dock inte helt problemfritt, det finns flertalet tekniska bekymmer som enkelt kan uppst. Datan r inte alltid p samma form, den kan vara av olika dimensioner vilket gr det betydligt svrare att designa en effektiv data-pipeline, transformera datan och lagra den persistent i ett data-warehouse. Onekligen finns det traditionella stt att bygga ETLs p frn mainframe [1], RDBMS, till MapReduce och Hive. Dock har det med upptckten och kade populariteten av Spark och AWS blivit mer robust, effektivt, billigare och enklare att implementera system fr att samla data, bygga dimensions-enliga modeller och genomfra analys av massiva data-set. Den hr uppsatsen bidrar till en kad frstelse kring hur man bygger och optimerar ETL-pipelines baserade p AWS och Spark och jmfr med huvudsakliga nuvarande Data-pipelines med hnsyn till diverse aspekter. Uppsatsen drar nytta av att ha tillgng till ett massivt data-set med miljarder