Team: Felix Gessert, Florian Bücklers, Hannes Kuhlmann ... · Bloomfilter 4,5 Jahre Forschung &...

Post on 26-Jun-2020

1 views 0 download

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