Date post: | 24-Jun-2015 |
Category: |
Technology |
Upload: | aws-germany |
View: | 897 times |
Download: | 8 times |
Amazon RedshiftData Warehouse als Cloud Service
Steffen KrauseTechnology Evangelist
Teilen Sie mir mit:
Was gut ist, was nicht
Was Sie bei unseren Veranstaltungen sehen
wollen
Was Sie sich von AWS wünschen
Ihr Feedback ist wichtig
Amazon DynamoDBSchneller, vorhersagbarer, hoch skalierparer NoSQL Data Store
Amazon RDSVerwalteter relationaler Datenbankdienst für
MySQL, Oracle und SQL Server
Amazon ElastiCacheIn-Memory Caching Service
Amazon RedshiftSchneller, mächtiger, voll verwalteter, Petabyte skalierbarer
Data Warehouse Dienst
Compute Storage
AWS Global Infrastructure
Database
Application Services
Deployment & Administration
Networking
AWS Datenbankdienste
Skalierbare, hochperformante Datenbanken in der Cloud
Amazon DynamoDBSchneller, vorhersagbarer, hoch skalierparer NoSQL Data Store
Amazon RDSVerwalteter relationaler Datenbankdienst für
MySQL, Oracle und SQL Server
Amazon ElastiCacheIn-Memory Caching Service
Amazon RedshiftSchneller, mächtiger, voll verwalteter, Petabyte skalierbarer
Data Warehouse Dienst
Compute Storage
AWS Global Infrastructure
Database
Application Services
Deployment & Administration
Networking
AWS Datenbankdienste
Skalierbare, hochperformante Datenbanken in der Cloud
Data Warehousing auf die AWS Art
• Keine Investitionskosten, Bezahlung nach Nutzung
• Sehr hohe Performance bei sehr niedrigem Preis
• Offen und flexibel, von populären Tools unterstützt
• Leicht zu nutzen, massiv skalierbar
Was wir gebaut haben…
Ein schnelles, mächtiges Data Warehouse, das bis in die Petabytes skaliert
Viel schneller
Viel billiger
Viel einfacher
Als verwalteter DienstAmazon Redshift
Dramatische I/O Reduktion
• Spaltenbasierte Speicherung
• Daten-Komprimierung
• Zone Maps
• Direct Attached Storage
• Große Datenblöcke
ID Alter Ort
123 20 Berlin
345 25 Leipzig
678 40 Dresden
Zeilen-Speicherung Spalten-Speicherung
Scan-Richtung
Amazon Redshift Architektur
• Leader Node– SQL Endpoint– Speichert Metadaten– Koordiniert Abfrageausführung
• Compute Nodes– Lokale spaltenbasierte Speicherung– Parallele Abfrageausführung– Load, Backup, Restore via Amazon S3– Paralleles Laden aus Amazon DynamoDB
• Einzel-Node-Version verfügbar
10 GigE(HPC)
LadenBackupRestore
SQL Clients/BI Tools
128GB RAM
16TB disk
16 cores
Amazon S3
JDBC/ODBC
128GB RAM
16TB disk
16 coresCompute Node
128GB RAM
16TB disk
16 coresCompute Node
128GB RAM
16TB disk
16 coresCompute Node
LeaderNode
jdbc:postgresql://mycluster.c7lp0qs37f41.us-east-1.redshift.amazonaws.com:8192/mydb
Optimierte Hardware
HS1.8XL: 128 GB RAM, 16 Cores, 24 HDDs, 16 TB nutzbarer Platz, 2 GB/sec Scanrate
16 GB RAM
2 TB Disk
2 Cores
HS1.XL: 16 GB RAM, 2 Cores, 3 HDDs, 2 TB nutzbarer Platz
• Optimiert für I/O intensive Workloads• Hohe Festplattendichte• Läuft in HPC Netzwerk - schnell• HS1.8XL verfügbar auf Amazon EC2
128 GB RAM
16 Cores
16 TB Disk
Klein anfangen, groß wachsen
Extra Large Node (HS1.XL)3 HDDs, 2 TB, 16 GB RAM, 2 Cores
Single Node (2 TB)
Cluster 2-32 Nodes (4 TB – 64 TB)
Eight Extra Large Node (HS1.8XL)24 HDDs, 16 TB, 128 GB RAM, 16 Cores, 10 GigE
Cluster 2-100 Nodes (32 TB – 1.6 PB)
8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL
8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL
8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL
8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL
8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL
8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL
8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL
8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL
8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL
8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL 8XL
XL
XL XL XL XL XL XL XL XL
XL XL XL XL XL XL XL XL
XL XL XL XL XL XL XL XL
XL XL XL XL XL XL XL XL
Hinweis: Knoten nicht in selber Skala
Parallelisierung
Redshift parallelisiert und verteilt alles
• Abfrage
• Laden
• Backup
• Restore
• Größenänderung
10 GigE(HPC)
LadenBackupRestore
SQL Clients/BI Tools
128GB RAM
16TB disk
16 cores
Amazon S3
JDBC/ODBC
128GB RAM
16TB disk
16 coresCompute Node
128GB RAM
16TB disk
16 coresCompute Node
128GB RAM
16TB disk
16 coresCompute Node
LeaderNode
Günstige Preise
Pro Stunde für HS1.XL Single Node
Effektiver Stundenpreis pro TB
Effektiver Jahrespreispro TB
On-Demand $ 0,850 $ 0,425 $ 3.723
1 Year reserviert $ 0,500 $ 0,250 $ 2.190
3 Year reserviert $ 0,228 $ 0,114 $ 999
Einfache Preise
Anzahl Nodes x Kosten pro Stunde
Keine Kosten für Leader Node
Keine Investitionskosten
Pay as you go
Demo: Cluster erstellen
Amazon Redshift verwendet SQL
• Industriestandard SQL• ODBC und JDBC Treiber für Datenzugriff
– verwendet Postgres 8.x Treiber– Die meisten PostgreSQL Features werden unterstützt– Siehe Dokumentation für Unterschiede
• INSERT/UPDATE/DELETE werden unterstützt– Aber Daten laden aus S3 oder DynamoDB mit COPY-Befehl ist
deutlich schneller – VACUUM-Befehl nach vielen DELETE oder UPDATE-Operationen
empfohlen
• Sort Key– Mehrere Spalten möglich– Definiert die Reihenfolge der Daten auf Platte– Ermöglicht das Überspringen von Blöcken bei Abfrage
• wenn Sort Key in WHERE-Klausel
– Wenn neue Daten häufig abgefragt werden: timestamp-Spalte als Sort Key• Distribution Key
– Eine Spalte– Definiert Verteilung der Daten im Cluster– Sollte für gleichmäßige Verteilung der Daten sorgen
• hohe, über die Zeit gleichmäßige Kardinalität
– Sollte in Abfragen nicht als „ist gleich“ Filter vorkommen– Join-Key für häufige Joins ist guter Kandidat– Wird keiner angegeben werden die Daten gleichmäßig per Row ID verteilt
Tabellendesign
Daten laden aus S3 oder DynamoDB
• Direktes Laden aus S3 oder DynamoDB unterstützt:copy customer from 's3://mybucket/customer.txt’ credentials 'aws_access_key_id=<your-access-key-id>;aws_secret_access_key=<your-secret-access-key>’ gzip delimiter '|’;
• Paralleles Laden von Daten– Für paralleles Laden Daten in mehrere Dateien aufteilen– Dateinamen mit gemeinsamem Präfix:
• customer.txt.1, customer.txt.2, …
– Große Dateien mit gzip komprimieren• Nach Möglichkeit Daten in Sortierung des Sort Key laden
Daten-Komprimierung
• Komprimierung spart Platz und Disk I/O
• COPY analysiert die Daten automatisch und wählt geeignete Komprimierung– Ausschnitt der Daten für Auswahl der
Komprimierung verwendet– Unterstützt: byte dictionary, delta, mostly n, run
length, text
• Kundenerfahrungen: 4-8-fache Komprimierung mit Echtdaten– 20x und mehr bei geeigneten Daten möglich
• ANALYZE COMPRESSION zur Anzeige des gewählten Algorithmus
analyze compression listing;
Table | Column | Encoding ---------+----------------+---------- listing | listid | delta listing | sellerid | delta32k listing | eventid | delta32k listing | dateid | bytedict listing | numtickets | bytedict listing | priceperticket | delta32k listing | totalprice | mostly32 listing | listtime | raw
Einfach zu benutzen
• Provisionierung in Minuten
• Abfrageperformance überwachen
• Vergrößern und Verkleinern durch Klick
• Eingebaute Sicherheit
• Automatische Backups
Größenänderung durch Klick
SQL Clients/BI Tools
128GB RAM
48TB disk
16 coresCompute Node
128GB RAM
48TB disk
16 coresCompute Node
128GB RAM
48TB disk
16 coresCompute Node
128GB RAM
48TB disk
16 coresLeaderNode
Cluster bleibt online (read only)
128GB RAM
48TB disk
16 coresCompute Node
128GB RAM
48TB disk
16 coresCompute Node
128GB RAM
48TB disk
16 coresCompute Node
128GB RAM
48TB disk
16 coresCompute Node
128GB RAM
48TB disk
16 coresLeaderNode
• Neuer Zielcluster im Hintergrund erstellt• Bezahlung nur für Quellcluster
Cluster bleibt online
SQL Clients/BI Tools• Der Cluster bleibt bei Größenänderungen
online
• Komplett automatisch– Daten automatisch neu verteilt
• Read Only Modus während Größenänderung
• Paralleles Kopieren der Daten (Node to Node)
• Automatische Endpoint-Wechsel per DNS
• Nur ein Cluster wird bezahlt
128GB RAM
48TB disk
16 coresCompute Node
128GB RAM
48TB disk
16 coresCompute Node
128GB RAM
48TB disk
16 coresCompute Node
128GB RAM
48TB disk
16 coresCompute Node
128GB RAM
48TB disk
16 coresLeaderNode
Demo: Verwaltung
Eingebaute Sicherheit
• SSL Verschlüsselung für Daten auf der Leitung
• Optional Verschlüsselung für Daten auf Festplatte– AES-256, Hardware-beschleunigt– Alle Blöcke auf Platte und in Amazon S3
verschlüsselt
• Kein direkter Zugriff auf Compute Nodes
• Amazon VPC unterstützt
10 GigE(HPC)
LadenBackupRestore
SQL Clients/BI Tools
128GB RAM
16TB disk
16 cores
128GB RAM
16TB disk
16 cores
128GB RAM
16TB disk
16 cores
128GB RAM
16TB disk
16 cores
Amazon S3
Kunden-VPC
InternerVPC
JDBC/ODBC
LeaderNode
Compute Node
Compute Node
Compute Node
Datensicherung und Verfügbarkeit
• Replikation innerhalb des Clusters und Backup nach S3 stellt mehrere Kopien der Daten zu jedem Zeitpunkt sicher
• Backups nach Amazon S3 sind kontinuierlich, automatisch und inkrementell– Entworfen für 11 Neunen Dauerhaftigkeit
• Kontinuierliche Überwachung und automatische Wiederherstellung im Fall von Festplatten- und Node-Fehlern
• Wiederherstellung von Snapshots in beliebige Availability Zones innerhalb einer Region
Datenquellen
Amazon DynamoDB
Amazon Elastic MapReduce
Amazon Simple Storage Service (S3)
Amazon Elastic Compute Cloud (EC2)
AWS Storage Gateway Service
Corporate Data Center
Amazon Relational Database Service (RDS)
Amazon Redshift
Mehr bald…
Integration mit verschiedenen Datenquellen
Daten laden und entladen
• Upload nach Amazon S3
• AWS Import/Export
• AWS Direct Connect
• Partner
Data Integration Systems Integrators
Mehr bald…
Analysewerkzeuge
JDBC/ODBC
Amazon Redshift
Verbindung mit Treibern von
PostgreSQL.org
Mehr bald…
Demo: Client Tools
Kundenbeispiel
Everyone NeedsSkilled People
At HomeAt WorkIn Life
Repeatedly
SkillPages
Who they are
What they can do
Your real life connections to them
Examples of what they can do
Data Architecture
Data Analyst
Raw Data
Get Data
Join via Facebook
Add a Skill Page
Invite Friends
Web Servers Amazon S3User Action Trace Events
EMRHive Scripts Process Content
• Process log files with regular expressions to parse out the info we need.
• Processes cookies into useful searchable data such as Session, UserId, API Security token.
• Filters surplus info like internal varnish logging.
Amazon S3
Aggregated Data
Raw Events
Internal Web
Excel Tableau
Amazon Redshift
Amazon Redshift ist• Ein voll verwalteter Data Warehouse Service• Schnell• Kostengünstig• Flexibel• Abrechnung nach Nutzung• Kompatibel mit bestehenden ETL und BI Tools
Zusammenfassung
Ressourcen
• Steffen Krause | [email protected] | @AWS_Aktuell
• http://aws.amazon.com/de/redshift• Getting Started Guide: http://docs.aws.amazon.com/redshift/latest/gsg/welcome.html• Setting Up SQL Workbench/J:
http://docs.aws.amazon.com/redshift/latest/mgmt/connecting-using-workbench.html • SQL Reference: http://docs.aws.amazon.com/redshift/latest/dg/cm_chap_SQLCommandRef.html
• Client Tools:• https://aws.amazon.com/marketplace/redshift/• https://www.jaspersoft.com/webinar-AWS-Agile-Reporting-and-Analytics-in-the-Cloud
• http://aws.amazon.com/de • Getting started with Free Tier:
http://aws.amazon.com/de/free/• 25 US$ credits für neue Kunden:
http://aws.amazon.com/de/campaigns/account/• Twitter: @AWS_Aktuell• Facebook:
http://www.facebook.com/awsaktuell • Webinare: http://aws.amazon.com/de/about-aws/events/• Slides: http://de.slideshare.net/AWSAktuell
Ressourcen
1. Was ist Amazon Web Services und wofür kann ich AWS nutzen2. Erste Schritte mit Amazon Web Services – von der Anmeldung bis
zur ersten Instanz3. Amazon Web Services 1*1 – welche Dienste gibt es wofür?4. Server in der Cloud – die AWS Compute-Dienste5. Daten speichern in der Cloud – die AWS Storage-Dienste6. Datenbanken in der Cloud – SQL und NoSQL7. Amazon Web Services für eCommerceAufzeichnungen http://aws.amazon.com/de/recorded-webinar/
Bisherige Webinare
• Big Data– 15.07.2013, 16 Uhr
• Wie kann man ein Unternehmens-Rechenzentrum um Cloud-Ressourcen erweitern? Netzwerke, Sicherheit, Ressource– 23.07.2013, 16 Uhr
• Die erste Woche mit AWS – 07.08.2013, 16 Uhr
• 8 Tipps für eine Cloud-Strategie – wie Unternehmen heute die Cloud einsetzen – 14.08.2013, 16 Uhr
• Optimieren Sie Ihre AWS Nutzung um Kosten zu sparen – 21.08.2013, 16 Uhr
• http://aws.amazon.com/de/about-aws/events/
Kommende Webinare