Doug Shelley from Tesora gave a presentation on OpenStack Trove and Database as a Service (DBaaS) at the OpenStack Toronto Meetup. He discussed the challenges of traditional database management versus cloud databases, and introduced OpenStack Trove as an open source DBaaS solution like Amazon RDS. Trove provides automated provisioning, management and scaling of relational and non-relational databases running on OpenStack. Recent improvements to Trove were highlighted as well as upcoming features planned for the Newton release.
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Introduction to OpenStack Trove & Database as a Service
1. Intro to OpenStack Trove &
Database as a Service
OpenStack Toronto Meetup
March 30, 2016
Doug Shelley, VP Product Development, Tesora
2. A word about our sponsors
• Tesora, the Trove company
• Leading contributor to Trove
• Makers of Tesora “DBaaS Platform”
– Enterprise product based on Trove
– Additional capabilities
– Additional datastores
– Support and Services
• Located in Boston and Toronto
– We’re hiring
3/30/2016
Intro to OpenStack Trove & DBaaS
OpenStack Toronto Meetup
2
3. Today’s Database Challenges
3/30/2016
Intro to OpenStack Trove & DBaaS –
OpenStack Toronto Meetup
3
“I just don’t
understand these
developers...”
“I only need it for
a couple of weeks”
“I’ll just use AWS”
“I need my environment
NOW”
“I need a NoSQL DB
for my app to scale”
“I have to release it
next month or else”
Developer IT Guy
4. Today’s Database Challenges
3/30/2016
Intro to OpenStack Trove & DBaaS –
OpenStack Toronto Meetup
4
“These Ops guys
don’t get it...”
“We have no idea what
they are putting on the
public cloud”
“I know that
they are putting our
customer data at risk”
“Why can’t they
just use Oracle?”
“My budget
and team aren’t getting
any bigger”
“We need time to
do it right”
Developer IT Guy
5. Traditional IT
• Provisioning by admins
• Database management by
specialists
• Waterfall development
• Few large machines /
bare metal
• Oracle Enterprise licenses
• Captive audience
Cloud
• Self Service Provisioning
• Developers manage their own
databases
• Agile development
• Many small machines /
virtualization
• Many data management
technologies
• Competition with AWS
Transformation of Cloud Data Management
3/30/2016
Intro to OpenStack Trove & DBaaS
OpenStack Toronto Meetup
5
6. The Solution: Database as a Service
• The delivery of database software &
related storage “as-a-service”
• Available on-demand, without any
hardware or software installation
or configuration
• A fully managed service maintained &
administered by the service provider
3/30/2016
Intro to OpenStack Trove & DBaaS
OpenStack Toronto Meetup
6
7. Amazon is demonstrating the importance of DBaaS
• DynamoDB was the fastest growing service in AWS history in 2012
– Werner Vogels, Amazon CTO, AWS Blog June 2012
• Redshift is now the fastest growing AWS service ever
– Werner Vogels, Amazon CTO, The Register, April 2015
• 45% of Amazon customers have implemented and are expanding use of RDS
– Jeffrey Hammond, Forrester Blog, September 2013
• AWS database business currently on a $1 billion revenue run rate
– Andy Jassy, the SVP of AWS - TechCrunch, October 2015
• Amazon’s #1 hiring focus – 84 open positions in DBaaS in November 2015
– Deutsche Bank Markets Research - NetworkWorld, November 2015
3/30/2016
Intro to OpenStack Trove & DBaaS –
OpenStack Toronto Meetup
7
8. What is Trove? RDS for OpenStack
…and DynamoDB …and RedShift
3/30/2016
Intro to OpenStack Trove & DBaaS
OpenStack Toronto Meetup
8
Amazon AWS OpenStack
EC2
SwiftS3
DynamoDB RedShift
CinderEBS
Nova
…
Trove
RDBMS
NoSQL DW
RDS
…
…and API’s
for DevOPs
9. OpenStack Trove Mission Statement
3/30/2016
Intro to OpenStack Trove & DBaaS –
OpenStack Toronto Meetup
9
The OpenStack Open Source Database as a Service Mission:
To provide scalable and reliable Cloud Database as a Service
provisioning functionality for both relational and non-
relational database engines, and to continue to improve its
fully-featured and extensible open source framework.
https://wiki.openstack.org/wiki/Trove
10. What is OpenStack Trove?
• Provisioning
– Launching a new database instance
• Complex Database Topologies
– Clustering, Replication
• Automation
– Backup & Restore, Failover, Resizing, Cluster Scaling
• Multiple Database Technologies, Common API’s
– Relational, Non-Relational, … (mostly FOSS)
• Management Interface
– CLI, REST API, Web based UI
3/30/2016
Intro to OpenStack Trove & DBaaS –
OpenStack Toronto Meetup
10
11. Complete Database Lifecycle Management
3/30/2016
Intro to OpenStack Trove & DBaaS
OpenStack Toronto Meetup
11
Manage
• Manage schemas
• Create replicas for
scale & availability
• Backup/restore
Provision
• On demand
• Wide DB selection
• Clusters & single
instances
Tune
• Manage log files
• API’s to tune fleets of servers,
not just single instances
• Sane defaults
Secure
• Users/permissions
• Restricted root access
12. The Trove Architecture
3/30/2016
Intro to OpenStack Trove & DBaaS –
OpenStack Toronto Meetup
12
Glance Storage
Guest Image
Operating System
Database Software
Trove Guest Agent
Trove
Trove API
Trove Conductor
Trove Task Manager
Nova
Cinder
Swift
Neutron
Keystone
Glance
Application
Nova Instance
Operating System
Database
Software
Trove Guest Agent
Storage
13. The data plane and the management plane
3/30/2016
Intro to OpenStack Trove & DBaaS –
OpenStack Toronto Meetup
13
14. Datastore-agnostic code in Trove
Controller and Dashboard
Datastore specific code isolated
to guest agents
Trove Multi-Datastore Architecture
3/30/2016
Intro to OpenStack Trove & DBaaS
OpenStack Toronto Meetup
14
Trove
Controller
Trove
Dashboard
(Horizon)
Guest Agent
Guest
Agent
Guest Agent Guest Agent
Guest Agent Guest Agent Guest Agent
Guest
Agent
Guest
Agent
API
Task
Manager
Conductor
15. Multi-database – support for 13 different databases
3/30/2016
Intro to OpenStack Trove & DBaaS
OpenStack Toronto Meetup
15
SQL NoSQL
16. What’s new in Mitaka
• Cassandra clustering, backup & restore, configuration groups, user
functions
• CouchDB backup and restore, user functions
• DB2 backup and restore
• Improvements to Mongo Cluster grow/shrink support
• Extend MySQL replication to include MariaDB GTID replication
• Percona XtraDB Cluster grow/shrink support, root enable
• Vertica configuration groups, cluster grow/shrink
• Improved Ceilometer notifications
• Bug fixes
3/30/2016
Intro to OpenStack Trove & DBaaS –
OpenStack Toronto Meetup
16
17. What’s on deck for Newton
• Here are some projects currently under consideration
– Guest upgrade support
– Support for anti-affinity of replica/cluster nodes
– Extend persistent storage to include more than Cinder/Ephemeral
– Python 3 support
– Management client for Trove, use the OpenStack client
– Filter available volume types by datastore
– Guest improvements
• Incremental backup, streaming replication for PostgreSQL
• Clustering for Couchbase
3/30/2016
Intro to OpenStack Trove & DBaaS –
OpenStack Toronto Meetup
17
18. Let’s see a demo…
3/30/2016
Intro to OpenStack Trove & DBaaS –
OpenStack Toronto Meetup
18
19. Learn More about Trove
• Trove Wiki – https://wiki.openstack.org/wiki/Trove
• Trove Source – https://git.openstack.org/cgit/openstack/trove
• On IRC - #openstack-trove
• Getting Started Videos – http://tesora.com/videos/
• Download Tesora Platform - http://tesora.com/downloads
• Trove Day
– http://tesora.com/troveday
– http://slideshare.net/tesoracorp
• LinkedIn - OpenStack Trove Group
3/30/2016
Intro to OpenStack Trove & DBaaS –
OpenStack Toronto Meetup
19
Contact information
Contact Tesora
info@tesora.com
www.tesora.com
@tesoracorp
Contact Doug
doug@tesora.com
www.tesora.com
@dougshelley66
IRC: dougshelley66
20. • Official OpenStack event
• Community-driven
• Focus on enterprise users
• Retail
• Financial services
• Telecom
OpenStack East – August 23-24 - New York City
20
More at OpenStackEast.com
3/30/2016
Intro to OpenStack Trove & DBaaS –
OpenStack Toronto Meetup
Editor's Notes
Should come directly after the main architecture slide