Cloud Data Management - Willkommen in der Abteilung … · Isolierter Bereich in AWS Cloud,...

23
Cloud Data Management Kapitel 1: Einführung Dr. Anika Groß Wintersemester 2016 Universität Leipzig http://dbs.uni-leipzig.de/

Transcript of Cloud Data Management - Willkommen in der Abteilung … · Isolierter Bereich in AWS Cloud,...

Cloud Data Management

Kapitel 1: Einführung

Dr. Anika Groß

Wintersemester 2016

Universität Leipzig

http://dbs.uni-leipzig.de/

Cloud Computing: Hype

• Google Trends (Interesse im zeitlichen Verlauf)

Gartner Hype Cycle for Emerging Technologies 2015

Bildquelle: http://2s7gjr373w3x22jf92z99mgm5w-wpengine.netdna-ssl.com/wp-content/uploads/2015/08/Hype-Cycle_2015_1.png

Gartner Emerging Technology Hype Cycle

Cloud Computing 2008-2014

http://venturebeat.com/2014/05/29/augmented-reality-wheres-the-venture-capital/

„Technologischer Auslöser“

„Gipfel der überzogenen Erwartungen“

„Tal der Enttäuschungen“

„Pfad der Erleuchtung“

„Plateau der Produktivität“

156%

(40%)

(20%)

0%

20%

40%

60%

80%

100%

120%

140%

160%

180%

200%

220%

01.01.2011 01.01.2012 01.01.2013 01.01.2014 01.01.2015 01.01.2016

BVP Cloud Index42 Publicaly Traded Companies

Indexed as of Jan. 2011 | @ 10/05/2016

BVP Cloud Index Nasdaq Index S&P Index Dow Jones

BVP Cloud Computing Index

https://www.bvp.com/strategy/cloud-computing/index

• Verfolgt die wöchentlichen Marktschwankungen der

führenden Public Cloud Unternehmen

• Top Public Cloud Unternehmen > 100 Milliarden USD Marktkapital

Cloud Computing: Definition

• “Cloud computing is a model for enabling convenient, on-demand network

access to a shared 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 Definition of Cloud Computing]

• “Cloud computing is using the internet to access someone else's software

running on someone else's hardware in someone else's data center”

(Lewis Cunningham)

• Externe Bereitstellung von IT-Infrastrukturen sowie Applikations-Hosting

über das Internet (bzw. Intranet)

Cloud Computing: “Definition”

• "The interesting thing about cloud computing is that we've redefined cloud computing to

include everything that we already do. I can't think of anything that isn't cloud computing

with all of these announcements. The computer industry is the only industry that is more

fashion-driven than women's fashion. Maybe I'm an idiot, but I have no idea what anyone

is talking about. What is it? It's complete gibberish. It's insane. When is this idiocy going

to stop?” (Larry Ellison, CEO Oracle)

• “Cloud computing is simply a buzzword used to repackage grid computing and utility

computing, both of which have existed for decades.” (whatis.com)

03/2011

04/2015

Cloud Computing: Eigenschaften

• On-demand self-service

– automatisches und bedarfsorientertes Mieten/Bereitstellen von Ressourcen

– Illusion “unendlicher” verfügbarer Ressourcen

• Broad network access

– standardisierter Zugriff über Internet für heterogene Clients

• Ressource pooling (Virtualisierung)

– gemeinsame Nutzung von Ressourcen durch viele Nutzer (multi-tenant)

– Nutzer hat i.Allg. kein Wissen über exakten Ort der genutzten Ressourcen

• Rapid elasticity (“Elastizität”)

– schnelle (z.T. automatische) Belegung/Freigabe von Ressourcen nach Bedarf

(„Hinzuschalten“ weiterer Rechner)

• Measured service

– Protokollierung (und Optimierung) der Ressourcennutzung

– Bezahlmodelle auf Nutzungsbasis möglich (CPU Zyklen, Speicherplatz, ...)

Elastizität

• Dynamische Anpassung der Ressourcen an Bedarf

Quelle: Eran Levin: Running Your Database in the Cloud

Cloud Computing: Vorteile

• Vorteile Cloud User

– Kein Einrichten/Betreiben eigener Rechenzentren

– Keine langfristige Ressourcenplanung

– Keine hohen Vorabinvestitionen - pay per use

– Verspricht wesentliche Kosteneinsparungen (u.a. für Startups)

• Vorteile Cloud Provider

– Aufteilung verfügbarer Ressourcen auf mehrere Kunden

– Große Rechenzentren (50.000 Server) haben im Vergleich zu mittelgroßen (1000

Server) nur 1/5 - 1/7 der Kosten (pro Server)

– Standortvorteile: Elektrizitätspreise, Löhne, Steuern, ...

– „Green Computing“

– Bessere Auslastung der Clouds gegenüber lokalen Rechenzentren

Quelle: Skript zur Vorlesung “Mehrrechner-Datenbanksysteme” (Prof. Rahm, WS09/10, Uni Leipzig)

Cloud Computing: Service Modelle

• Infrastructure as a Service (IaaS)

– Bereitstellung (Mieten) von CPU, Storage, Network ,... + Infrastruktur-Tools

– früher: Utility Computing

– Beispiele: Amazon Elastic Compute Cloud, Amazon Simple Storage Service

• Platform as a Service (PaaS)

– Framework zur Entwicklung und Bereitstellung von Applikationen

– Beispiele: Amazon Elastic MapReduce, Google App Engine

• Software as a Service (SaaS)

– Bereitstellung von (Web)-Applikationen zur sofortigen Nutzung,

– Standardisierte Software (z.B. Office-Produkte, CRM, ...)

– Beispiele: Google Apps (Docs, Mail, ...)

Gartner "Cloud Infrastructure as a Service“ 2016

Cloud Computing

Plattformen, Bsp.:

Cloud Provider Beispiel - Amazon Web Services (AWS)

• Seit Herbst 2014 neue Region in Frankfurt (weitere in Brasilien, China,

USA…): Datenschutz → Speichern innerhalb von Deutschland

• Services:– Compute

• Elastic Compute Cloud (EC2): anpassbare Rechenkapazität in der Cloud

• Elastic Load Balancing (ELB): verteilt eingehenden Anwendungsverkehr automatisch auf

mehrere EC2-Instanzen in der Cloud

– Networking

• Amazon Virtual Private Cloud (VPC): log. Isolierter Bereich in AWS Cloud, vollständige

Kontrolle über eigenes virtuelles Netzwerk

– Storage and Content Delivery Network

• Amazon Simple Storage Service (S3): Speicherung großer Datenmengen

– Database

• Amazon Relational Database Service (RDS): rel. DB Zugang, autom. Backups etc.

• Dynamo DB: NoSQL database service (key-value store)

– Analytics

• Elastic MapReduce: verwaltetes Hadoop Framework für „BigData“ Verarbeitung

– …

Cloud Computing: Deployment Modelle

• Private Cloud

– Infrastruktur gehört Kunden (Firma/Organisation)

– Beispiel: VMWare Cloud, MS Hyper-V

• Community Cloud

– Infrastruktur gehört mehreren Organisationen einer Community

– Beispiele: Google's "Gov Cloud“, OpenCirrus

• Public Cloud

– Infrastruktur gehört Cloud-Anbieter, Kunde mietet Infrastruktur

– Beispiel: Amazon Web Services, Google App Engine

• Hybrid Cloud

– z.B. Teile der Infrastruktur privat, Teile public

Weitere Aspekte der Cloud

• Datenschutz und Compliance

– Wer hat Zugriff auf die Daten?

– Welche Gesetze gelten für “deutsche Daten” auf “amerikanischen Servern”?

• Datensicherheit und Zuverlässigkeit

– Was passiert wenn ein Cloud-Anbieter pleite geht?

– Ist ein Cloud-Data-Center ein lohnendes Angriffsziel?

• Open Source und offene Standards

– Wie kann man innerhalb der Cloud “umziehen”?

– Wie kann man verschiedene Cloud-Anbieter “verknüpfen”?

• Weitere: Geschäftsmodelle, Nachhaltigkeit, ...

Weiterer Stromausfall in Amazons Cloud (Heise Online; 30.06.2012)

Innerhalb von kurzer Zeit hat Amazons Cloud-Computing-Dienst AWS (Amazon Web Services) erneut mit

einem Ausfall zu kämpfen: Wie schon vor zwei Wochen fiel in Amazons Rechenzentrum im Norden Virginias

am Freitag Abend (29.6. Ortszeit) der Strom aus. US-Berichten zufolge waren etliche Dienste, die Amazon

hostet, nicht mehr erreichbar, darunter der Streaming-Video-Anbieter Netflix, die Cloud-Entwicklungs-

Plattform Heroku und der Social-Media-Dienst Pinterest. …

http://www.heise.de/ix/meldung/Weiterer-Stromausfall-in-Amazons-Cloud-1629610.html

Facebook in Zahlen

• Nutzer (02/2015) – 1.4 Milliarden monatlich aktive Nutzer; >60% davon täglich eingeloggt

– 19% US, 81% Non-US; durchschnittlich 190 Freunde (11/2011)

• Durchschnittliche Aktivitäten (05/2013)– 300 Millionen Foto-Uploads pro Tag (ca. 3.500 pro Sekunde)

– 4.5 Milliarden „Likes“ pro Tag (ca. 52.000 pro Sekunde)

– 500 Millionen Terabyte Daten pro Tag verarbeitet

– Peaks: Olympia, Silvester, ….

• Infrastruktur: 180.000 Server (Schätzung 08/2012)

• Fragen– Wie groß wäre eine minimale Repräsentation des Freundschafts-Graphen?

– Welche Datenmenge an Fotos werden pro Sekunde hochgeladen?

https://zephoria.com/social-media/top-15-valuable-facebook-statistics/

http://www.facebook.com/press/info.php?statistics

http://www.datacenterknowledge.com/archives/2012/08/15/estimate-facebook-running-180000-servers/

http://allfacebook.de/zahlen_fakten/big-data-diese-datenmengen-verarbeitet-facebook-taglich/

http://www.datacenterknowledge.com/the-facebook-data-center-faq-page-2/

http://www.jodyjelas.com/wp-content/uploads/2011/02/facebook-stats.png

Verarbeitung großer Datenmengen

• Twitter

– 400 Millionen Tweets pro Tag

(ca. 4.500 pro Sekunde) (07/2012)

– >10.000 Tweets pro Sekunde

(Superbowl 2012)

• Ebay

– 2 Milliarden Seitenaufrufe pro Tag

– 10 PB Daten, u.a. zur Geschäftsanalyse (6/2012)

• CERN’s LHC (Large Hadron Collider)

– „Physicists must sift through the 30 petabytes or so of data produced annually to determine if

the collisions have thrown up any interesting physics.“

Bildquelle: https://community.hpe.com/t5/image/serverpage/image-id/32999iD48A69B4124853D6?v=v2

http://socialmediatoday.com/bradfriedman/469107/twitter-facts-and-stats

http://www.mediabistro.com/alltwitter/twitter-400-million-tweets_b23744

http://hughewilliams.com/2012/06/26/the-size-scale-and-numbers-of-ebay-com/

http://www.sourcelink.com/blog/guest-author-series/2012/08/18/the-5ws-and-

1h-of-big-data-%28part-2-of-2%29

http://home.web.cern.ch/about/computing

5 Vs - Big Data

Bildquelle: http://2.bp.blogspot.com/-y4TsfPRCL_c/U98ZY8Uh_OI/AAAAAAAAAIA/haZ63aHO-9E/s1600/Big-Data-5V.gif

Cloud Data Management

• Effiziente Verarbeitung großer Datenmengen in der Cloud, d.h.

– in einer preiswerten, verteilten (heterogenen) Infrastruktur

– mit konkurrierenden Schreib- und Lesezugriffen

– unter Berücksichtigung von Knoten- bzw. Netzwerkausfällen

– für beliebige Daten (unstrukturiert, semi-strukturiert, strukturiert)

• Parallele Datenbanksysteme ungeeignet ...

– teure, homogene Infrastrukur

– geringe Fehlertoleranz (z.B. Query-Restart)

– nur für strukturierte Daten (statisches Schema)

– begrenzte Skalierbarkeit (ca. 100 Knoten)

• ... dafür

– mächtige, einfache Anfragesprache

– ACID-Eigenschaften

– Datenunabhängigkeit

Inhalt der Vorlesung

• Kennenlernen von CDM-Techniken im Hinblick auf folgende Kriterien

• Skalierbarkeit: Anzahl der Nutzer (Sessions) oder Operationen die

gleichzeitig bedient/ausgeführt werden können

• Performanz: Optimale Ausnutzung der Ressourcen

• Antwortzeiten: Zeit pro Operation

• Verfügbarkeit: Wahrscheinlichkeit, dass System/Anwendung für

Nutzer/Operation verfügbar ist

• Fehlertoleranz: Einfluss von Ausfall von Ressourcen auf Nutzer/Operation

• Weitere

– Kosten

– Wartungsaufwand

Inhalt der Vorlesung

• Techniken zum effizienten Management großer un-/semi-strukturierter

Datenmengen

• Verteilte Architekturen zum

– Storage (Speicherung)

– Retrieval/Querying (Anfrageverarbeitung)

– Processing (Weiterverarbeitung)

• Algorithmen zur

– Optimierung von Joins

– Lastbalancierung

Inhaltsverzeichnis (vorläufig)

1. Einführung

• Cloud Computing

• Cloud Data Management

2. Infrastruktur und Dienste

• Hardware-Infrastrukur

• Software-Infrastruktur

• Cloud-Dienste

• IaaS, Virtualisierung

3. Verteilte Dateisysteme

• Google File System (GFS)

• Hadoop File System (HDFS)

4. MapReduce (MR)

• Konzept

• Hadoop

• Algorithmen in “MR-Form”

5. MapReduce und Datenbanken

• SQL und MR

• Effiziente Joins in MR

• Datenanalyse mit MR

• Kopplung von RDBMS mit MR

6. Optimierungstechniken für MapReduce

• Fehlerbehandlung

• Indexierung

• Lastbalancierung

7. Large-scale Datenanalyse

• YARN / MRv2

• Google Dremel

• Apache Spark

Literatur

• Tom White: Hadoop: The Definitive Guide, 4th Edition, O'Reilly Media, März 2015– Open Source Software-Framework für skalierbare, verteilte,

datenintensive Software

– Bausteine u.a. MapReduce, HBase, Hive und Pig

• Weitere, z.B.– Jimmy Lin, Chris Dyer: Data-Intensive Text Processing with

MapReduce, Morgan & Claypool,

• Einsatz von MapReduce für NLP

• u.a. Inverted Index, Graph Algorithmen, Expectation MaximationAlgorithmen

• Weitere Referenzen an jeweiliger Stelle– Wissenschaftliche Veröffentlichungen

– Vortragsfolien (z.B. SlideShare)