Cloud Wars – what‘s the smartest data platform Vergleich Microsoft Azure, Amazon Web Services und Google Cloud Platform Stefan Kirner & Thomas Neureuther Karlsruhe, 22.6.2016 Stefan Kirner Teamleiter BI Solutions bei der inovex GmbH • Teamleiter BI Solutions bei der inovex GmbH • Langjährige Erfahrung mit dem Microsoft BI Stack • Data Management Lösungen in der Cloud Thomas Neureuther Werkstudent bei der inovex GmbH • • • inovex Lab für den Research im Cloud Bereich Spezialist für die Implementierung von data-driven-business Lösungen Erfahrungen im Microsoft SQL Server BI Stack. 2 Was ist Cloud Computing? “Cloudcomputing is amodel for enabling ubiquitous, convenient,ondemand network access to ashared pool of configurable computing resources (e.g.,networks,servers, storage,applications, and services)that can be rapidly provisioned and released with minimal management effort or service provider interaction” NIST 3 Warum Cloud Computing? http://cavdar.net/cloud-computing/#/1 4 I/P/S-as-a-Service (On-Premises) HierimFocus Platform Infrastructure (asaService) Applications Data Data (asaService) Runtime Runtime Runtime Middleware Middleware Middleware O/S O/S O/S O/S Virtualization Virtualization Virtualization Servers Servers Storage Storage Networking Networking Middleware Microsoft (Thierry Gasser) You manage Data Servers Virtualization Other Manages Data Other Manages Applications Other Manages Applications Runtime You manage (asaService) You manage Applications Software Servers Storage Storage Networking Networking 5 Analogie der “as a Service“ Schichten Albert Barron (Ibm) https://www.linkedin.com/pulse/20140730172610-9679881-pizza-as-a-service 6 Welche Public Cloud? http://www.adslzone.net/app/uploads/2014/09/cloud.jpg 7 Public Cloud Anbieter • • • • Seit 2006 Iaas Marktführer Dogfood für viele eigene Dienste (Amazon Store, Video…) “PaaS like services with the option of IaaSlike control in some cases” - Dan Sullivan - Tom's IT Pro Amazon Web Services 10 Amazon Web Services Screenshot Console AWS 9 Public Cloud Anbieter Microsoft Azure • • • • Seit 2010 Als PaaS gestartet wurde seit 2013 sukzessive erweitert mit IaaSKomponenten Starke SaaS Komponenten Dogfood für viele SaaS Dienste (Skype, XBox etc) 13 Azure Platform Services „Landscape“ https://i-msdn.sec.s-msft.com/dynimg/IC831231.png 11 Public Cloud Anbieter Google Cloud Platform • • • • Seit 2008– IaaS, PaaS No “Dogfooding“ – Googles Dienste basieren nicht auf GCP CloudSDKund CLI,Console als WebFrontend Go, Java, Python http://www.infoworld.com/article/3051017/cloud-computing/the-importance-of-dogfooding-in-the-cloud.html 15 Storage and Databases Big Data and Analytics Machine Learinig Cloud ML Cloud Speach API Compute Google Cloud Platform 13 Marktsituation “The cloud wars between Amazon, Google, and Microsoft are heating up, with the three working tirelessly to attract the large business customers that bring in the big bucks. From a technological perspective, though,the three cloud platforms are basically equal, and offer a similar sales pitch.” Business Insider, April 2016 Forrester- https://d0.awsstatic.com/analyst- 14 Marktsituation Gartner: 2015 Magic Quadrant for Cloud Infrastructure as a Service, Worldwide Forrester- https://d0.awsstatic.com/analyst- 15 Marktsituation Gartner: 2016 Magic Quadrant for Enterprise Application Platform as a Service, Worldwide https://www.gartner.com/doc/reprints?id=1-2G45TQU&ct=150519&st=sb 16 Marktsituation Synergy Research Group - https://www.srgresearch.com/ 17 Marktsituation Synergy Research Group - https://www.srgresearch.com/ 18 „The cloud market is evolving quickly, with an ever-changing set of big data services. While this makes cloud vendor comparisons difficult, it's worth the attempt, because the offerings from the top three cloud providers - Amazon Web Services, Microsoft Azure and Google -- aren't created equal.“ Jim O'Reilly http://searchcloudcomputing.techtarget.com/tip/Compare-AWS-vs-Azure-vs-Google-big-data-services 19 Fazit Marktsituation • • • • EinheitlichesBildzuPaaS eherschwierig UnterschiedlicheDefinitionen Technologiennichtimmervergleichbar/bekannt QualitativeVergleichedeckennurspezielleUse cases ab Damüssenwirselberran! 20 Web Interface & Handhabung Vergleich der Cloud Provider Services • Web Interface und Bedienung • SDK‘s und Programmiersprachen • Tooling und Integration in Entwicklungsumgebung • Dokumentation 21 Web Interface & Handhabung AWS Management Console • • Übersichtlich und minimalistisches Web Interface mit Übersicht über Dienste Tooling • Plugins fürEclipse und VisualStudiovorhanden • AWSCommandLine Interface • AWSSDK • S3Browser (Desktopanwendung) 22 Web Interface & Handhabung Azure Portal • • • Web Portal mit sehr verschachtelter Kacheloptik Altes und neues Portal Tooling • Befehlszeilentoolsüber PowerShell • CLIauchfürLinux&Mac Azure SDK-Mitpassendem ToolkitfürVisualStudio • Azure Explorer • Azure Portal 23 Web Interface & Handhabung • Schlichtes Web Interface • Tooling • gcloud Tool- CLIfür GCPProdukteund Services • CloudSDK • WenigIDE Unterstützung GCP Console 24 DEMO TIME 25 AWS Portal und S3 Bucket 26 Azure Ressourcengruppe und Speicherkonto 27 GCP Storage Bucket 28 Web Interface & Handhabung Vergleich der Cloud Provider Services Dienst WebConsole Azure Portal GCPConsole Bewertung Portal:☆☆☆ SDK:☆☆ Tooling: ☆☆ Dokumentation: ☆ CLI:☆☆☆ Portal:☆☆ SDK:☆☆ Tooling: ☆☆ Dokumentation: ☆☆☆ CLI:☆☆ Portal:☆☆ SDK:☆☆ Tooling: ☆ Dokumentation: ☆☆ CLI:☆☆ 29 Big Data /Analytics Use-Case DataGeneration/Extraction App,IoT oderSensordaten Collectionand Storage EventBrokerundStreamProzessor Analyticsand Computation AggregationundAnalyse DataPresentation VisualisierungundDashboard 30 Lambda Architecture 1. 2. 3. 4. 5. Weiterleiten der ankommenden Daten zu Speed und Batch Layer Batch-Layer 1. BerechnenderBatchViews 2. Rohdatenaufbewahren Serving Layer indexiert die Batch Views Speed-Layer erlaubt Echtzeit Views Querys auf Batch und Echtzeit Views möglich http://lambda-architecture.net/ 31 Lambda Architektur Viele Möglichkeiten Lambda Architektur mit Cloud Technologien abzubilden -> Architektur nicht an Dienste gebunden LambdaArchitecture onAzure Options for each Layer https://blogs.technet.microsoft.com/msuspartner/2016/01/27/azure-partner-community-big-data-advanced-analytics-and-lambda- 32 Big Data /Analytics Use-Case • Startup ULTRA TENDENCY aus Japan • Sensorwerte erfassen und Strahlenwerte analysieren • Umsetzung mittels Cloud basierter Analyse in Azure 33 Big Data /Analytics Use-Case • ≈5000 Wetterstationen in Baden-Württemberg • Weather Underground API • Temperatur, Niederschlag, Luftdruck, Windgeschwindigkeit • Aktualisierung ≈ 5 min 34 Data Generation Collection and Storage Event Stream Hub Analytics Kinesis Firehose Pub/Sub Dataflow DataLake Store S3 Analyticsand Computation Data Factory Data Pipeline Data Presentation PowerBI DataLake Analytics DataLake Store Elastic Map Reduce Redshift QuickSight BigQuery Data Studio360 35 Collection 36 Streaming Dienste Vergleich der Cloud Provider Services • Kontinuierlicher Strom von Daten empfangen und verarbeiten • Mehrere Publisher/Subscriber • Skalierbar • Hoch Verfügbar • Niedrige Latenzen • Echtzeit Verarbeitung und Analyse 37 Pub/Sub, Message Broker - Streaming Dienst Kinesis Event Hub Beschreibung • • • Pub/Sub • NaheEchtzeit • ZeitbasierterEreignispuffer Datastrom vonverschiedenenProzessenoderGeräten Vereinfachtdas • empfangen und veröffentlichen von DatenströmeninEchtzeit Datenaufbewahrungbis 7 Tage Azure EventHubsistein hochgradigskalierbarer Dienstfürdas Veröffentlichen und Abonnieren von Ereignissen • • Publish/Subscribe Hochskalierbare MessageQueue mit Push/Pull Delivery 38 Dienste zur Stream Verarbeitung Dienst Kinesis Firehose Kinesis Analytics(Beta) Kinesis &Lambda Beschreibung • • • • Kinesis mit SQLbasierte Anfragen LambdaFunktionen um Eventszuverarbeiten Firehose persistiert StreamnachS3,ES (1.5),Redshift Stream Analytics Dataflow EchtzeitverarbeitungvonStreams • • • SQLbasierteAbfragen Windowing Echtzeitdashboardsund Warnungen • • Programmierungvon Dataflows inJava DamitWindowing und quasijederOutput möglich 39 Streaming Dienste • • • Kinesis Firehose • SchreibtStreaminBlöckenauf denS3Storage,Elasticsearch oderRedshift • KeineMöglichkeitender Programmierung Kinesis Streams • Machtesnotwendigeinen StreamReceiverzu programmierenunddiesenzu deployen • AWSLambdaFunktionen Kinesis Analytics (Beta) AWS Kinesis 40 Streaming Dienste Azure Stream Analytics • Leistungsstarkes Modell • Eingabe • • • Abfrage • • • EventHub,Blob,IoT Hub MehrereEingabenmöglich SA-QL:SQLÄhnlicheSyntax Window Operationenmöglich Ausgabe • • Blob,SQL,PowerBI .... MehrereAusgabenmöglich 41 Streaming Dienste Google Dataflow • Programmiermodell – Batch und Stream Workload – Pipelineing als DAG – Arbeiten auf Collections • Google Dataflow als Runner für das Dataflow Programmiermodell Google DataFlow 42 Dienste zur Stream Verarbeitung Dienst AmazonKinesis StreamAnalytics Dataflow Bewertung Bedienung:☆☆ Lifecycle Management:☆ Möglichkeiten:☆☆ Bedienung:☆☆☆ Lifecycle Management: ☆ Möglichkeiten:☆☆☆ Bedienung:☆☆ Lifecycle Management:☆☆ Möglichkeiten: ☆☆☆ +SimpleBedienung - FürgleicheFunktionalitätwiebei Azure coding erforderlich - Firehose eingeschränkte Funktionsumfang - Kinesis Streambenötigtselbst implementiertenunddeployten Receiver(z.B:AWSLambda) +SimpleBedienung +Hohe Funktionalitätmit geringemAufwand +SQLSyntaxfürAbfrage - Schlechtzuversionieren oderzu Managen ProgrammcodemitallenVor- und Nachteilen +SehrguteSkalierbarkeitundBig DataFähigkeit - Höherer Einarbeitungsaufwand 43 Kosten Message Broker /Stream Verarbeitung Dienst AmazonKinesis StreamAnalytics Dataflow Preise Shard Stunde1,7ct Put Nutzlastpro1Mio Puts (25KB)1,65ct Verlängerte Datenaufbewahrung 2ct/h UnitStunde 3,1ct Nutzlast0,1ctproGB Pub/Sub 1Milion Operationen 40ct Halbiertsichab 250M Operationen Beispiel:2Eventsa35KB proSekunde Beispiel:2Eventsa35KB ≈20€ Stream proSekunde Analytics/Monat ≈13€/Monat ≈9€ EventHub/Monat Batch1ctGCEU/h Stream1,5ctGCEU/h 44 DEMO TIME 45 Azure Stream Analytics 46 AWS Kinesis 47 GCP Pub/Sub 48 GCP Dataflow 49 Analytics and Computation 50 Orchestrierungs Dienste • Daten auslesen, ggf. transformieren und schreiben (Vergleichbar mit ETL) • Transformation eher schwieriger • Orchestrierung Dienste • Zusammenfassen und Orchestrierung von Verarbeitungsschritten • Neue Quellen und Ziele • Cloud und Hybride Szenarien • Big-Data Fähigkeit 51 Orchestrierungs Dienste Data Pipeline • Erstellen in AWS Management Console • • • • • DesignerundVorlagen PropertiesinDrop-Down Feldernverwalten Rechtüberschaubarer Funktionsumfangohne Detailfunktionen DeckttypischeETL-Szenarien gutab KeineEntwicklungsumgebung undCodeManagement 52 Orchestrierungs Dienste – Data Pipeline • Hive in Data Pipeline • • RessourceAnlegen Skriptschreibenund verknüpfen 53 Orchestrierungs Dienste Data Factory • Factory Dashboard WerkzeugefürdasErstellen derFactory • Zustandsüberwachung • ManuellesStartenvon Vorgängen • AuslastungundDiagnosen • 54 Orchestrierungs Dienste Data Factory • Data Factory Projekt Templateserlauben schnellesErstelleneinfacher Anwendungsfälle • Deployment ausVisual StudiooderFactory Dashboard • JSON-Dokumenteohne Toolunterstützungfüllen undverknüpfen • • Designby Copy and Paste 55 Orchestrierungs Dienste SSISweit voraus Dienst DataPipeline DataFactory Bewertung Bedienung:☆☆ Lifecycle Management:☆ Möglichkeiten: ☆☆ Bedienung:☆+ Lifecycle Management: ☆☆ Möglichkeiten: ☆☆ +Selbsterklärender Designer - KeineCode Completion oder SyntaxHighlightingoder Validierung - Code kannlediglichüberJSON exportiertund versioniert werden (händisch) +Templatesund VisualStudio Unterstützung - KeinDesignersondern zusammenfügenvonJSON Dokumenten 56 DEMO TIME 57 Azure Data Factory 58 AWS Data Pipeline 59 Horizontal skalierende analytische Datenspeicher 60 Horizontal skalierende analytische Datenspeicher • ParallelverarbeitendeInstanzen • Massively ParallelProcessing Architecture • Skalierbarkeit • SQLQuerys 61 Analytische Datenspeicher Redshift • Schnelle Skalierung der Cluster Instanzen über API Aufrufe • Postgres-Fork nutzt spaltenbasierte Datenbank und massive parallele Verarbeitung 62 Analytische Datenspeicher Data Factory - Data Lake Analytics (Beta) •Data Lake (Beta) – Store & Analytics – VerteilterSpeicher- und AnalysedienstgroßerDaten – U-SQL– TSQLundC# – VisualStudioUnterstützung – DynamischeSkalierung – VerteilteHardwareund Parallelisierunggänzlich abstrahiert 63 Analytische Datenspeicher SQL Data Warehouse (Beta) • Unabhängige Skalierung von Compute- und Speicherressourcen innerhalb von Sekunden • Vielfältige SQL ServerFunktionalität mit T-SQL Abfragen 64 Analytische Datenspeicher Google Big Query •SQL Querys auf Terabyte von Daten •Import/Export Mechanismen •Bezahlung nach Datenmenge der Query •Keine Server •Browsertool vorhanden (sonst REST oder CLI) - SDK für .Net, Java, Python, Go 65 Analytische Datenspeicher AWSRedshift Beschreibung • • Postgres Fork MassivParallel • • StoreundAnalytics U-SQLalsMischung vonC#und T-SQL Preise • $0.25proStundefür dc1.large $0.85proStundefür ds2.xlarge • AnalyticsEinheit • 0,017$/Minute • Abgeschlossener Auftrag • 0,025$ • Azure DataLake BigQuery Dienst • • • Serverless PayperQuery $5proqueryed TB $0.02perGBSpeicher $0.01per200MBInsert SQL-DWH:ab0,70$/h 66 Analytische Datenspeicher Dienst AmazonRedshift Azure DataLake BigQuery Bewertung Bedienung:☆+ Lifecycle Management: ☆☆ Möglichkeiten:☆☆ Bedienung:☆☆☆ Lifecycle Management: ☆☆ Möglichkeiten:☆☆☆ Bedienung:☆☆+ Lifecycle Management: ☆☆ Möglichkeiten:☆☆ - KeineEntwicklungsunterstützung imWebInterfaceoder Entwicklungsumgebung +VisualStudioUnterstützung +Strukturierteund SemistrukturierteDaten +WebTooling 67 DEMO TIME 68 AWS Redshift – und Kinesis als Quelle 69 Azure Data Lake Analytics 70 GCP Big Query 71 Data Presentation 72 Datenvisualisierung • Daten Präsentieren • • Umfangreiche Visualisierungen Dashboards und Reports über Web • • • SaaS Anbindung an Datenbanken Real-Time Anbindung 73 Datenvisualisierung Dienst AmazonQuickSight Beschreibung • MicrosoftPowerBi (keinTeil vonAzure aber gutintegrierbar) Beta(nurfür ausgewählte Kunden) • • • GoogleDataStudio360 (beta) EchtzeitBImitStream • Analyticsmöglich Anbindungan Datenbankenund andereDatenspeicher Beta(nurfür ausgewählteKunden) Alternativ guteIntegrationvonBIToolswieTableau,Qlik undeinigen anderen 74 Datenvisualisierung Dienst AmazonQuickSight Bewertung MicrosoftPowerBi GoogleDataStudio360 (keinTeil vonAzure aber gutintegrierbar) (beta) Bedienung:☆+ Möglichkeiten:☆+ Bedienung:☆☆☆ Möglichkeiten:☆☆☆ Bedienung:☆+ Möglichkeiten: ☆+ - Closed Beta +VieleDatenquellen +On-PremEntwicklungmöglich - Beta 75 DEMO TIME 76 Power Bi – Daten von Stream Analytics 77 Google Data Studio https://datastudio.google.com/#/reporting/0B_U5RNpwhcE6bzVYT2FSNmRBUWc 78 „Unterm Strich lässt sich sagen, dass Microsoft aufgrund seiner PaaSHistorie technologisch in diesem Bereich einen deutlichen Vorsprung hat. Amazon AWS hingegen ist derzeit noch der unumstrittene Innovationsund Marktführer im IaaS-Umfeld.“ René Büst - Senior Analyst und Cloud Practice Lead bei Crisp Research http://www.tecchannel.de/a/amazon-web-services-versus-microsoft-windows-azure,2071501,3 79 Vergleich der Cloud Provider Für diesen Use Case hat Microsoft die Nase vorn AmazonWeb Services MicrosoftAzure GoogleCloud Platform Stream ☆☆ ☆☆☆ ☆☆ Orchestration ☆☆+ ☆☆ - MPP ☆☆ ☆☆+ ☆☆+ Datenvisualisierung ☆+ ☆☆☆ ☆+ 80 Demnächst auch als Artikelserie auf: blog.inovex.de Regelmäßige Beiträge zu den aktuellsten TechnologieThemen rund um Web, Mobile, Analytics, Data Center & Co. 81 Vielen Dank Stefan Kirner & Thomas Neureuther inovex GmbH Ludwig-Erhard-Allee 6 76131 Karlsruhe [email protected] [email protected] SolcheProjekteund Technologiensindfürdich interessant? Wirsuchen CloudSolution Architects und Werkstudenten fürDataManagement&Analytics UndvieleandereJobsauf https://www.inovex.de/de/karriere /stellenangebote