APRAXIE 1 Erstellt von Theres Fernando und Melanie Kuhlmann.
Team: Felix Gessert, Florian Bücklers, Hannes Kuhlmann ... · Bloomfilter 4,5 Jahre Forschung &...
Transcript of Team: Felix Gessert, Florian Bücklers, Hannes Kuhlmann ... · Bloomfilter 4,5 Jahre Forschung &...
Team: Felix Gessert, Florian Bücklers, Hannes Kuhlmann, Malte Lauenroth, Michael Schaarschmidt
19. August 2014
Präsentationwird geladen
Durchschnitt: 9,3s
Das Ladezeitproblem
Loading…
-1% Umsatz
100 ms
-9% Seitenbesuche
400 ms500 ms
-20% Traffic & Umsatz
1s
-7% Konversionen
Langsame Apps und Webseiten schaden
allen wichtigen Business-Metriken
...aber wo liegt das technische Problem?
Stand der TechnikZwei Engpässe: Latenz und Verarbeitung
Hohe Latenz
Hohe Verarbeitungszeit
Problem: Netzwerklatenz
I. Grigorik, High performance browser networking. O’Reilly Media, 2013.
Problem: Netzwerklatenz
I. Grigorik, High performance browser networking. O’Reilly Media, 2013.
2× Bandbreite = gleiche Ladezeit
½ Latenz ≈ ½ Ladezeit
Unsere LösungGlobales Verteilen und Zwischenspeichern von Daten
Niedrige Ladezeit
Keine Verarbeitungszeit
Unsere LösungSkalierbarkeit und Ausfallsicherheit
4,5 JahreForschung & Entwicklung
Neue AlgorithmenDatenaktualität erstmals gelöst
VeralteteDaten
InnovationProblem: durch Änderungen veralten Daten
InnovationLösung: Baqends Algorithmus aktualisiert Daten
Bloomfilter
4,5 JahreForschung & Entwicklung
Neue AlgorithmenDatenaktualität erstmals gelöst
aktualisierenIst noch aktuell? 1 0 11 0 0 10 1 1
InnovationLösung: Baqends Algorithmus aktualisiert Daten
F. Gessert, F. Bücklers, und N. Ritter, „ORESTES: a ScalableDatabase-as-a-Service Architecture for Low Latency“, in CloudDB 2014, 2014.
F. Gessert und F. Bücklers, „ORESTES: ein System für horizontal skalierbaren Zugriff auf Cloud-Datenbanken“, in Informatiktage 2013, 2013.
F. Gessert, S. Friedrich, W. Wingerath, M. Schaarschmidt, und N. Ritter, „Towards a Scalable and Unified REST API for Cloud Data Stores“, in 44. Jahrestagung der GI, Bd. 232, S. 723–734.
F. Gessert, M. Schaarschmidt, W. Wingerath, S. Friedrich, und N. Ritter, „The Cache Sketch: Revisiting Expiration-basedCaching in the Age of Cloud Data Management“, in BTW 2015.
F. Gessert und F. Bücklers, Performanz- und Reaktivitätssteigerung von OODBMS vermittels der Web-Caching-Hierarchie. Bachelorarbeit, 2010.
F. Gessert und F. Bücklers, Kohärentes Web-Caching von Datenbankobjekten im Cloud Computing. Masterarbeit 2012.
W. Wingerath, S. Friedrich, und F. Gessert, „Who Watches theWatchmen? On the Lack of Validation in NoSQLBenchmarking“, in BTW 2015.
M. Schaarschmidt, F. Gessert, und N. Ritter, „TowardsAutomated Polyglot Persistence“, in BTW 2015.
S. Friedrich, W. Wingerath, F. Gessert, und N. Ritter, „NoSQLOLTP Benchmarking: A Survey“, in 44. Jahrestagung der Gesellschaft für Informatik, 2014, Bd. 232, S. 693–704.
F. Gessert, „Skalierbare NoSQL- und Cloud-Datenbanken in Forschung und Praxis“, BTW 2015
Wie setzt man
als Entwickler die Technologie ein?
Backend-as-a-Service
DB.Tankstellen.find()
.near("location", myLoc, 5000)
.lessThen("closing", time)
.greaterThen("opening", time)
.descending("price")
.resultList();
Backend-as-a-Service
=
+
Datenbank Cloud Code
Technische RealisierungDie ORESTES Plattform
Internet
Cache Sketch
Reverse-ProxyCaches
OrestesServers
Desktop
Mobile
TabletContent-Delivery-Network
Smarte Polyglotte Persistenz sucht
die passende Speicherung aus
Technische RealisierungDie ORESTES Plattform
Internet
Cache Sketch
Reverse-ProxyCaches
OrestesServers
Desktop
Mobile
TabletContent-Delivery-Network
Cloud Code, automatisches
Caching & Autoscaling
Technische RealisierungDie ORESTES Plattform
Internet
Cache Sketch
Reverse-ProxyCaches
OrestesServers
Desktop
Mobile
TabletContent-Delivery-Network
Optimierte Performace, Verfügbarkeit
und Skalierbarkeit durch HTTP Caching
Technische RealisierungDie ORESTES Plattform
Internet
Cache Sketch
Reverse-ProxyCaches
OrestesServers
Desktop
Mobile
TabletContent-Delivery-Network
REST API für beliebige Endgeräte
Technische RealisierungDie ORESTES Plattform
Internet
Cache Sketch
Reverse-ProxyCaches
OrestesServers
Desktop
Mobile
TabletContent-Delivery-Network
IaaS-Cloud
auf
CDN
auf
Wieviel bringt es?Ladezeitvergleich für eine praktische Anwendung
0,7
s 1,8
s 2,8
s 3,6
s
3,4
s
CALIFORNIEN
0,5
s
1,8
s 2,9
s
1,5
s
1,3
s
FRANKFURT
0,6
s
3,0
s
7,2
s
5,0
s 5,7
s
SYDNEY
0,5
s
2,4
s
4,0
s
5,7
s
4,7
s
TOKYO
+156%
0,5s
1,3s
FRANKFURT
1 4 020
purge(obj)
hashB(oid)hashA(oid)
31 1 110Flat(Counting Bloomfilter)
hashB(oid)hashA(oid)
BrowserCache
CDN
1
20.000 Updates
Bloomfilter 11 KByte klein
Was passiert im Detail?Der Algorithmus
Wie werden StaleReads verhindert?
Ladezeitengelöst
Doch was ist mit
Echtzeit-Daten?
Queries
Baqend Stream Processing System
BeliebigeDaten
Baqend Real-TimeAPI: die Komplexität wird verborgen
stream=DB.News.find().stream();stream.on("add", onNews);stream.on("remove", onRemove);
Continuous Queries, Push Notifications,
Alerts, Monitoring,…
Baqend Real-TimeBeispiel: dpa
Das Produkt:
Baqend Cloud
Gemanagter Backend-
as-a-Service Cloud Dienst
Das Produkt:
Baqend Enterprise
Lizensierte Software für
on-premise deployments
Das Produkt:
Baqend Community Edition
Freie Version für kleine &
private Projekte
Baqend CloudPay-as-you-go Preismodell
Starter Business Enterprise Individual
0 €+1 €
for any 20 €+1 €
for any 200 €+1 €
for any 1.000 €+1 €
for any
Lesende Anfragen (T)
100 20 500 30 7.000 100 20.000 150
Schreibende Anfragen (T)
50 10 250 15 3.500 50 10.000 75
DownloadVolumen (GB)
4 2 20 4 200 4800 4
cached 1.200 8
Datenbank im Monat (GB)
2 2 10 3 30 4 100 4
File storage im Monat (GB)
5 20 100 25 1.000 25 5.000 33
Was passiert als nächstes?Baqend Roadmap
Baqend Enterprise
SoftwarepaketBaqend
Cloud-Service
Als Proof of Concept
Auch als Community Edition verfügbar
Mit umfangreichem Free Tier
2015Q1-Q4
2016Q1
2016Q1
Eng betreute
Pilotprojekte
www.baqend.com
Ziel mit InnoRampUpUnsere Vision:
Apps und Webseitenohne Ladezeiten