SlideShare a Scribd company logo
1 of 40
Download to read offline
The Elastically Scalable
     Database™



                           1	
  
20th Century Database

                                                        Powerful Query
                            9%

                       3%
                  4%
                                                        Language
                                  44%

            19%                                     Industry Standards

ORACLE
IBM
                                              Data Guarantees
Microsoft
Sybase                      21%


                                            Tools
Teradata
Others




                                          Employee Skills

                                        Existing Data
                                                                         2	
  
21st Century Problem
       Commodity Datacenters
                               ✗

                   Big Data ✗

             Powerful Query
                                            Language
       Modern Workloads ✗

                                         Industry Standards
       24x7 Operation ✗

                                    Data Guarantees
  Geo-distribution
                    ✗

                                   Tools
Developer
Empowerment ✗

                                Employee Skills

                             Existing Data
                                                              3	
  
Database Crisis



           Amazon           Flickr    Wikipedia

Facebook

                                      Google




                                        Source: Marc Bojoly   4	
  
Jim Starkey
“Elastically Scalable Transactions represent the biggest breakthrough
in database technology in 25 years”




                                     ‣  DEC RDB/ELN
                                     ‣  InterBase
                                     ‣  Firebird
                                     ‣  Falcon
                                     ‣  BLOBS
                                     ‣  MVCC


                                                                        5	
  
Emergent Database
                     Architecture

"    “An emergent
     behavior can
     appear when a
     number of
     simple entities
     operate in an
     environment,
     forming more
     complex
     behaviors as a
     collective.”
        "   - Wikipedia




                                      6	
  
NuoDB Plus One
"  Second machine
typically doubles TPS

"  Second machine is
added to live database
while it is running at
1,000’s of TPS

"  Performance increase is
immediate

"  BTW - you can take
either machine away and
                              Second	
  Machine	
  	
  
the database keeps
                              Instant	
  Performance	
  Increase	
  
running without data loss




                                                                       7	
  
Adding a Third Machine
"  Third machine
typically triples single
machine TPS

"  Third machine is
added to live database
while it is running at
1,000’s of TPS

"  Performance increase    Second	
  &	
  Third	
  Machine	
  	
  
is immediate               Instant	
  Performance	
  Increase	
  

"  BTW - you can take
any machine away and
the database keeps
running without data
loss




                                                                     8	
  
More Machines? Bring ‘em On

          Nodes
   TPS

MySQL
      1
     3,000
NuoDB
      1
     4,500
                   27,00
NuoDB
      9
                     0

"    Technical Details:
 TPS	
  
‣    2-9 Tx engines
‣    1 storage
     manager
‣    Best sustained TPS
     and # clients
                                            Number	
  of	
  Nodes	
  
     combination
‣    50% updates
            NuoDB running on 9 nodes was approx. 9x faster than MySQL running
            on 1 node.
            
                                                                           9	
  
Or Scale-out on IAAS

‣  Nuodb scales linearly
  on EC2
‣  Per-node
  performance on
  m1.large nodes           TPS	
  
  approx 50% of our
  commodity servers
‣  Just started on
  optimizing
‣  RDS runs on 1 node,
  and gets overloaded                Number	
  of	
  EC2	
  Nodes	
  

  with 10+ connections



                                                                        10	
  
Trek Palmer
Building An Elastically Scalable
   Database The Easy Way
Tonight’s Agenda
"   A Bit About Me
"   Introduction to NuoDB
"   Architecture Overview
"   Some Unnatural Acts
     "    Quick Demo
"    Beer




                                1
                                3	
  
A Bit About Me
"    A Refugee from Academia
     "     -Researched Programming Languages
     "     -Transactional Memory impl. and
          semantics
"    Worked on distributed metadata
     database for HDS HCP
     "     -Clustered appliance


                                               1
                                               4	
  
What is NuoDB?

"    Elastically scalable
"    Multi-tenant
"    Transactionally Consistent
"    Easy to Manage




                                  1
                                  5	
  
娜 graceful, like a cloud




                           1
                           6	
  
Architecture
"    Three tiers
     "    Each is independent    Management	
  
     "    Single model for all
          environments
     "    Extensible at          TransacEon	
  
          various
          points                  Handling	
  

                                   Storage	
  
Agents
"    Management tier
"    Provision hosts for use
"    Expose XML messaging for
     management
"    Make scripting and automation easy




                                          1
                                          8	
  
Brokers
"    Agent with additional special
     knowledge
"    At least one per domain
"    Redirects clients to TE
     "      -Clients need no knowledge of
          topology
     "      -Brokers are responsible for any load-
          balancing

                                                     1
                                                     9	
  
Transaction Engines
"    Peer-to-peer
"    In-memory
"    Multi-Version Concurrency Control
"    Asynchronous messaging (replication)
"    Atoms




                                            2
                                            0	
  
Storage Managers

"    Persistence points for atoms
"    Key-value backing stores
"     -Local FS, S3, HDFS
"    Independent archives




                                    2
                                    1	
  
And Now, Some Unnatural Acts




                               2
                               2	
  
Sharding, an Unnatural Act
"    The ideal DB application
                                   Scales	
  up	
  to	
  the	
  capacity	
  	
  
                                   of	
  a	
  single	
  node	
  
               client	
  

      DB	
  
                            What	
  if	
  you	
  need	
  more	
  read	
  	
  
               client	
  
                            and/or	
  write	
  throughput?	
  




                                                                                   2
                                                                                   3	
  
Sharding
"    Shard the DB among several nodes
     New	
  Client	
  Layer	
                Now	
  you	
  need	
  to	
  implement	
  
                                             consistency	
  in	
  your	
  applicaEon	
  
     Client1	
                Client2	
  

                                              TransacEonal	
  consistency	
  is	
  
        DB0	
                     DB1	
       very	
  very	
  hard	
  to	
  get	
  right	
  




                                                                                               2
                                                                                               4	
  
Other Sharding Bugbears
"    Global operations (searches, scans)
"     -Doing joins in the application
"     -Implementing Cursors
"     -Chunking and memory
     management
"    And, of course, adding or removing
     shards

                                           2
                                           5	
  
Scaling Shards
"    A recipe for changing the number of
     shards
"     1) Ask boss for permission
"     2) Provision hardware
"     3) Rewrite the app over 6 months
"     4) Hope / Pray


                                           2
                                           6	
  
NuoDB Solution
Management	
  
Client	
  

Domain

	
      Host A            Host B           Host C

        	
   Broker	
     	
   Agent	
     	
   Agent	
  




                                                            2
                                                            7	
  
NuoDB on a single node
 Management	
  
                      Client	
  
 Client	
  

 Domain

 	
      Host A                    Host B           Host C

         	
   Broker	
             	
   Agent	
     	
   Agent	
  

         Txn	
  Engine	
  
         Database A	

         Storage	
  
         Manager	
  




                                                                     2
                                                                     8	
  
NuoDB Scaling out
Management	
  
                     Client	
              Client	
         Client	
  
Client	
  

Domain

	
      Host A                    Host B                Host C

        	
   Broker	
             	
   Agent	
          	
   Agent	
  

        Txn	
  Engine	
           Txn	
  Engine	
  
        Database A	

        Storage	
                 Storage	
  
        Manager	
                 Manager	
  




                                                                         2
                                                                         9	
  
NuoDB ‘Adding a Shard’
 Management	
  
                      Client	
              Client	
         Client	
  
 Client	
  

 Domain

 	
      Host A                    Host B                Host C

         	
   Broker	
             	
   Agent	
          	
   Agent	
  

         Txn	
  Engine	
           Txn	
  Engine	
       Txn	
  Engine	
  
         Database A	

         Storage	
                 Storage	
             Storage	
  
         Manager	
                 Manager	
             Manager	
  




                                                                             3
                                                                             0	
  
NuoDB ‘Sharding’
"    Literally as simple as just adding
     nodes
"    No client code had to be harmed in
     the making of this distributed
     database
"      -Brokers hide topology changes
"      -NuoDB is transactionally consistent

                                              3
                                              1	
  
Eventual Consistency
"    Eventual consistency is latent
     inconsistency
"      -Not transactionally consistent
"      -Application porting is non-trivial
"      -Performance/Correctness tradeoff
     icky



                                             3
                                             2	
  
NuoDB Consistency
"    NuoDB is transactionally consistent
"    All the time, everywhere
"    When a transaction is committed,
     it’s guaranteed consistent
"    Tradeoff is between Performance and
     Availability



                                           3
                                           3	
  
Multi-Tenancy
"    Traditional databases monopolize a
     node
"    NuoDB supports many databases in a
     single pool of machines (a domain)
"    Each DB can be scaled as needed,
     independantly



                                          3
                                          4	
  
Multi-Tenancy Example
Management	
  
                            JDBC	
  Client	
  
Client	
  

Domain

	
      Host A              Host B               Host C

        	
   Broker	
       	
   Agent	
         	
   Agent	
  

        Txn	
  Engine	
     Storage	
  
                            Manager	
  
        Database A	





                                                                  3
                                                                  5	
  
Multi-Tenancy Example
Management	
                JDBC	
  Client	
  
Client	
  
                            JDBC	
  Client	
  
Domain

	
      Host A              Host B               Host C

        	
   Broker	
       	
   Agent	
         	
   Agent	
  

        Txn	
  Engine	
     Storage	
            Txn	
  Engine	
  
                            Manager	
  
        Database A	





                                                                     3
                                                                     6	
  
Multi-Tenancy Example
Management	
                JDBC	
  Client	
  
Client	
  
                            JDBC	
  Client	
  
Domain

	
      Host A              Host B               Host C

        	
   Broker	
       	
   Agent	
         	
   Agent	
  

        Txn	
  Engine	
     Storage	
            Txn	
  Engine	
  
                            Manager	
  
        Database A	

                            Storage	
            Txn	
  Engine	
  
                            Manager	
  
                                                   Database 1	




                                                                     3
                                                                     7	
  
Multi-Tenancy Example
Management	
                JDBC	
  Client	
  
                                                 SQL	
  Client	
     ...	
  
Client	
  
                            JDBC	
  Client	
  
Domain

	
      Host A              Host B               Host C

        	
   Broker	
       	
   Agent	
         	
   Agent	
  

        Txn	
  Engine	
     Storage	
            Txn	
  Engine	
  
                            Manager	
  
        Database A
                            Storage	
            Txn	
  Engine	
  
                            Manager	
  
                                                  Database 1



                                                                               3
                                                                               8	
  
And now, a demo…
The Elastically Scalable
     Database™



                           40	
  

More Related Content

What's hot

Yes sql08 inmemorydb
Yes sql08 inmemorydbYes sql08 inmemorydb
Yes sql08 inmemorydbDaniel Austin
 
Big Data Cloud Meetup - Jan 29 2013 - Mike Stonebraker & Scott Jarr of VoltDB
Big Data Cloud Meetup - Jan 29 2013 - Mike Stonebraker & Scott Jarr of VoltDBBig Data Cloud Meetup - Jan 29 2013 - Mike Stonebraker & Scott Jarr of VoltDB
Big Data Cloud Meetup - Jan 29 2013 - Mike Stonebraker & Scott Jarr of VoltDBBigDataCloud
 
Future Proofing MySQL by Robert Hodges, Continuent
Future Proofing MySQL by Robert Hodges, ContinuentFuture Proofing MySQL by Robert Hodges, Continuent
Future Proofing MySQL by Robert Hodges, ContinuentEero Teerikorpi
 
Postgres Plus Cloud Database
Postgres Plus Cloud DatabasePostgres Plus Cloud Database
Postgres Plus Cloud DatabaseGary Carter
 
"Navigating the Database Universe" by Dr. Michael Stonebraker and Scott Jarr,...
"Navigating the Database Universe" by Dr. Michael Stonebraker and Scott Jarr,..."Navigating the Database Universe" by Dr. Michael Stonebraker and Scott Jarr,...
"Navigating the Database Universe" by Dr. Michael Stonebraker and Scott Jarr,...lisapaglia
 
Presentation introduction to cloud computing and technical issues
Presentation   introduction to cloud computing and technical issuesPresentation   introduction to cloud computing and technical issues
Presentation introduction to cloud computing and technical issuesxKinAnx
 
DataStax C*ollege Credit: What and Why NoSQL?
DataStax C*ollege Credit: What and Why NoSQL?DataStax C*ollege Credit: What and Why NoSQL?
DataStax C*ollege Credit: What and Why NoSQL?DataStax
 
Open solaris customer presentation
Open solaris customer presentationOpen solaris customer presentation
Open solaris customer presentationxKinAnx
 
CloudStack Architecture Future
CloudStack Architecture FutureCloudStack Architecture Future
CloudStack Architecture FutureKimihiko Kitase
 
Mhta.private.cloud.final.16.9
Mhta.private.cloud.final.16.9Mhta.private.cloud.final.16.9
Mhta.private.cloud.final.16.9Virteva Inc.
 
Using Distributed In-Memory Computing for Fast Data Analysis
Using Distributed In-Memory Computing for Fast Data AnalysisUsing Distributed In-Memory Computing for Fast Data Analysis
Using Distributed In-Memory Computing for Fast Data AnalysisScaleOut Software
 
Seattle Scalability - GigaSpaces / Cassandra
Seattle Scalability - GigaSpaces / CassandraSeattle Scalability - GigaSpaces / Cassandra
Seattle Scalability - GigaSpaces / Cassandraclive boulton
 
Is Private Cloud Right for Your Organization
Is Private Cloud Right for Your OrganizationIs Private Cloud Right for Your Organization
Is Private Cloud Right for Your OrganizationDave Roberts
 
C*ollege Credit: Is My App a Good Fit for Cassandra?
C*ollege Credit: Is My App a Good Fit for Cassandra?C*ollege Credit: Is My App a Good Fit for Cassandra?
C*ollege Credit: Is My App a Good Fit for Cassandra?DataStax
 
Scalable networking in Apache CloudStack
Scalable networking in Apache CloudStackScalable networking in Apache CloudStack
Scalable networking in Apache CloudStackChiradeep Vittal
 
Intro to Big Data and NoSQL
Intro to Big Data and NoSQLIntro to Big Data and NoSQL
Intro to Big Data and NoSQLDon Demcsak
 
Cassandra EU 2012 - Netflix's Cassandra Architecture and Open Source Efforts
Cassandra EU 2012 - Netflix's Cassandra Architecture and Open Source EffortsCassandra EU 2012 - Netflix's Cassandra Architecture and Open Source Efforts
Cassandra EU 2012 - Netflix's Cassandra Architecture and Open Source EffortsAcunu
 
Apache Hadoop on Virtual Machines
Apache Hadoop on Virtual MachinesApache Hadoop on Virtual Machines
Apache Hadoop on Virtual MachinesDataWorks Summit
 

What's hot (20)

Yes sql08 inmemorydb
Yes sql08 inmemorydbYes sql08 inmemorydb
Yes sql08 inmemorydb
 
Big Data Cloud Meetup - Jan 29 2013 - Mike Stonebraker & Scott Jarr of VoltDB
Big Data Cloud Meetup - Jan 29 2013 - Mike Stonebraker & Scott Jarr of VoltDBBig Data Cloud Meetup - Jan 29 2013 - Mike Stonebraker & Scott Jarr of VoltDB
Big Data Cloud Meetup - Jan 29 2013 - Mike Stonebraker & Scott Jarr of VoltDB
 
Future Proofing MySQL by Robert Hodges, Continuent
Future Proofing MySQL by Robert Hodges, ContinuentFuture Proofing MySQL by Robert Hodges, Continuent
Future Proofing MySQL by Robert Hodges, Continuent
 
Postgres Plus Cloud Database
Postgres Plus Cloud DatabasePostgres Plus Cloud Database
Postgres Plus Cloud Database
 
"Navigating the Database Universe" by Dr. Michael Stonebraker and Scott Jarr,...
"Navigating the Database Universe" by Dr. Michael Stonebraker and Scott Jarr,..."Navigating the Database Universe" by Dr. Michael Stonebraker and Scott Jarr,...
"Navigating the Database Universe" by Dr. Michael Stonebraker and Scott Jarr,...
 
Hadoop on Virtual Machines
Hadoop on Virtual MachinesHadoop on Virtual Machines
Hadoop on Virtual Machines
 
NuoDB Product Brochure
NuoDB Product BrochureNuoDB Product Brochure
NuoDB Product Brochure
 
Presentation introduction to cloud computing and technical issues
Presentation   introduction to cloud computing and technical issuesPresentation   introduction to cloud computing and technical issues
Presentation introduction to cloud computing and technical issues
 
DataStax C*ollege Credit: What and Why NoSQL?
DataStax C*ollege Credit: What and Why NoSQL?DataStax C*ollege Credit: What and Why NoSQL?
DataStax C*ollege Credit: What and Why NoSQL?
 
Open solaris customer presentation
Open solaris customer presentationOpen solaris customer presentation
Open solaris customer presentation
 
CloudStack Architecture Future
CloudStack Architecture FutureCloudStack Architecture Future
CloudStack Architecture Future
 
Mhta.private.cloud.final.16.9
Mhta.private.cloud.final.16.9Mhta.private.cloud.final.16.9
Mhta.private.cloud.final.16.9
 
Using Distributed In-Memory Computing for Fast Data Analysis
Using Distributed In-Memory Computing for Fast Data AnalysisUsing Distributed In-Memory Computing for Fast Data Analysis
Using Distributed In-Memory Computing for Fast Data Analysis
 
Seattle Scalability - GigaSpaces / Cassandra
Seattle Scalability - GigaSpaces / CassandraSeattle Scalability - GigaSpaces / Cassandra
Seattle Scalability - GigaSpaces / Cassandra
 
Is Private Cloud Right for Your Organization
Is Private Cloud Right for Your OrganizationIs Private Cloud Right for Your Organization
Is Private Cloud Right for Your Organization
 
C*ollege Credit: Is My App a Good Fit for Cassandra?
C*ollege Credit: Is My App a Good Fit for Cassandra?C*ollege Credit: Is My App a Good Fit for Cassandra?
C*ollege Credit: Is My App a Good Fit for Cassandra?
 
Scalable networking in Apache CloudStack
Scalable networking in Apache CloudStackScalable networking in Apache CloudStack
Scalable networking in Apache CloudStack
 
Intro to Big Data and NoSQL
Intro to Big Data and NoSQLIntro to Big Data and NoSQL
Intro to Big Data and NoSQL
 
Cassandra EU 2012 - Netflix's Cassandra Architecture and Open Source Efforts
Cassandra EU 2012 - Netflix's Cassandra Architecture and Open Source EffortsCassandra EU 2012 - Netflix's Cassandra Architecture and Open Source Efforts
Cassandra EU 2012 - Netflix's Cassandra Architecture and Open Source Efforts
 
Apache Hadoop on Virtual Machines
Apache Hadoop on Virtual MachinesApache Hadoop on Virtual Machines
Apache Hadoop on Virtual Machines
 

Similar to NYC Meetup November 15, 2012

2012 10 24_briefing room
2012 10 24_briefing room2012 10 24_briefing room
2012 10 24_briefing roomNuoDB
 
Accelerating big data with ioMemory and Cisco UCS and NOSQL
Accelerating big data with ioMemory and Cisco UCS and NOSQLAccelerating big data with ioMemory and Cisco UCS and NOSQL
Accelerating big data with ioMemory and Cisco UCS and NOSQLSumeet Bansal
 
Run Cloud Native MySQL NDB Cluster in Kubernetes
Run Cloud Native MySQL NDB Cluster in KubernetesRun Cloud Native MySQL NDB Cluster in Kubernetes
Run Cloud Native MySQL NDB Cluster in KubernetesBernd Ocklin
 
Beyond The Data Grid: Coherence, Normalisation, Joins and Linear Scalability
Beyond The Data Grid: Coherence, Normalisation, Joins and Linear ScalabilityBeyond The Data Grid: Coherence, Normalisation, Joins and Linear Scalability
Beyond The Data Grid: Coherence, Normalisation, Joins and Linear ScalabilityBen Stopford
 
DAT101 Understanding AWS Database Options - AWS re: Invent 2012
DAT101 Understanding AWS Database Options - AWS re: Invent 2012DAT101 Understanding AWS Database Options - AWS re: Invent 2012
DAT101 Understanding AWS Database Options - AWS re: Invent 2012Amazon Web Services
 
Future of cloud storage
Future of cloud storageFuture of cloud storage
Future of cloud storageGlusterFS
 
NOSQL, CouchDB, and the Cloud
NOSQL, CouchDB, and the CloudNOSQL, CouchDB, and the Cloud
NOSQL, CouchDB, and the Cloudboorad
 
INCONTRI AL CINEMA - HUS VM: la nuova piattaforma unificata di Hitachi Data...
 INCONTRI AL CINEMA - HUS VM: la nuova piattaforma unificata di Hitachi Data... INCONTRI AL CINEMA - HUS VM: la nuova piattaforma unificata di Hitachi Data...
INCONTRI AL CINEMA - HUS VM: la nuova piattaforma unificata di Hitachi Data...Mauden SpA
 
Internet Scale Architecture
Internet Scale ArchitectureInternet Scale Architecture
Internet Scale ArchitectureRightScale
 
Oracle en Entel Summit 2010
Oracle en Entel Summit 2010Oracle en Entel Summit 2010
Oracle en Entel Summit 2010Entel
 
Presentatie Cisco NetApp Proact over FlexPod
Presentatie Cisco NetApp Proact over FlexPodPresentatie Cisco NetApp Proact over FlexPod
Presentatie Cisco NetApp Proact over FlexPodProact Netherlands B.V.
 
Hadoop World 2011: Hadoop as a Service in Cloud
Hadoop World 2011: Hadoop as a Service in CloudHadoop World 2011: Hadoop as a Service in Cloud
Hadoop World 2011: Hadoop as a Service in CloudCloudera, Inc.
 
NetApp-ClusteredONTAP-Fall2012
NetApp-ClusteredONTAP-Fall2012NetApp-ClusteredONTAP-Fall2012
NetApp-ClusteredONTAP-Fall2012Michael Harding
 
A Survey of Advanced Non-relational Database Systems: Approaches and Applicat...
A Survey of Advanced Non-relational Database Systems: Approaches and Applicat...A Survey of Advanced Non-relational Database Systems: Approaches and Applicat...
A Survey of Advanced Non-relational Database Systems: Approaches and Applicat...Qian Lin
 
Реляционные или нереляционные (Josh Berkus)
Реляционные или нереляционные (Josh Berkus)Реляционные или нереляционные (Josh Berkus)
Реляционные или нереляционные (Josh Berkus)Ontico
 
The Perfect Storm: The Impact of Analytics, Big Data and Analytics
The Perfect Storm: The Impact of Analytics, Big Data and AnalyticsThe Perfect Storm: The Impact of Analytics, Big Data and Analytics
The Perfect Storm: The Impact of Analytics, Big Data and AnalyticsInside Analysis
 
Common MongoDB Use Cases
Common MongoDB Use CasesCommon MongoDB Use Cases
Common MongoDB Use CasesDATAVERSITY
 
Presentacion redislabs-ihub
Presentacion redislabs-ihubPresentacion redislabs-ihub
Presentacion redislabs-ihubssuser9d7c90
 

Similar to NYC Meetup November 15, 2012 (20)

2012 10 24_briefing room
2012 10 24_briefing room2012 10 24_briefing room
2012 10 24_briefing room
 
Accelerating big data with ioMemory and Cisco UCS and NOSQL
Accelerating big data with ioMemory and Cisco UCS and NOSQLAccelerating big data with ioMemory and Cisco UCS and NOSQL
Accelerating big data with ioMemory and Cisco UCS and NOSQL
 
Run Cloud Native MySQL NDB Cluster in Kubernetes
Run Cloud Native MySQL NDB Cluster in KubernetesRun Cloud Native MySQL NDB Cluster in Kubernetes
Run Cloud Native MySQL NDB Cluster in Kubernetes
 
Beyond The Data Grid: Coherence, Normalisation, Joins and Linear Scalability
Beyond The Data Grid: Coherence, Normalisation, Joins and Linear ScalabilityBeyond The Data Grid: Coherence, Normalisation, Joins and Linear Scalability
Beyond The Data Grid: Coherence, Normalisation, Joins and Linear Scalability
 
DAT101 Understanding AWS Database Options - AWS re: Invent 2012
DAT101 Understanding AWS Database Options - AWS re: Invent 2012DAT101 Understanding AWS Database Options - AWS re: Invent 2012
DAT101 Understanding AWS Database Options - AWS re: Invent 2012
 
Super cluster oracleday cl 7
Super cluster oracleday cl 7Super cluster oracleday cl 7
Super cluster oracleday cl 7
 
Future of cloud storage
Future of cloud storageFuture of cloud storage
Future of cloud storage
 
NOSQL, CouchDB, and the Cloud
NOSQL, CouchDB, and the CloudNOSQL, CouchDB, and the Cloud
NOSQL, CouchDB, and the Cloud
 
INCONTRI AL CINEMA - HUS VM: la nuova piattaforma unificata di Hitachi Data...
 INCONTRI AL CINEMA - HUS VM: la nuova piattaforma unificata di Hitachi Data... INCONTRI AL CINEMA - HUS VM: la nuova piattaforma unificata di Hitachi Data...
INCONTRI AL CINEMA - HUS VM: la nuova piattaforma unificata di Hitachi Data...
 
Internet Scale Architecture
Internet Scale ArchitectureInternet Scale Architecture
Internet Scale Architecture
 
Oracle en Entel Summit 2010
Oracle en Entel Summit 2010Oracle en Entel Summit 2010
Oracle en Entel Summit 2010
 
Presentatie Cisco NetApp Proact over FlexPod
Presentatie Cisco NetApp Proact over FlexPodPresentatie Cisco NetApp Proact over FlexPod
Presentatie Cisco NetApp Proact over FlexPod
 
Hadoop World 2011: Hadoop as a Service in Cloud
Hadoop World 2011: Hadoop as a Service in CloudHadoop World 2011: Hadoop as a Service in Cloud
Hadoop World 2011: Hadoop as a Service in Cloud
 
NetApp-ClusteredONTAP-Fall2012
NetApp-ClusteredONTAP-Fall2012NetApp-ClusteredONTAP-Fall2012
NetApp-ClusteredONTAP-Fall2012
 
A Survey of Advanced Non-relational Database Systems: Approaches and Applicat...
A Survey of Advanced Non-relational Database Systems: Approaches and Applicat...A Survey of Advanced Non-relational Database Systems: Approaches and Applicat...
A Survey of Advanced Non-relational Database Systems: Approaches and Applicat...
 
NoSQL
NoSQLNoSQL
NoSQL
 
Реляционные или нереляционные (Josh Berkus)
Реляционные или нереляционные (Josh Berkus)Реляционные или нереляционные (Josh Berkus)
Реляционные или нереляционные (Josh Berkus)
 
The Perfect Storm: The Impact of Analytics, Big Data and Analytics
The Perfect Storm: The Impact of Analytics, Big Data and AnalyticsThe Perfect Storm: The Impact of Analytics, Big Data and Analytics
The Perfect Storm: The Impact of Analytics, Big Data and Analytics
 
Common MongoDB Use Cases
Common MongoDB Use CasesCommon MongoDB Use Cases
Common MongoDB Use Cases
 
Presentacion redislabs-ihub
Presentacion redislabs-ihubPresentacion redislabs-ihub
Presentacion redislabs-ihub
 

More from NuoDB

WeLab Reaps Advantages of Multi-Cloud Capabilities. You Can Too.
WeLab Reaps Advantages of Multi-Cloud Capabilities. You Can Too.WeLab Reaps Advantages of Multi-Cloud Capabilities. You Can Too.
WeLab Reaps Advantages of Multi-Cloud Capabilities. You Can Too.NuoDB
 
Modernize Your Banking Platform with Temenos and NuoDB
Modernize Your Banking Platform with Temenos and NuoDBModernize Your Banking Platform with Temenos and NuoDB
Modernize Your Banking Platform with Temenos and NuoDBNuoDB
 
Do more clouds = better scalability, availability, flexibility
Do more clouds = better scalability, availability, flexibility Do more clouds = better scalability, availability, flexibility
Do more clouds = better scalability, availability, flexibility NuoDB
 
Introducing NuoDB 4.0: Cloud-native, Cloud-agnostic Distributed SQL Database
Introducing NuoDB 4.0: Cloud-native, Cloud-agnostic Distributed SQL DatabaseIntroducing NuoDB 4.0: Cloud-native, Cloud-agnostic Distributed SQL Database
Introducing NuoDB 4.0: Cloud-native, Cloud-agnostic Distributed SQL DatabaseNuoDB
 
The Enabling Power of Distributed SQL for Enterprise Digital Transformation I...
The Enabling Power of Distributed SQL for Enterprise Digital Transformation I...The Enabling Power of Distributed SQL for Enterprise Digital Transformation I...
The Enabling Power of Distributed SQL for Enterprise Digital Transformation I...NuoDB
 
NuoDB + MayaData: How to Run Containerized Enterprise SQL Applications in the...
NuoDB + MayaData: How to Run Containerized Enterprise SQL Applications in the...NuoDB + MayaData: How to Run Containerized Enterprise SQL Applications in the...
NuoDB + MayaData: How to Run Containerized Enterprise SQL Applications in the...NuoDB
 
How to Evaluate an Elastic SQL Database
How to Evaluate an Elastic SQL DatabaseHow to Evaluate an Elastic SQL Database
How to Evaluate an Elastic SQL DatabaseNuoDB
 
By Popular Demand: The Rise of Elastic SQL
By Popular Demand: The Rise of Elastic SQLBy Popular Demand: The Rise of Elastic SQL
By Popular Demand: The Rise of Elastic SQLNuoDB
 
Introduction to NuoDB - March 2018
Introduction to NuoDB - March 2018Introduction to NuoDB - March 2018
Introduction to NuoDB - March 2018NuoDB
 
Transforming Retail Banking: Competitive Advantage through Microservices
Transforming Retail Banking: Competitive Advantage through MicroservicesTransforming Retail Banking: Competitive Advantage through Microservices
Transforming Retail Banking: Competitive Advantage through MicroservicesNuoDB
 
451 Research + NuoDB: What It Means to be a Container-Native SQL Database
451 Research + NuoDB: What It Means to be a Container-Native SQL Database451 Research + NuoDB: What It Means to be a Container-Native SQL Database
451 Research + NuoDB: What It Means to be a Container-Native SQL DatabaseNuoDB
 
Microservices Applications: Challenges and Best Practices When Deploying SQL-...
Microservices Applications: Challenges and Best Practices When Deploying SQL-...Microservices Applications: Challenges and Best Practices When Deploying SQL-...
Microservices Applications: Challenges and Best Practices When Deploying SQL-...NuoDB
 
Building Cloud-Native Applications with a Container-Native SQL Database in th...
Building Cloud-Native Applications with a Container-Native SQL Database in th...Building Cloud-Native Applications with a Container-Native SQL Database in th...
Building Cloud-Native Applications with a Container-Native SQL Database in th...NuoDB
 
5 Steps for Migrating Relational Databases to Next-Gen Architectures
5 Steps for Migrating Relational Databases to Next-Gen Architectures5 Steps for Migrating Relational Databases to Next-Gen Architectures
5 Steps for Migrating Relational Databases to Next-Gen ArchitecturesNuoDB
 
NuoDB 3.0: Getting Started with Community Edition
NuoDB 3.0: Getting Started with Community EditionNuoDB 3.0: Getting Started with Community Edition
NuoDB 3.0: Getting Started with Community EditionNuoDB
 
Cloud Database Migration Made Easy: Migrating MySQL to NuoDB
Cloud Database Migration Made Easy: Migrating MySQL to NuoDBCloud Database Migration Made Easy: Migrating MySQL to NuoDB
Cloud Database Migration Made Easy: Migrating MySQL to NuoDBNuoDB
 
Elastic SQL Database: Oxymoron or Emerging Reality? (Database Month, June 2017)
Elastic SQL Database: Oxymoron or Emerging Reality? (Database Month, June 2017)Elastic SQL Database: Oxymoron or Emerging Reality? (Database Month, June 2017)
Elastic SQL Database: Oxymoron or Emerging Reality? (Database Month, June 2017)NuoDB
 
Reasons to Deploy an Elastic SQL Database
Reasons to Deploy an Elastic SQL DatabaseReasons to Deploy an Elastic SQL Database
Reasons to Deploy an Elastic SQL DatabaseNuoDB
 
Getting Started with NuoDB Community Edition
Getting Started with NuoDB Community Edition Getting Started with NuoDB Community Edition
Getting Started with NuoDB Community Edition NuoDB
 
Key Database Criteria for Cloud Applications
Key Database Criteria for Cloud ApplicationsKey Database Criteria for Cloud Applications
Key Database Criteria for Cloud ApplicationsNuoDB
 

More from NuoDB (20)

WeLab Reaps Advantages of Multi-Cloud Capabilities. You Can Too.
WeLab Reaps Advantages of Multi-Cloud Capabilities. You Can Too.WeLab Reaps Advantages of Multi-Cloud Capabilities. You Can Too.
WeLab Reaps Advantages of Multi-Cloud Capabilities. You Can Too.
 
Modernize Your Banking Platform with Temenos and NuoDB
Modernize Your Banking Platform with Temenos and NuoDBModernize Your Banking Platform with Temenos and NuoDB
Modernize Your Banking Platform with Temenos and NuoDB
 
Do more clouds = better scalability, availability, flexibility
Do more clouds = better scalability, availability, flexibility Do more clouds = better scalability, availability, flexibility
Do more clouds = better scalability, availability, flexibility
 
Introducing NuoDB 4.0: Cloud-native, Cloud-agnostic Distributed SQL Database
Introducing NuoDB 4.0: Cloud-native, Cloud-agnostic Distributed SQL DatabaseIntroducing NuoDB 4.0: Cloud-native, Cloud-agnostic Distributed SQL Database
Introducing NuoDB 4.0: Cloud-native, Cloud-agnostic Distributed SQL Database
 
The Enabling Power of Distributed SQL for Enterprise Digital Transformation I...
The Enabling Power of Distributed SQL for Enterprise Digital Transformation I...The Enabling Power of Distributed SQL for Enterprise Digital Transformation I...
The Enabling Power of Distributed SQL for Enterprise Digital Transformation I...
 
NuoDB + MayaData: How to Run Containerized Enterprise SQL Applications in the...
NuoDB + MayaData: How to Run Containerized Enterprise SQL Applications in the...NuoDB + MayaData: How to Run Containerized Enterprise SQL Applications in the...
NuoDB + MayaData: How to Run Containerized Enterprise SQL Applications in the...
 
How to Evaluate an Elastic SQL Database
How to Evaluate an Elastic SQL DatabaseHow to Evaluate an Elastic SQL Database
How to Evaluate an Elastic SQL Database
 
By Popular Demand: The Rise of Elastic SQL
By Popular Demand: The Rise of Elastic SQLBy Popular Demand: The Rise of Elastic SQL
By Popular Demand: The Rise of Elastic SQL
 
Introduction to NuoDB - March 2018
Introduction to NuoDB - March 2018Introduction to NuoDB - March 2018
Introduction to NuoDB - March 2018
 
Transforming Retail Banking: Competitive Advantage through Microservices
Transforming Retail Banking: Competitive Advantage through MicroservicesTransforming Retail Banking: Competitive Advantage through Microservices
Transforming Retail Banking: Competitive Advantage through Microservices
 
451 Research + NuoDB: What It Means to be a Container-Native SQL Database
451 Research + NuoDB: What It Means to be a Container-Native SQL Database451 Research + NuoDB: What It Means to be a Container-Native SQL Database
451 Research + NuoDB: What It Means to be a Container-Native SQL Database
 
Microservices Applications: Challenges and Best Practices When Deploying SQL-...
Microservices Applications: Challenges and Best Practices When Deploying SQL-...Microservices Applications: Challenges and Best Practices When Deploying SQL-...
Microservices Applications: Challenges and Best Practices When Deploying SQL-...
 
Building Cloud-Native Applications with a Container-Native SQL Database in th...
Building Cloud-Native Applications with a Container-Native SQL Database in th...Building Cloud-Native Applications with a Container-Native SQL Database in th...
Building Cloud-Native Applications with a Container-Native SQL Database in th...
 
5 Steps for Migrating Relational Databases to Next-Gen Architectures
5 Steps for Migrating Relational Databases to Next-Gen Architectures5 Steps for Migrating Relational Databases to Next-Gen Architectures
5 Steps for Migrating Relational Databases to Next-Gen Architectures
 
NuoDB 3.0: Getting Started with Community Edition
NuoDB 3.0: Getting Started with Community EditionNuoDB 3.0: Getting Started with Community Edition
NuoDB 3.0: Getting Started with Community Edition
 
Cloud Database Migration Made Easy: Migrating MySQL to NuoDB
Cloud Database Migration Made Easy: Migrating MySQL to NuoDBCloud Database Migration Made Easy: Migrating MySQL to NuoDB
Cloud Database Migration Made Easy: Migrating MySQL to NuoDB
 
Elastic SQL Database: Oxymoron or Emerging Reality? (Database Month, June 2017)
Elastic SQL Database: Oxymoron or Emerging Reality? (Database Month, June 2017)Elastic SQL Database: Oxymoron or Emerging Reality? (Database Month, June 2017)
Elastic SQL Database: Oxymoron or Emerging Reality? (Database Month, June 2017)
 
Reasons to Deploy an Elastic SQL Database
Reasons to Deploy an Elastic SQL DatabaseReasons to Deploy an Elastic SQL Database
Reasons to Deploy an Elastic SQL Database
 
Getting Started with NuoDB Community Edition
Getting Started with NuoDB Community Edition Getting Started with NuoDB Community Edition
Getting Started with NuoDB Community Edition
 
Key Database Criteria for Cloud Applications
Key Database Criteria for Cloud ApplicationsKey Database Criteria for Cloud Applications
Key Database Criteria for Cloud Applications
 

NYC Meetup November 15, 2012

  • 1. The Elastically Scalable Database™ 1  
  • 2. 20th Century Database Powerful Query 9% 3% 4% Language 44% 19% Industry Standards ORACLE IBM Data Guarantees Microsoft Sybase 21% Tools Teradata Others Employee Skills Existing Data 2  
  • 3. 21st Century Problem Commodity Datacenters ✗ Big Data ✗ Powerful Query Language Modern Workloads ✗ Industry Standards 24x7 Operation ✗ Data Guarantees Geo-distribution ✗ Tools Developer Empowerment ✗ Employee Skills Existing Data 3  
  • 4. Database Crisis Amazon Flickr Wikipedia Facebook Google Source: Marc Bojoly 4  
  • 5. Jim Starkey “Elastically Scalable Transactions represent the biggest breakthrough in database technology in 25 years” ‣  DEC RDB/ELN ‣  InterBase ‣  Firebird ‣  Falcon ‣  BLOBS ‣  MVCC 5  
  • 6. Emergent Database Architecture "  “An emergent behavior can appear when a number of simple entities operate in an environment, forming more complex behaviors as a collective.” "   - Wikipedia 6  
  • 7. NuoDB Plus One "  Second machine typically doubles TPS "  Second machine is added to live database while it is running at 1,000’s of TPS "  Performance increase is immediate "  BTW - you can take either machine away and Second  Machine     the database keeps Instant  Performance  Increase   running without data loss 7  
  • 8. Adding a Third Machine "  Third machine typically triples single machine TPS "  Third machine is added to live database while it is running at 1,000’s of TPS "  Performance increase Second  &  Third  Machine     is immediate Instant  Performance  Increase   "  BTW - you can take any machine away and the database keeps running without data loss 8  
  • 9. More Machines? Bring ‘em On Nodes TPS MySQL 1 3,000 NuoDB 1 4,500 27,00 NuoDB 9 0 "  Technical Details: TPS   ‣  2-9 Tx engines ‣  1 storage manager ‣  Best sustained TPS and # clients Number  of  Nodes   combination ‣  50% updates NuoDB running on 9 nodes was approx. 9x faster than MySQL running on 1 node. 9  
  • 10. Or Scale-out on IAAS ‣  Nuodb scales linearly on EC2 ‣  Per-node performance on m1.large nodes TPS   approx 50% of our commodity servers ‣  Just started on optimizing ‣  RDS runs on 1 node, and gets overloaded Number  of  EC2  Nodes   with 10+ connections 10  
  • 12. Building An Elastically Scalable Database The Easy Way
  • 13. Tonight’s Agenda "  A Bit About Me "   Introduction to NuoDB "   Architecture Overview "   Some Unnatural Acts "  Quick Demo "  Beer 1 3  
  • 14. A Bit About Me "  A Refugee from Academia "  -Researched Programming Languages "  -Transactional Memory impl. and semantics "  Worked on distributed metadata database for HDS HCP "  -Clustered appliance 1 4  
  • 15. What is NuoDB? "  Elastically scalable "  Multi-tenant "  Transactionally Consistent "  Easy to Manage 1 5  
  • 16. 娜 graceful, like a cloud 1 6  
  • 17. Architecture "  Three tiers "  Each is independent Management   "  Single model for all environments "  Extensible at TransacEon   various points Handling   Storage  
  • 18. Agents "  Management tier "  Provision hosts for use "  Expose XML messaging for management "  Make scripting and automation easy 1 8  
  • 19. Brokers "  Agent with additional special knowledge "  At least one per domain "  Redirects clients to TE "  -Clients need no knowledge of topology "  -Brokers are responsible for any load- balancing 1 9  
  • 20. Transaction Engines "  Peer-to-peer "  In-memory "  Multi-Version Concurrency Control "  Asynchronous messaging (replication) "  Atoms 2 0  
  • 21. Storage Managers "  Persistence points for atoms "  Key-value backing stores "  -Local FS, S3, HDFS "  Independent archives 2 1  
  • 22. And Now, Some Unnatural Acts 2 2  
  • 23. Sharding, an Unnatural Act "  The ideal DB application Scales  up  to  the  capacity     of  a  single  node   client   DB   What  if  you  need  more  read     client   and/or  write  throughput?   2 3  
  • 24. Sharding "  Shard the DB among several nodes New  Client  Layer   Now  you  need  to  implement   consistency  in  your  applicaEon   Client1   Client2   TransacEonal  consistency  is   DB0   DB1   very  very  hard  to  get  right   2 4  
  • 25. Other Sharding Bugbears "  Global operations (searches, scans) "  -Doing joins in the application "  -Implementing Cursors "  -Chunking and memory management "  And, of course, adding or removing shards 2 5  
  • 26. Scaling Shards "  A recipe for changing the number of shards "  1) Ask boss for permission "  2) Provision hardware "  3) Rewrite the app over 6 months "  4) Hope / Pray 2 6  
  • 27. NuoDB Solution Management   Client   Domain   Host A Host B Host C   Broker     Agent     Agent   2 7  
  • 28. NuoDB on a single node Management   Client   Client   Domain   Host A Host B Host C   Broker     Agent     Agent   Txn  Engine   Database A Storage   Manager   2 8  
  • 29. NuoDB Scaling out Management   Client   Client   Client   Client   Domain   Host A Host B Host C   Broker     Agent     Agent   Txn  Engine   Txn  Engine   Database A Storage   Storage   Manager   Manager   2 9  
  • 30. NuoDB ‘Adding a Shard’ Management   Client   Client   Client   Client   Domain   Host A Host B Host C   Broker     Agent     Agent   Txn  Engine   Txn  Engine   Txn  Engine   Database A Storage   Storage   Storage   Manager   Manager   Manager   3 0  
  • 31. NuoDB ‘Sharding’ "  Literally as simple as just adding nodes "  No client code had to be harmed in the making of this distributed database "  -Brokers hide topology changes "  -NuoDB is transactionally consistent 3 1  
  • 32. Eventual Consistency "  Eventual consistency is latent inconsistency "  -Not transactionally consistent "  -Application porting is non-trivial "  -Performance/Correctness tradeoff icky 3 2  
  • 33. NuoDB Consistency "  NuoDB is transactionally consistent "  All the time, everywhere "  When a transaction is committed, it’s guaranteed consistent "  Tradeoff is between Performance and Availability 3 3  
  • 34. Multi-Tenancy "  Traditional databases monopolize a node "  NuoDB supports many databases in a single pool of machines (a domain) "  Each DB can be scaled as needed, independantly 3 4  
  • 35. Multi-Tenancy Example Management   JDBC  Client   Client   Domain   Host A Host B Host C   Broker     Agent     Agent   Txn  Engine   Storage   Manager   Database A 3 5  
  • 36. Multi-Tenancy Example Management   JDBC  Client   Client   JDBC  Client   Domain   Host A Host B Host C   Broker     Agent     Agent   Txn  Engine   Storage   Txn  Engine   Manager   Database A 3 6  
  • 37. Multi-Tenancy Example Management   JDBC  Client   Client   JDBC  Client   Domain   Host A Host B Host C   Broker     Agent     Agent   Txn  Engine   Storage   Txn  Engine   Manager   Database A Storage   Txn  Engine   Manager   Database 1 3 7  
  • 38. Multi-Tenancy Example Management   JDBC  Client   SQL  Client   ...   Client   JDBC  Client   Domain   Host A Host B Host C   Broker     Agent     Agent   Txn  Engine   Storage   Txn  Engine   Manager   Database A Storage   Txn  Engine   Manager   Database 1 3 8  
  • 39. And now, a demo…
  • 40. The Elastically Scalable Database™ 40