Overskrift her Navn på oplægsholder Navn på KU-enhed For at ændre ”Enhedens navn” og ”Sted og dato”: Klik i menulinjen, vælg ”Indsæt” > ”Sidehoved /
Data Sharing in the Cloud:
Scaling to the World, Unleashing
Creativity, and Generating Value?
Marcos Vaz Salles
Tekst starter uden punktopstilling For at få punkt-opstilling på teksten, brug forøg indrykning For at få venstre-stillet tekst uden punktopstilling, brug formindsk indrykning Overskrift her For at ændre ”Enhedens navn” og ”Sted og dato”: Klik i menulinjen, vælg ”Indsæt” > ”Sidehoved /
About the Speaker
•
Marcos Vaz Salles
•
Assistant Professor, University
of Copenhagen (
DIKU
)
•
Postdoc: Cornell University
•
PhD: ETH Zurich
•
Mission:
Find creative ways to
expand the reach of the 30+
years of top-level R&D invested
in database technology, broadly
defined
•
Examples:
Database
techniques for search and
Where does your most important
data live?
Where does your most important
data live?
Tekst starter uden punktopstilling For at få punkt-opstilling på teksten, brug forøg indrykning For at få venstre-stillet tekst uden punktopstilling, brug formindsk indrykning Overskrift her For at ændre ”Enhedens navn” og ”Sted og dato”: Klik i menulinjen, vælg ”Indsæt” > ”Sidehoved /
Historical Justification for Databases
•
Common applications
•
Record maintenance, banking,
government
•
Complex implementation
•
Concurrency, integrity,
durability, storage,
representation, …
•
Enough abstraction
•
Operating systems virtualize
low-level hardware
•
Competing platforms
•
No virtualization
of platform:
IBM, DEC, …
Data Sharing
(DBMS)
Data-Driven
Applications
Virtualization
(Operating Systems)
Platforms
(Hardware)
Tekst starter uden punktopstilling For at få punkt-opstilling på teksten, brug forøg indrykning For at få venstre-stillet tekst uden punktopstilling, brug formindsk indrykning Overskrift her For at ændre ”Enhedens navn” og ”Sted og dato”: Klik i menulinjen, vælg ”Indsæt” > ”Sidehoved /
Historical Justification for Databases
•
Common applications
•
Record maintenance, banking,
government
•
Complex implementation
•
Concurrency, integrity,
durability, storage,
representation, …
•
Enough abstraction
•
Operating systems virtualize
low-level hardware
•
Competing platforms
•
No virtualization
of platform:
IBM, DEC, …
Data Sharing
(DBMS)
Data-Driven
Applications
Virtualization
(Operating Systems)
Platforms
(Hardware)
But the Cloud today
is completely
Tekst starter uden punktopstilling For at få punkt-opstilling på teksten, brug forøg indrykning For at få venstre-stillet tekst uden punktopstilling, brug formindsk indrykning Overskrift her For at ændre ”Enhedens navn” og ”Sted og dato”: Klik i menulinjen, vælg ”Indsæt” > ”Sidehoved /
The Cloud Today
•
Common applications
•
Web Services, Data
Warehousing, Big Data
•
Complex implementation
•
Data consistency and
management, distribution,
scalability, fault tolerance …
•
Enough abstraction
•
Cloud IaaS virtualizes enormous
clusters of machines
•
Competing platforms
•
No virtualization
of platform:
Amazon, Microsoft, …
Data Sharing
(????)
Data-Driven
Applications
Virtualization
(Cloud IaaS)
Platforms
(Cloud Datacenter)
Tekst starter uden punktopstilling For at få punkt-opstilling på teksten, brug forøg indrykning For at få venstre-stillet tekst uden punktopstilling, brug formindsk indrykning Overskrift her For at ændre ”Enhedens navn” og ”Sted og dato”: Klik i menulinjen, vælg ”Indsæt” > ”Sidehoved /
The Cloud Today
•
Common applications
•
Web Services, Data
Warehousing, Big Data
•
Complex implementation
•
Data consistency and
management, distribution,
scalability, fault tolerance …
•
Enough abstraction
•
Cloud IaaS virtualizes enormous
clusters of machines
•
Competing platforms
•
No virtualization
of platform:
Amazon, Microsoft, …
Data Sharing
(????)
Data-Driven
Applications
Virtualization
(Cloud IaaS)
Platforms
(Cloud Datacenter)
Challenge: What
should be the new
Data Sharing
Abstraction in the
Cloud?
Tekst starter uden punktopstilling For at få punkt-opstilling på teksten, brug forøg indrykning For at få venstre-stillet tekst uden punktopstilling, brug formindsk indrykning Overskrift her For at ændre ”Enhedens navn” og ”Sted og dato”: Klik i menulinjen, vælg ”Indsæt” > ”Sidehoved /
From Databases to Dataclouds
•
While there were
data
bases
in the past, we will
have
data
clouds
in the future
•
Data
bases
à Data
base
Management System (
DBMS
)
•
Data
clouds
à Data
cloud
Management System (
DCMS
)
•
Emerging application systems already
being built!
•
But at high cost
Tekst starter uden punktopstilling For at få punkt-opstilling på teksten, brug forøg indrykning For at få venstre-stillet tekst uden punktopstilling, brug formindsk indrykning Overskrift her For at ændre ”Enhedens navn” og ”Sted og dato”: Klik i menulinjen, vælg ”Indsæt” > ”Sidehoved /
Emerging
Data
cloud Application Systems
•
Programmable news services
•
Example: Guardian.co.uk Open
Platform & MicroApps
•
Programmable social
networks
•
Example: Apps on Facebook
•
Programmable CRM
•
Example: Salesforce Platform
•
Far-fetched (?!) future
•
Programmable government
•
Programmable banking
Tekst starter uden punktopstilling For at få punkt-opstilling på teksten, brug forøg indrykning For at få venstre-stillet tekst uden punktopstilling, brug formindsk indrykning Overskrift her For at ændre ”Enhedens navn” og ”Sted og dato”: Klik i menulinjen, vælg ”Indsæt” > ”Sidehoved /
Emerging
Data
cloud Application Systems
•
Programmable news services
•
Example: Guardian.co.uk Open
Platform & MicroApps
•
Programmable social
networks
•
Example: Apps on Facebook
•
Programmable CRM
•
Example: Salesforce Platform
•
Far-fetched (?!) future
•
Programmable government
•
Programmable banking
•
Programmable
whoever-has-data
Data is a new
means of
production
Tekst starter uden punktopstilling For at få punkt-opstilling på teksten, brug forøg indrykning For at få venstre-stillet tekst uden punktopstilling, brug formindsk indrykning Overskrift her For at ændre ”Enhedens navn” og ”Sted og dato”: Klik i menulinjen, vælg ”Indsæt” > ”Sidehoved /
Challenges in
Data
clouds
and
DCMS
•
Programming, programming,
programming
•
Resources, resources, resources
Tekst starter uden punktopstilling For at få punkt-opstilling på teksten, brug forøg indrykning For at få venstre-stillet tekst uden punktopstilling, brug formindsk indrykning Overskrift her For at ændre ”Enhedens navn” og ”Sted og dato”: Klik i menulinjen, vælg ”Indsæt” > ”Sidehoved /
Challenges in
Data
clouds
and
DCMS
•
Programming, programming,
programming
•
Re-use or create new programming abstractions?
•
How to incorporate data into software engineering?
•
Resources, resources, resources
•
How to deal with virtualized environments and
abstract cost?
•
Scale, scale, scale
•
How to scale applications to petabytes automatically?
Career Opportunity:
DataCloud
Tekst starter uden punktopstilling For at få punkt-opstilling på teksten, brug forøg indrykning For at få venstre-stillet tekst uden punktopstilling, brug formindsk indrykning Overskrift her For at ændre ”Enhedens navn” og ”Sted og dato”: Klik i menulinjen, vælg ”Indsæt” > ”Sidehoved /
ClouDiA
: A
Clou
d
D
eployment
A
dvisor
•
Initial work on deployment
of
latency-sensitive
data
services in public clouds
•
Simulation analytics, e.g.,
multi-agent simulations
•
Search engines
•
Key-value stores
•
Acknowledgment
: Joint
work with Tao Zou, Ronan
LeBras, Alan Demers, and
Johannes Gehrke at Cornell
University, to appear at
Tekst starter uden punktopstilling For at få punkt-opstilling på teksten, brug forøg indrykning For at få venstre-stillet tekst uden punktopstilling, brug formindsk indrykning Overskrift her For at ændre ”Enhedens navn” og ”Sted og dato”: Klik i menulinjen, vælg ”Indsæt” > ”Sidehoved /
Latency-sensitive Data Services
•
Distributed, latency-sensitive applications
•
Goal: Time-to-solution
•
Goal: Service response time
•
Communication graph:
captures interaction
Tekst starter uden punktopstilling For at få punkt-opstilling på teksten, brug forøg indrykning For at få venstre-stillet tekst uden punktopstilling, brug formindsk indrykning For at ændre ”Enhedens navn” og ”Sted og dato”: Klik i menulinjen, vælg ”Indsæt” > ”Sidehoved /
Tekst starter uden punktopstilling For at få punkt-opstilling på teksten, brug forøg indrykning For at få venstre-stillet tekst uden punktopstilling, brug formindsk indrykning Overskrift her For at ændre ”Enhedens navn” og ”Sted og dato”: Klik i menulinjen, vælg ”Indsæt” > ”Sidehoved /
Latency in the Cloud
•
Mean latency measurement in Amazon EC2
•
100 large instances, 100
2
links, every hour, 10 days
Some links
have far
worse latency
than others
Mean link
latency is
fairly stable
over time
Tekst starter uden punktopstilling For at få punkt-opstilling på teksten, brug forøg indrykning For at få venstre-stillet tekst uden punktopstilling, brug formindsk indrykning Overskrift her For at ændre ”Enhedens navn” og ”Sted og dato”: Klik i menulinjen, vælg ”Indsæt” > ”Sidehoved /
Key Observations
•
Observation #1:
Avoid “bad” links
•
Typical communication graph requires less links than
complete graph
•
Deploy application nodes to instances carefully
•
Observation #2:
Over-allocate to get
“better” links
•
Say communication graph has n nodes
•
Allocate, e.g., 1.1n instances
•
Deploy and terminate extra 0.1n instances
Why do we care?
A)
Improve response time
B)
Spend less money
Tekst starter uden punktopstilling For at få punkt-opstilling på teksten, brug forøg indrykning For at få venstre-stillet tekst uden punktopstilling, brug formindsk indrykning Overskrift her For at ændre ”Enhedens navn” og ”Sted og dato”: Klik i menulinjen, vælg ”Indsæt” > ”Sidehoved /
Node Deployment by Example
•
Simulation analytics
•
Tick-based, synchronization end of every tick in a grid
•
Objective: Minimize worst link
Source:
LeBras, Zou
(partial)
Communication Graph
Costs:
1
2
3
Tekst starter uden punktopstilling For at få punkt-opstilling på teksten, brug forøg indrykning For at få venstre-stillet tekst uden punktopstilling, brug formindsk indrykning Overskrift her For at ændre ”Enhedens navn” og ”Sted og dato”: Klik i menulinjen, vælg ”Indsæt” > ”Sidehoved /
Node Deployment by Example
•
Simulation analytics
•
Tick-based, synchronization end of every tick in a grid
•
Objective: Minimize worst link
Communication
Graph
Source:
LeBras, Zou
Communication Graph
Costs:
1
2
3
1
2
3
4
5
6
7
8
9
1
2
3
4
5
6
7
8
9
Source:
LeBras, Zou
(partial)
Tekst starter uden punktopstilling For at få punkt-opstilling på teksten, brug forøg indrykning For at få venstre-stillet tekst uden punktopstilling, brug formindsk indrykning Overskrift her For at ændre ”Enhedens navn” og ”Sted og dato”: Klik i menulinjen, vælg ”Indsæt” > ”Sidehoved /
Node Deployment by Example
•
Simulation analytics
•
Tick-based, synchronization end of every tick in a grid
•
Objective: Minimize worst link
Communication
Graph
Source:
LeBras, Zou
Communication Graph
Costs:
1
2
3
1
2
3
4
5
6
7
8
9
1
2
3
4
5
8
7
6
9
LeBras, Zou
Source:
Tekst starter uden punktopstilling For at få punkt-opstilling på teksten, brug forøg indrykning For at få venstre-stillet tekst uden punktopstilling, brug formindsk indrykning Overskrift her For at ændre ”Enhedens navn” og ”Sted og dato”: Klik i menulinjen, vælg ”Indsæt” > ”Sidehoved /
Summary of Node Deployment
•
Objectives
•
Minimize cost of worst link
•
Minimize cost of longest path
•
Optimization Methods
•
Akin to graph embedding problem, but with
minimization goals
•
Mixed-integer programming (MIP) formulation for
both objectives
•
Constraint programming (CP) formulation also for
worst link
•
Greedy easy to beat
•
Network measurements
•
Staged message exchange to measure costs
Tekst starter uden punktopstilling For at få punkt-opstilling på teksten, brug forøg indrykning For at få venstre-stillet tekst uden punktopstilling, brug formindsk indrykning Overskrift her For at ændre ”Enhedens navn” og ”Sted og dato”: Klik i menulinjen, vælg ”Indsæt” > ”Sidehoved /
Experiments with ClouDiA on Amazon EC2
•
Workloads & Setup
•
Behavioral simulation
•
Fish simulation by Couzin et al., Nature
•
2D mesh
•
100 Amazon EC2 large instances
•
Minimize Worst Link objective
•
Synthetic aggregation workload
•
Models search engines, distributed text
databases
•
Multi-level aggregation tree
•
50 Amazon EC2 large instances
•
Minimize Longest Path objective
•
Key-value store workload
•
Bipartite graph of front-end servers and
storage servers
Tekst starter uden punktopstilling For at få punkt-opstilling på teksten, brug forøg indrykning For at få venstre-stillet tekst uden punktopstilling, brug formindsk indrykning Overskrift her For at ændre ”Enhedens navn” og ”Sted og dato”: Klik i menulinjen, vælg ”Indsæt” > ”Sidehoved /
Overall Improvement: All Workloads
•
15%-55% reduction of time
Tekst starter uden punktopstilling For at få punkt-opstilling på teksten, brug forøg indrykning For at få venstre-stillet tekst uden punktopstilling, brug formindsk indrykning Overskrift her For at ændre ”Enhedens navn” og ”Sted og dato”: Klik i menulinjen, vælg ”Indsæt” > ”Sidehoved /
Effect of Over-Allocation: Behavioral Simulation
•
Default uses first 100 instances always
Tekst starter uden punktopstilling For at få punkt-opstilling på teksten, brug forøg indrykning For at få venstre-stillet tekst uden punktopstilling, brug formindsk indrykning Overskrift her For at ændre ”Enhedens navn” og ”Sted og dato”: Klik i menulinjen, vælg ”Indsæt” > ”Sidehoved /
Wrap-up
•
Dataclouds and DCMS
•
Programming, programming,
programming
•
Resources, resources, resources
•
Scale, scale, scale
•
ClouDiA
•
An initial step in resource optimization
in public clouds
•
Next steps: Collaborate with us
to build a DCMS!
•
Tons of research challenges open
•
We are already collaborating with
Danish Geodata Agency (GST)
•
We are looking for partners