SlideShare a Scribd company logo
1 of 67
NoSQL adoption: what's the next step?
    Luca Garulli – Founder and CEO
    NuvolaBase Ltd

                                         May 2012 29 - 30 in Cologne, Germany

(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 1
2009
                            A new grass-root movement
                   of rebels, a few underdogs who believe
                that the common Relational model is
            no longer the only solution to every problem.


              After 30 long years of
      “Relational domain” new alternatives
          have become possible and
                   sustainable
(c) Luca Garulli     Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 2
it's name is
                      NoSQL

(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 3
2012: 3 years later the
     revolution has evolved:

              many new products,
               larger adoption
(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 4
”NoSQL database technologies are largely being adopted for
new projects that require additional scalability, performance,
  relaxed consistency and agility.“ – 451 Research of May 22nd 2012




 (c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 5
Nobody talks about the real origins of
              databases.




   You could marvel about the lot of
similarities between the past and today
(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 6
Are you ready to go back to the past?




(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 7
The computer age and the
          beginning of databases?
(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 8
No, let's go further back
   before computers took
   over to see how society
    managed information
         persistently
(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 9
Way too back?




(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 10
“Stone” was our
 first persistent
    database.
   Before that
 everything was
    “volatile”
   because in-
  memory only
(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 11
Pros:
         Cheap (it’s free),
            very-very
           durable and
         always available
(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 12
Cons: not exactly portable...




(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 13
...And this kind of
        storage had the
      same problems of
       modern RDBMS
(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 14
Slow inserts!




(c) Luca Garulli    Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 15
no Market Leader
     for this technology
       because stone is
          FREE and
          unlimited
(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 16
So, the world
             needed a better
               technology:
               what next?
(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 17
Egypt, 5000 years ago

                                                       “Papyrus”
                                                         was the
                                                        database
                                                          v. 2.0
(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 18
Not so cheap
                    not so durable
                     but portable

                   This was the first
                   “mobile” market
(c) Luca Garulli     Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 19
Market
 Leader
  the
Pharaoh
   ?
(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 20
Wait a sec!
    The Pharaoh Market Leader
     spoke about prophecies,
      exactly like an “Oracle”
              would...
       (Mhm, I should elaborate it a little bit more)

(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 21
So, the world
             needed an even
                  better
               technology:
               what next?
(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 22
Europe, 500 years ago

      Modern “Books" became
      database v. 2.1 (minor version)




(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 23
Easy to make
                      copies,
                   not durable as
                     stone, but
(c) Luca Garulli
                      portable
                    Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 24
Users started to make choices:

    3)want something really durable?
              Go with Stone
   2) do you want something portable?
                Papyrus
       3) Need also copies? Books

(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 25
You can’t have all of them. Choose
                  between:

                                easy to (C)opy
                                    dur(A)bility
                                        (P)ortability

                   But just pick 1 or 2 of them!
(c) Luca Garulli      Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 26
I can’t believe: the origin of
             CAP theorem ?
                        easy to (C)opy

                                                                   Book

   Stone
   dur(A)bility                                                          (P)ortability
                                                                        Papyrus
(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 27
We found some interesting similarities
     with the modern databases:
       history repeating itself!
(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 28
Interpreting Technology Hype
                                              by Gartner
Visibility




                            Peak of
                            Inflated
                                                                                                          Plateau of
                          Expectations
                                                                                                         productivity
                                                                          Slope of
                                                                        productivity

                                          Trough of
                                       Disillusionment


             Technology
               trigger
                                                                                                          Maturity
     (c) Luca Garulli      Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License         Page 29
Interpreting Technology Hype
                                                  by Gartner
Visibility




                      A potential technology breakthrough kicks
                    things off. Early proof-of-concept stories and
                                 Peak of
                     media interest trigger significant publicity.
                                 Inflated
                         Often no usable products exist and
                                                                                                              Plateau of
                             Expectations
                         commercial viability is unproven.
                                                                                                             productivity
                                                                              Slope of
                                                                            productivity

                                              Trough of
                                           Disillusionment


             Technology
               trigger
                                                                                                              Maturity
     (c) Luca Garulli          Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License         Page 30
Interpreting Technology Hype
                                              by Gartner
Visibility




                            Peak of
                            Inflated
                                                                                                          Plateau of
                          Expectations
                                                                                                         productivity
                                                                          Slope of
                                                                        productivity

                                          Trough publicity produces a number of
                                              Early of
                                             success stories—often accompanied by
                                       Disillusionment
                                            scores of failures. Some companies take
                                                       action; many do not.
             Technology
               trigger
                                                                                                          Maturity
     (c) Luca Garulli      Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License         Page 31
Interpreting Technology Hype
                                              by Gartner

                                                          Interest wanes as experiments and
                                                  implementations fail to deliver. Producers of the
Visibility




                                                 technology shake out or fail. Investments continue
                            Peak of                  only if the surviving providers improve their
                            Inflated                products to the satisfaction of early adopters.
                                                                                          Plateau of
                          Expectations
                                                                                        productivity
                                                                     Slope of
                                                                   productivity

                                          Trough of
                                       Disillusionment


             Technology
               trigger
                                                                                                         Maturity
     (c) Luca Garulli      Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License       Page 32
Bad stories from the trenches
       “Goodbye, CouchDB”
   May 10th, 2012 by Steven Hazel
                        “Failing with MongoDB”
                   November 5, 2011 by Michael Schurter
 “A year with MongoDB”
April 2012 on Kiip.me blog
                                              “MongoDB: 9 months on”
                                             11 May 2011 by Clueless Joe
(c) Luca Garulli    Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 33
Interpreting Technology Hype
                                                  by Gartner

             More instances of how the technology can
Visibility




              benefit the enterprise start to crystallize
               and become more widely understood.
                               Peak of
               Second and third-generation products
                               Inflated
             appear from technology providers. More                                                           Plateau of
                            Expectations
                enterprises fund pilots; conservative                                                        productivity
                                                                              Slope of
                    companies remain cautious.                              productivity

                                              Trough of
                                           Disillusionment


             Technology
               trigger
                                                                                                              Maturity
     (c) Luca Garulli          Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License         Page 34
Interpreting Technology Hype
                                              by Gartner
Visibility




                            Peak of
                            Inflated
                                                                                                          Plateau of
                          Expectations
                                                                                                         productivity
                                                                 Slope of
                                                              productivity
                                   Mainstream adoption starts to take
                                    off. Criteria forof
                                           Trough assessing provider
                                  viability are more clearly defined. The
                                      Disillusionment
                                         technology’s broad market
                                  applicability and relevance are clearly
             Technology                          paying off.
               trigger
                                                                                                          Maturity
     (c) Luca Garulli      Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License         Page 35
Interpreting Technology Hype
                                                   by Gartner
                               2010 - 2011                                             Don't worry,
                                                                                       we're here!
Visibility




                                 Peak of
                                 Inflated
                                                                                                               Plateau of
                               Expectations
                                                                                                              productivity
                                                                               Slope of
                                                                             productivity                        2015 ->
                                                                             2012 - 2014
                                               Trough of
                                            Disillusionment
                        2009                         2011

             Technology
               trigger
                                                                                                               Maturity
     (c) Luca Garulli           Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License         Page 36
Why some
                                                          users don't
                                                           succeed
                                                            using
                                                           NoSQL?
(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 37
Don't you know them? Really?




(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 38
You must apply the 3 laws of
     NoSQL to avoid a blood bath




(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 39
NoSQL 1 law                                 st




      The first rule of NoSQL is:
       «You do not talk about
                NoSQL»
(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 40
NoSQL 2 law                                 nd
                   there is no “golden hammer”




        “if all you have is a hammer,
         everything looks like a nail”
(c) Luca Garulli    Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 41
NoSQL 2 law                                 nd
                                          explained
           If all you have is a                                everything looks like

                    rdbms                                                        tables

                   key value                                          keys and values

                   document                                                documents

                   graph db                                              vertexes and
                                                                            nodes
(c) Luca Garulli      Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 42
NoSQL 3 law                                 rd




 “one size doesn't fit all”
(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 43
NoSQL 3 law                                    rd
                      explained: choose the right model(s)
                                                 (not exhaustive)
Scalability/Size




                   Key/Value
                           Column based Document
                                              Relational Graph




                                                                                                        Complexity
        (c) Luca Garulli       Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License    Page 44
Problem:
           what about if you need multiple
                      models?

                   Very often the domain can be
                                split
                            in multiple
                           sub-domains:

              this is the Polyglot Persistence
(c) Luca Garulli       Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 45
Polyglot Persistence

    Use multiple storage solutions to
  avoid compromising on the business
             data model...

      Don’t change your model,
change storage solution or integrate it
 with an additional product supports
         the model you need!
(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 46
Multi-Model storage 1/2
                     one product, multiple faces




Because the Polyglot Persistence some
  NoSQL vendors support multiple
    models in the same product
(c) Luca Garulli      Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 47
Multi-Model storage 2/2

 This is the best way to achieve the
NoSQL goal choosing the right model
  for each piece of domain with no
            compromises

Only one product to know and manage

(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 48
Multi-Model example 1/4
   To model the main entities of a selling product we
   choose the Graph one because it has the ability to
       traverse items and allow fast retrieving of
     relationships. NOTE: This is just an example!

  Graph Model
                                                         Order
                       Invoice


                                      StockItem


                                          Stock



(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 49
Multi-Model example 2/4
 Document model

                     Customer                          Provider




  Graph Model                                                                            Customer and
                                                         Order                           Product need a
                       Invoice                                                       flexible schema to
                                                                                        place additional
                                                                                       fields like the «4°
                                      StockItem
                                                                                     mobile number» or
                                                                                        the «XXX social
                                          Stock                                           network ID»


(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 50
Multi-Model example 3/4
 Document model

                     Customer                          Provider




  Graph Model                                                                       Object Oriented
                                                         Order                      Model
                       Invoice
                                                                                                 Person

                                      StockItem
                                                                                                 Vertex
                                          Stock



(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License        Page 51
Multi-Model example 4/4
 Document model
                                                                                  Constraints:
                                                                                  - phones > 0
                     Customer                          Provider                   - surname not null




  Graph Model                                                                       Object Oriented
                                                         Order                      Model
                       Invoice
                                                                                                 Person

                                      StockItem
                                                                                                 Vertex
                                          Stock



(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License        Page 52
Lessons learned




(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 53
Lesson learned 1/2
        If you changed your domain to fit the
              selected NoSQL solution,

What you selected was probably wrong or
           not the very best
               solution!

                                          #fail
(c) Luca Garulli     Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 54
Lesson learned 2/2
  Selecting a NoSQL product because it’s
 simply the most famous or because your
preferred Social Network is using it means
         that nothing has changed:

  You’re making the same mistake that
generations of developers made in the last
30 years by selecting the Relational DBMS
            for every use case!
(c) Luca Garulli     Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 55
Lesson learned 2/2b

This is against the NoSQL vein!

                           #superfail


(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 56
Other 9 factors to consider
Obviously, the model is not the only thing to evaluate when
you choose the right product:

3.Maturity
4.Constraints (lock mgmt, write strategy, reliability, etc.)
5.Who is using it in production?
6.Has anyone ever used it with a volume of data of similar to
mine?
7.Is it Open Source? Is there an active community?
8.Commercial Support
9.Current skill of your team
10.TCO (Total Cost of Ownership)
11.Test it before to select even with micro-benchmarks
represent your use case!
 (c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 57
Future directions: NoSQL
2nd and 3rd generation of NoSQL products are
  providing more features RDBMS already
                     have:

        * persistence for memory-only db
              * transaction or similar
     * better locking to improve concurrency
             * finer indexing systems
(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 58
Future directions: RDBMS
      Nth generation of RDBMS are providing
               NoSQL features like:

                        * schema-less
             * improved horizontal scalability
                * raw API for fast insertion
           * native support for array/collection
                 * full-text, queueing, etc.
(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 59
The common goal
                                           faster,
                                           more
                                       scalable and
                                          flexible
                                         solution



                   NewSQL
                                                                           NoSQL
        RDBMS
(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 60
NoSQL
                          what
                   risks & challenges
                   with such scenario?

(c) Luca Garulli     Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 61
NoSQL Risks 1/2
In many cases companies continue
 to use RDBMS as primary storage

leaving to the NoSQL solutions the
  «secondary role» of distributed
      and/or scalable cache
(c) Luca Garulli    Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 62
NoSQL Risks 2/2
RDBMS and NewSQL products are trying
to provide a technical answer to face the
   «BigData» and all the problems of
      performance and scalability

Companies could stay with the «improved»
  (thanks to NoSQL) RDBMS products

(c) Luca Garulli    Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 63
NoSQL Challenge
The NoSQL challenge is to gain the
 trust of users and customers to
       be used not only as a
        secondary storage,
     but playing the first role
  in the game of the persistence
(c) Luca Garulli    Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 64
That's all folks
      Enjoy NoSQL Matters 2012
              2 day!
               nd



                    Many thanks!

(c) Luca Garulli    Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 65
Luca Garulli
                   Author of                                                      CEO at


          Document-Graph NoSQL
            Open Source project
                                                                          Ltd, London UK




www.twitter.com/lgarulli
(c) Luca Garulli    Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 66
Luca Garulli
                   Author of                                                      CEO at


     Document-Graph NoSQL
  Hey, I’m a developer! If you want to
        Open Source project
    hear something more technical
       don’t miss «Design your                                            Ltd, London UK
    application using Persistent
       Graphs and OrientDB»
   Today 14:45 House 6 Room 2

www.twitter.com/lgarulli
(c) Luca Garulli    Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License   Page 67

More Related Content

Viewers also liked

Doc Book Vs Dita
Doc Book Vs DitaDoc Book Vs Dita
Doc Book Vs Ditaday
 
App Sharding to Autosharding at Sailthru
App Sharding to Autosharding at SailthruApp Sharding to Autosharding at Sailthru
App Sharding to Autosharding at SailthruMongoDB
 
Webinar: From Development to Production with Docker and MongoDB
Webinar: From Development to Production with Docker and MongoDBWebinar: From Development to Production with Docker and MongoDB
Webinar: From Development to Production with Docker and MongoDBMongoDB
 
Internet Apps powered by NoSQL and JavaScript
Internet Apps powered by NoSQL and JavaScriptInternet Apps powered by NoSQL and JavaScript
Internet Apps powered by NoSQL and JavaScriptLuca Garulli
 
Polyglot Persistence vs Multi-Model Databases
Polyglot Persistence vs Multi-Model DatabasesPolyglot Persistence vs Multi-Model Databases
Polyglot Persistence vs Multi-Model DatabasesLuca Garulli
 
Large Scale Log collection using LogStash & mongoDB
Large Scale Log collection using LogStash & mongoDB Large Scale Log collection using LogStash & mongoDB
Large Scale Log collection using LogStash & mongoDB Gaurav Bhardwaj
 
Creating a MongoDB Based Logging System in a Webservice Heavy Environment
Creating a MongoDB Based Logging System in a Webservice Heavy EnvironmentCreating a MongoDB Based Logging System in a Webservice Heavy Environment
Creating a MongoDB Based Logging System in a Webservice Heavy EnvironmentMongoDB
 
Building Real Time Systems on MongoDB Using the Oplog at Stripe
Building Real Time Systems on MongoDB Using the Oplog at StripeBuilding Real Time Systems on MongoDB Using the Oplog at Stripe
Building Real Time Systems on MongoDB Using the Oplog at StripeMongoDB
 
Design your application using Persistent Graphs and OrientDB
Design your application using Persistent Graphs and OrientDBDesign your application using Persistent Graphs and OrientDB
Design your application using Persistent Graphs and OrientDBLuca Garulli
 
OrientDB for real & Web App development
OrientDB for real & Web App developmentOrientDB for real & Web App development
OrientDB for real & Web App developmentLuca Garulli
 
The openCypher Project - An Open Graph Query Language
The openCypher Project - An Open Graph Query LanguageThe openCypher Project - An Open Graph Query Language
The openCypher Project - An Open Graph Query LanguageNeo4j
 
Logging Application Behavior to MongoDB
Logging Application Behavior to MongoDBLogging Application Behavior to MongoDB
Logging Application Behavior to MongoDBRobert Stewart
 
Big Data - O que Ă© o hadoop, map reduce, hdfs e hive
Big Data - O que Ă© o hadoop, map reduce, hdfs e hiveBig Data - O que Ă© o hadoop, map reduce, hdfs e hive
Big Data - O que Ă© o hadoop, map reduce, hdfs e hiveFlavio Fonte, PMP, ITIL
 

Viewers also liked (13)

Doc Book Vs Dita
Doc Book Vs DitaDoc Book Vs Dita
Doc Book Vs Dita
 
App Sharding to Autosharding at Sailthru
App Sharding to Autosharding at SailthruApp Sharding to Autosharding at Sailthru
App Sharding to Autosharding at Sailthru
 
Webinar: From Development to Production with Docker and MongoDB
Webinar: From Development to Production with Docker and MongoDBWebinar: From Development to Production with Docker and MongoDB
Webinar: From Development to Production with Docker and MongoDB
 
Internet Apps powered by NoSQL and JavaScript
Internet Apps powered by NoSQL and JavaScriptInternet Apps powered by NoSQL and JavaScript
Internet Apps powered by NoSQL and JavaScript
 
Polyglot Persistence vs Multi-Model Databases
Polyglot Persistence vs Multi-Model DatabasesPolyglot Persistence vs Multi-Model Databases
Polyglot Persistence vs Multi-Model Databases
 
Large Scale Log collection using LogStash & mongoDB
Large Scale Log collection using LogStash & mongoDB Large Scale Log collection using LogStash & mongoDB
Large Scale Log collection using LogStash & mongoDB
 
Creating a MongoDB Based Logging System in a Webservice Heavy Environment
Creating a MongoDB Based Logging System in a Webservice Heavy EnvironmentCreating a MongoDB Based Logging System in a Webservice Heavy Environment
Creating a MongoDB Based Logging System in a Webservice Heavy Environment
 
Building Real Time Systems on MongoDB Using the Oplog at Stripe
Building Real Time Systems on MongoDB Using the Oplog at StripeBuilding Real Time Systems on MongoDB Using the Oplog at Stripe
Building Real Time Systems on MongoDB Using the Oplog at Stripe
 
Design your application using Persistent Graphs and OrientDB
Design your application using Persistent Graphs and OrientDBDesign your application using Persistent Graphs and OrientDB
Design your application using Persistent Graphs and OrientDB
 
OrientDB for real & Web App development
OrientDB for real & Web App developmentOrientDB for real & Web App development
OrientDB for real & Web App development
 
The openCypher Project - An Open Graph Query Language
The openCypher Project - An Open Graph Query LanguageThe openCypher Project - An Open Graph Query Language
The openCypher Project - An Open Graph Query Language
 
Logging Application Behavior to MongoDB
Logging Application Behavior to MongoDBLogging Application Behavior to MongoDB
Logging Application Behavior to MongoDB
 
Big Data - O que Ă© o hadoop, map reduce, hdfs e hive
Big Data - O que Ă© o hadoop, map reduce, hdfs e hiveBig Data - O que Ă© o hadoop, map reduce, hdfs e hive
Big Data - O que Ă© o hadoop, map reduce, hdfs e hive
 

Similar to No sql matters_2012_keynote

Switching from Relational 2 Graph - CloudConf.it
Switching from Relational 2 Graph - CloudConf.itSwitching from Relational 2 Graph - CloudConf.it
Switching from Relational 2 Graph - CloudConf.itLuca Garulli
 
Why relationships are cool but join sucks - Big Data & Graphs in Rome
Why relationships are cool but join sucks - Big Data & Graphs in RomeWhy relationships are cool but join sucks - Big Data & Graphs in Rome
Why relationships are cool but join sucks - Big Data & Graphs in RomeLuca Garulli
 
Switching from the Relational to the Graph model
Switching from the Relational to the Graph modelSwitching from the Relational to the Graph model
Switching from the Relational to the Graph modelLuca Garulli
 
Soffri di patologie da "domini complessi con tante relazioni"? C'Ăš una nuova ...
Soffri di patologie da "domini complessi con tante relazioni"? C'Ăš una nuova ...Soffri di patologie da "domini complessi con tante relazioni"? C'Ăš una nuova ...
Soffri di patologie da "domini complessi con tante relazioni"? C'Ăš una nuova ...Luca Garulli
 
Austin Data Geeks - Why relationships are cool but join sucks
Austin Data Geeks - Why relationships are cool but join sucksAustin Data Geeks - Why relationships are cool but join sucks
Austin Data Geeks - Why relationships are cool but join sucksOrient Technologies
 
Why relationships are cool but "join" sucks
Why relationships are cool but "join" sucksWhy relationships are cool but "join" sucks
Why relationships are cool but "join" sucksLuca Garulli
 
Taking the Magical Leap with Immersive Technologies in Libraries
Taking the Magical Leap with Immersive Technologies in LibrariesTaking the Magical Leap with Immersive Technologies in Libraries
Taking the Magical Leap with Immersive Technologies in LibrariesSt. Petersburg College
 

Similar to No sql matters_2012_keynote (8)

Switching from Relational 2 Graph - CloudConf.it
Switching from Relational 2 Graph - CloudConf.itSwitching from Relational 2 Graph - CloudConf.it
Switching from Relational 2 Graph - CloudConf.it
 
Why relationships are cool but join sucks - Big Data & Graphs in Rome
Why relationships are cool but join sucks - Big Data & Graphs in RomeWhy relationships are cool but join sucks - Big Data & Graphs in Rome
Why relationships are cool but join sucks - Big Data & Graphs in Rome
 
Switching from the Relational to the Graph model
Switching from the Relational to the Graph modelSwitching from the Relational to the Graph model
Switching from the Relational to the Graph model
 
Soffri di patologie da "domini complessi con tante relazioni"? C'Ăš una nuova ...
Soffri di patologie da "domini complessi con tante relazioni"? C'Ăš una nuova ...Soffri di patologie da "domini complessi con tante relazioni"? C'Ăš una nuova ...
Soffri di patologie da "domini complessi con tante relazioni"? C'Ăš una nuova ...
 
Tish Shute - the next wave of AR
Tish Shute - the next wave of ARTish Shute - the next wave of AR
Tish Shute - the next wave of AR
 
Austin Data Geeks - Why relationships are cool but join sucks
Austin Data Geeks - Why relationships are cool but join sucksAustin Data Geeks - Why relationships are cool but join sucks
Austin Data Geeks - Why relationships are cool but join sucks
 
Why relationships are cool but "join" sucks
Why relationships are cool but "join" sucksWhy relationships are cool but "join" sucks
Why relationships are cool but "join" sucks
 
Taking the Magical Leap with Immersive Technologies in Libraries
Taking the Magical Leap with Immersive Technologies in LibrariesTaking the Magical Leap with Immersive Technologies in Libraries
Taking the Magical Leap with Immersive Technologies in Libraries
 

More from Luca Garulli

Scale Out Your Graph Across Servers and Clouds with OrientDB
Scale Out Your Graph Across Servers and Clouds  with OrientDBScale Out Your Graph Across Servers and Clouds  with OrientDB
Scale Out Your Graph Across Servers and Clouds with OrientDBLuca Garulli
 
How Graph Databases started the Multi Model revolution
How Graph Databases started the Multi Model revolutionHow Graph Databases started the Multi Model revolution
How Graph Databases started the Multi Model revolutionLuca Garulli
 
OrientDB and Hazelcast
OrientDB and HazelcastOrientDB and Hazelcast
OrientDB and HazelcastLuca Garulli
 
Switching from Relational to the Graph model v1.3
Switching from Relational to the Graph model v1.3Switching from Relational to the Graph model v1.3
Switching from Relational to the Graph model v1.3Luca Garulli
 
Switching from relational to the graph model
Switching from relational to the graph modelSwitching from relational to the graph model
Switching from relational to the graph modelLuca Garulli
 
OrientDB document or graph? Select the right model (old presentation)
OrientDB document or graph? Select the right model (old presentation)OrientDB document or graph? Select the right model (old presentation)
OrientDB document or graph? Select the right model (old presentation)Luca Garulli
 
OrientDB distributed architecture 1.1
OrientDB distributed architecture 1.1OrientDB distributed architecture 1.1
OrientDB distributed architecture 1.1Luca Garulli
 
OrientDB the database for the web 1.1
OrientDB the database for the web 1.1OrientDB the database for the web 1.1
OrientDB the database for the web 1.1Luca Garulli
 
Roma introduction and concepts
Roma introduction and conceptsRoma introduction and concepts
Roma introduction and conceptsLuca Garulli
 
OrientDB introduction - NoSQL
OrientDB introduction - NoSQLOrientDB introduction - NoSQL
OrientDB introduction - NoSQLLuca Garulli
 
RomaFramework Tutorial Basics
RomaFramework Tutorial BasicsRomaFramework Tutorial Basics
RomaFramework Tutorial BasicsLuca Garulli
 
Roma Meta Framework Concepts @JavaDay Rome 2007
Roma Meta Framework Concepts @JavaDay Rome 2007Roma Meta Framework Concepts @JavaDay Rome 2007
Roma Meta Framework Concepts @JavaDay Rome 2007Luca Garulli
 

More from Luca Garulli (12)

Scale Out Your Graph Across Servers and Clouds with OrientDB
Scale Out Your Graph Across Servers and Clouds  with OrientDBScale Out Your Graph Across Servers and Clouds  with OrientDB
Scale Out Your Graph Across Servers and Clouds with OrientDB
 
How Graph Databases started the Multi Model revolution
How Graph Databases started the Multi Model revolutionHow Graph Databases started the Multi Model revolution
How Graph Databases started the Multi Model revolution
 
OrientDB and Hazelcast
OrientDB and HazelcastOrientDB and Hazelcast
OrientDB and Hazelcast
 
Switching from Relational to the Graph model v1.3
Switching from Relational to the Graph model v1.3Switching from Relational to the Graph model v1.3
Switching from Relational to the Graph model v1.3
 
Switching from relational to the graph model
Switching from relational to the graph modelSwitching from relational to the graph model
Switching from relational to the graph model
 
OrientDB document or graph? Select the right model (old presentation)
OrientDB document or graph? Select the right model (old presentation)OrientDB document or graph? Select the right model (old presentation)
OrientDB document or graph? Select the right model (old presentation)
 
OrientDB distributed architecture 1.1
OrientDB distributed architecture 1.1OrientDB distributed architecture 1.1
OrientDB distributed architecture 1.1
 
OrientDB the database for the web 1.1
OrientDB the database for the web 1.1OrientDB the database for the web 1.1
OrientDB the database for the web 1.1
 
Roma introduction and concepts
Roma introduction and conceptsRoma introduction and concepts
Roma introduction and concepts
 
OrientDB introduction - NoSQL
OrientDB introduction - NoSQLOrientDB introduction - NoSQL
OrientDB introduction - NoSQL
 
RomaFramework Tutorial Basics
RomaFramework Tutorial BasicsRomaFramework Tutorial Basics
RomaFramework Tutorial Basics
 
Roma Meta Framework Concepts @JavaDay Rome 2007
Roma Meta Framework Concepts @JavaDay Rome 2007Roma Meta Framework Concepts @JavaDay Rome 2007
Roma Meta Framework Concepts @JavaDay Rome 2007
 

Recently uploaded

Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 

Recently uploaded (20)

Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 

No sql matters_2012_keynote

  • 1. NoSQL adoption: what's the next step? Luca Garulli – Founder and CEO NuvolaBase Ltd May 2012 29 - 30 in Cologne, Germany (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 1
  • 2. 2009 A new grass-root movement of rebels, a few underdogs who believe that the common Relational model is no longer the only solution to every problem. After 30 long years of “Relational domain” new alternatives have become possible and sustainable (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 2
  • 3. it's name is NoSQL (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 3
  • 4. 2012: 3 years later the revolution has evolved: many new products, larger adoption (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 4
  • 5. ”NoSQL database technologies are largely being adopted for new projects that require additional scalability, performance, relaxed consistency and agility.“ – 451 Research of May 22nd 2012 (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 5
  • 6. Nobody talks about the real origins of databases. You could marvel about the lot of similarities between the past and today (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 6
  • 7. Are you ready to go back to the past? (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 7
  • 8. The computer age and the beginning of databases? (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 8
  • 9. No, let's go further back before computers took over to see how society managed information persistently (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 9
  • 10. Way too back? (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 10
  • 11. “Stone” was our first persistent database. Before that everything was “volatile” because in- memory only (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 11
  • 12. Pros: Cheap (it’s free), very-very durable and always available (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 12
  • 13. Cons: not exactly portable... (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 13
  • 14. ...And this kind of storage had the same problems of modern RDBMS (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 14
  • 15. Slow inserts! (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 15
  • 16. no Market Leader for this technology because stone is FREE and unlimited (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 16
  • 17. So, the world needed a better technology: what next? (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 17
  • 18. Egypt, 5000 years ago “Papyrus” was the database v. 2.0 (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 18
  • 19. Not so cheap not so durable but portable This was the first “mobile” market (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 19
  • 20. Market Leader the Pharaoh ? (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 20
  • 21. Wait a sec! The Pharaoh Market Leader spoke about prophecies, exactly like an “Oracle” would... (Mhm, I should elaborate it a little bit more) (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 21
  • 22. So, the world needed an even better technology: what next? (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 22
  • 23. Europe, 500 years ago Modern “Books" became database v. 2.1 (minor version) (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 23
  • 24. Easy to make copies, not durable as stone, but (c) Luca Garulli portable Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 24
  • 25. Users started to make choices: 3)want something really durable? Go with Stone 2) do you want something portable? Papyrus 3) Need also copies? Books (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 25
  • 26. You can’t have all of them. Choose between: easy to (C)opy dur(A)bility (P)ortability But just pick 1 or 2 of them! (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 26
  • 27. I can’t believe: the origin of CAP theorem ? easy to (C)opy Book Stone dur(A)bility (P)ortability Papyrus (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 27
  • 28. We found some interesting similarities with the modern databases: history repeating itself! (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 28
  • 29. Interpreting Technology Hype by Gartner Visibility Peak of Inflated Plateau of Expectations productivity Slope of productivity Trough of Disillusionment Technology trigger Maturity (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 29
  • 30. Interpreting Technology Hype by Gartner Visibility A potential technology breakthrough kicks things off. Early proof-of-concept stories and Peak of media interest trigger significant publicity. Inflated Often no usable products exist and Plateau of Expectations commercial viability is unproven. productivity Slope of productivity Trough of Disillusionment Technology trigger Maturity (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 30
  • 31. Interpreting Technology Hype by Gartner Visibility Peak of Inflated Plateau of Expectations productivity Slope of productivity Trough publicity produces a number of Early of success stories—often accompanied by Disillusionment scores of failures. Some companies take action; many do not. Technology trigger Maturity (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 31
  • 32. Interpreting Technology Hype by Gartner Interest wanes as experiments and implementations fail to deliver. Producers of the Visibility technology shake out or fail. Investments continue Peak of only if the surviving providers improve their Inflated products to the satisfaction of early adopters. Plateau of Expectations productivity Slope of productivity Trough of Disillusionment Technology trigger Maturity (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 32
  • 33. Bad stories from the trenches “Goodbye, CouchDB” May 10th, 2012 by Steven Hazel “Failing with MongoDB” November 5, 2011 by Michael Schurter “A year with MongoDB” April 2012 on Kiip.me blog “MongoDB: 9 months on” 11 May 2011 by Clueless Joe (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 33
  • 34. Interpreting Technology Hype by Gartner More instances of how the technology can Visibility benefit the enterprise start to crystallize and become more widely understood. Peak of Second and third-generation products Inflated appear from technology providers. More Plateau of Expectations enterprises fund pilots; conservative productivity Slope of companies remain cautious. productivity Trough of Disillusionment Technology trigger Maturity (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 34
  • 35. Interpreting Technology Hype by Gartner Visibility Peak of Inflated Plateau of Expectations productivity Slope of productivity Mainstream adoption starts to take off. Criteria forof Trough assessing provider viability are more clearly defined. The Disillusionment technology’s broad market applicability and relevance are clearly Technology paying off. trigger Maturity (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 35
  • 36. Interpreting Technology Hype by Gartner 2010 - 2011 Don't worry, we're here! Visibility Peak of Inflated Plateau of Expectations productivity Slope of productivity 2015 -> 2012 - 2014 Trough of Disillusionment 2009 2011 Technology trigger Maturity (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 36
  • 37. Why some users don't succeed using NoSQL? (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 37
  • 38. Don't you know them? Really? (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 38
  • 39. You must apply the 3 laws of NoSQL to avoid a blood bath (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 39
  • 40. NoSQL 1 law st The first rule of NoSQL is: «You do not talk about NoSQL» (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 40
  • 41. NoSQL 2 law nd there is no “golden hammer” “if all you have is a hammer, everything looks like a nail” (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 41
  • 42. NoSQL 2 law nd explained If all you have is a everything looks like rdbms tables key value keys and values document documents graph db vertexes and nodes (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 42
  • 43. NoSQL 3 law rd “one size doesn't fit all” (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 43
  • 44. NoSQL 3 law rd explained: choose the right model(s) (not exhaustive) Scalability/Size Key/Value Column based Document Relational Graph Complexity (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 44
  • 45. Problem: what about if you need multiple models? Very often the domain can be split in multiple sub-domains: this is the Polyglot Persistence (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 45
  • 46. Polyglot Persistence Use multiple storage solutions to avoid compromising on the business data model... Don’t change your model, change storage solution or integrate it with an additional product supports the model you need! (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 46
  • 47. Multi-Model storage 1/2 one product, multiple faces Because the Polyglot Persistence some NoSQL vendors support multiple models in the same product (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 47
  • 48. Multi-Model storage 2/2 This is the best way to achieve the NoSQL goal choosing the right model for each piece of domain with no compromises Only one product to know and manage (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 48
  • 49. Multi-Model example 1/4 To model the main entities of a selling product we choose the Graph one because it has the ability to traverse items and allow fast retrieving of relationships. NOTE: This is just an example! Graph Model Order Invoice StockItem Stock (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 49
  • 50. Multi-Model example 2/4 Document model Customer Provider Graph Model Customer and Order Product need a Invoice flexible schema to place additional fields like the «4° StockItem mobile number» or the «XXX social Stock network ID» (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 50
  • 51. Multi-Model example 3/4 Document model Customer Provider Graph Model Object Oriented Order Model Invoice Person StockItem Vertex Stock (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 51
  • 52. Multi-Model example 4/4 Document model Constraints: - phones > 0 Customer Provider - surname not null Graph Model Object Oriented Order Model Invoice Person StockItem Vertex Stock (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 52
  • 53. Lessons learned (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 53
  • 54. Lesson learned 1/2 If you changed your domain to fit the selected NoSQL solution, What you selected was probably wrong or not the very best solution! #fail (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 54
  • 55. Lesson learned 2/2 Selecting a NoSQL product because it’s simply the most famous or because your preferred Social Network is using it means that nothing has changed: You’re making the same mistake that generations of developers made in the last 30 years by selecting the Relational DBMS for every use case! (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 55
  • 56. Lesson learned 2/2b This is against the NoSQL vein! #superfail (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 56
  • 57. Other 9 factors to consider Obviously, the model is not the only thing to evaluate when you choose the right product: 3.Maturity 4.Constraints (lock mgmt, write strategy, reliability, etc.) 5.Who is using it in production? 6.Has anyone ever used it with a volume of data of similar to mine? 7.Is it Open Source? Is there an active community? 8.Commercial Support 9.Current skill of your team 10.TCO (Total Cost of Ownership) 11.Test it before to select even with micro-benchmarks represent your use case! (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 57
  • 58. Future directions: NoSQL 2nd and 3rd generation of NoSQL products are providing more features RDBMS already have: * persistence for memory-only db * transaction or similar * better locking to improve concurrency * finer indexing systems (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 58
  • 59. Future directions: RDBMS Nth generation of RDBMS are providing NoSQL features like: * schema-less * improved horizontal scalability * raw API for fast insertion * native support for array/collection * full-text, queueing, etc. (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 59
  • 60. The common goal faster, more scalable and flexible solution NewSQL NoSQL RDBMS (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 60
  • 61. NoSQL what risks & challenges with such scenario? (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 61
  • 62. NoSQL Risks 1/2 In many cases companies continue to use RDBMS as primary storage leaving to the NoSQL solutions the «secondary role» of distributed and/or scalable cache (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 62
  • 63. NoSQL Risks 2/2 RDBMS and NewSQL products are trying to provide a technical answer to face the «BigData» and all the problems of performance and scalability Companies could stay with the «improved» (thanks to NoSQL) RDBMS products (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 63
  • 64. NoSQL Challenge The NoSQL challenge is to gain the trust of users and customers to be used not only as a secondary storage, but playing the first role in the game of the persistence (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 64
  • 65. That's all folks Enjoy NoSQL Matters 2012 2 day! nd Many thanks! (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 65
  • 66. Luca Garulli Author of CEO at Document-Graph NoSQL Open Source project Ltd, London UK www.twitter.com/lgarulli (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 66
  • 67. Luca Garulli Author of CEO at Document-Graph NoSQL Hey, I’m a developer! If you want to Open Source project hear something more technical don’t miss «Design your Ltd, London UK application using Persistent Graphs and OrientDB» Today 14:45 House 6 Room 2 www.twitter.com/lgarulli (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 67

Editor's Notes

  1. Good morning... Apologize for my english... Did you enjoy yesterday? <Compliments to the organization> I’m very excited. I think there are few events... 2 Question to the attendees
  2. Intro – musichetta, voce da film
  3. Spartaaaa!!!
  4. NoSQL = 82%, MySQL = 40%
  5. It ’ s like to say «I ’ m using Oracle because JP Morgan used it. Why should I use anything else?»
  6. It ’ s like to say «I ’ m using Oracle because JP Morgan used it. Why should I use anything else?»
  7. Some RDBMS vendor have got the point that sometimes the developer need to go raw for performance: «Let to the developer more power & control»!
  8. This couldn ’ t be a risk for the NoSQL vendors that don ’ t want to replace the RDBMS but rather providing an alternative solution to combine with it
  9. RDBMS are not sleeping!