NoSQL adoption: whats the next step?    Luca Garulli – Founder and CEO    NuvolaBase Ltd                                  ...
2009                            A new grass-root movement                   of rebels, a few underdogs who believe        ...
its name is                      NoSQL(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unport...
2012: 3 years later the     revolution has evolved:              many new products,               larger adoption(c) Luca ...
”NoSQL database technologies are largely being adopted fornew projects that require additional scalability, performance,  ...
Nobody talks about the real origins of              databases.   You could marvel about the lot ofsimilarities between the...
Are you ready to go back to the past?(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unporte...
The computer age and the          beginning of databases?(c) Luca Garulli   Licensed under a Creative Commons Attribution-...
No, lets go further back   before computers took   over to see how society    managed information         persistently(c) ...
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) Luc...
Pros:         Cheap (it’s free),            very-very           durable and         always available(c) Luca Garulli   Lic...
Cons: not exactly portable...(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported Licens...
...And this kind of        storage had the      same problems of       modern RDBMS(c) Luca Garulli   Licensed under a Cre...
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   Lic...
So, the world             needed a better               technology:               what next?(c) Luca Garulli   Licensed un...
Egypt, 5000 years ago                                                       “Papyrus”                                     ...
Not so cheap                    not so durable                     but portable                   This was the first      ...
Market Leader  thePharaoh   ?(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported Licens...
Wait a sec!    The Pharaoh Market Leader     spoke about prophecies,      exactly like an “Oracle”              would...  ...
So, the world             needed an even                  better               technology:               what next?(c) Luc...
Europe, 500 years ago      Modern “Books" became      database v. 2.1 (minor version)(c) Luca Garulli   Licensed under a C...
Easy to make                      copies,                   not durable as                     stone, but(c) Luca Garulli ...
Users started to make choices:    3)want something really durable?              Go with Stone   2) do you want something p...
You can’t have all of them. Choose                  between:                                easy to (C)opy                ...
I can’t believe: the origin of             CAP theorem ?                        easy to (C)opy                            ...
We found some interesting similarities     with the modern databases:       history repeating itself!(c) Luca Garulli   Li...
Interpreting Technology Hype                                              by GartnerVisibility                            ...
Interpreting Technology Hype                                                  by GartnerVisibility                      A ...
Interpreting Technology Hype                                              by GartnerVisibility                            ...
Interpreting Technology Hype                                              by Gartner                                      ...
Bad stories from the trenches       “Goodbye, CouchDB”   May 10th, 2012 by Steven Hazel                        “Failing wi...
Interpreting Technology Hype                                                  by Gartner             More instances of how...
Interpreting Technology Hype                                              by GartnerVisibility                            ...
Interpreting Technology Hype                                                   by Gartner                               20...
Why some                                                          users dont                                              ...
Dont you know them? Really?(c) Luca Garulli   Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License ...
You must apply the 3 laws of     NoSQL to avoid a blood bath(c) Luca Garulli   Licensed under a Creative Commons Attributi...
NoSQL 1 law                                 st      The first rule of NoSQL is:       «You do not talk about              ...
NoSQL 2 law                                 nd                   there is no “golden hammer”        “if all you have is a ...
NoSQL 2 law                                 nd                                          explained           If all you hav...
NoSQL 3 law                                 rd “one size doesnt fit all”(c) Luca Garulli   Licensed under a Creative Commo...
NoSQL 3 law                                    rd                      explained: choose the right model(s)               ...
Problem:           what about if you need multiple                      models?                   Very often the domain ca...
Polyglot Persistence    Use multiple storage solutions to  avoid compromising on the business             data model...   ...
Multi-Model storage 1/2                     one product, multiple facesBecause the Polyglot Persistence some  NoSQL vendor...
Multi-Model storage 2/2 This is the best way to achieve theNoSQL goal choosing the right model  for each piece of domain w...
Multi-Model example 1/4   To model the main entities of a selling product we   choose the Graph one because it has the abi...
Multi-Model example 2/4 Document model                     Customer                          Provider  Graph Model        ...
Multi-Model example 3/4 Document model                     Customer                          Provider  Graph Model        ...
Multi-Model example 4/4 Document model                                                                                  Co...
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...
Lesson learned 2/2  Selecting a NoSQL product because it’s simply the most famous or because yourpreferred Social Network ...
Lesson learned 2/2bThis is against the NoSQL vein!                           #superfail(c) Luca Garulli   Licensed under a...
Other 9 factors to considerObviously, the model is not the only thing to evaluate whenyou choose the right product:3.Matur...
Future directions: NoSQL2nd and 3rd generation of NoSQL products are  providing more features RDBMS already               ...
Future directions: RDBMS      Nth generation of RDBMS are providing               NoSQL features like:                    ...
The common goal                                           faster,                                           more          ...
NoSQL                          what                   risks & challenges                   with such scenario?(c) Luca Gar...
NoSQL Risks 1/2In many cases companies continue to use RDBMS as primary storageleaving to the NoSQL solutions the  «second...
NoSQL Risks 2/2RDBMS and NewSQL products are tryingto provide a technical answer to face the   «BigData» and all the probl...
NoSQL ChallengeThe NoSQL challenge is to gain the trust of users and customers to       be used not only as a        secon...
Thats all folks      Enjoy NoSQL Matters 2012              2 day!               nd                    Many thanks!(c) Luca...
Luca Garulli                   Author of                                                      CEO at          Document-Gra...
Luca Garulli                   Author of                                                      CEO at     Document-Graph No...
Upcoming SlideShare
Loading in...5
×

No sql matters_2012_keynote

2,722

Published on

Second day Key Note at NoSQL Matters 2012 in Cologne, Germany

Published in: Technology, Automotive
0 Comments
5 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
2,722
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
0
Comments
0
Likes
5
Embeds 0
No embeds

No notes for slide
  • 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
  • Intro – musichetta, voce da film
  • Spartaaaa!!!
  • NoSQL = 82%, MySQL = 40%
  • It ’ s like to say «I ’ m using Oracle because JP Morgan used it. Why should I use anything else?»
  • It ’ s like to say «I ’ m using Oracle because JP Morgan used it. Why should I use anything else?»
  • Some RDBMS vendor have got the point that sometimes the developer need to go raw for performance: «Let to the developer more power & control»!
  • 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
  • RDBMS are not sleeping!
  • No sql matters_2012_keynote

    1. 1. NoSQL adoption: whats 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. 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. 3. its name is NoSQL(c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 3
    4. 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. 5. ”NoSQL database technologies are largely being adopted fornew 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. 6. Nobody talks about the real origins of databases. You could marvel about the lot ofsimilarities between the past and today(c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 6
    7. 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. 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. 9. No, lets 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. 10. Way too back?(c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 10
    11. 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. 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. 13. Cons: not exactly portable...(c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 13
    14. 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. 15. Slow inserts!(c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 15
    16. 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. 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. 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. 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. 20. Market Leader thePharaoh ?(c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 20
    21. 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. 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. 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. 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. 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. 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. 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. 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. 29. Interpreting Technology Hype by GartnerVisibility 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. 30. Interpreting Technology Hype by GartnerVisibility 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. 31. Interpreting Technology Hype by GartnerVisibility 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. 32. Interpreting Technology Hype by Gartner Interest wanes as experiments and implementations fail to deliver. Producers of theVisibility 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. 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. 34. Interpreting Technology Hype by Gartner More instances of how the technology canVisibility 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. 35. Interpreting Technology Hype by GartnerVisibility 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. 36. Interpreting Technology Hype by Gartner 2010 - 2011 Dont worry, were 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. 37. Why some users dont succeed using NoSQL?(c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 37
    38. 38. Dont you know them? Really?(c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 38
    39. 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. 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. 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. 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. 43. NoSQL 3 law rd “one size doesnt fit all”(c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 43
    44. 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. 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. 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. 47. Multi-Model storage 1/2 one product, multiple facesBecause 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. 48. Multi-Model storage 2/2 This is the best way to achieve theNoSQL goal choosing the right model for each piece of domain with no compromisesOnly one product to know and manage(c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 48
    49. 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. 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. 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. 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. 53. Lessons learned(c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 53
    54. 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. 55. Lesson learned 2/2 Selecting a NoSQL product because it’s simply the most famous or because yourpreferred Social Network is using it means that nothing has changed: You’re making the same mistake thatgenerations of developers made in the last30 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. 56. Lesson learned 2/2bThis is against the NoSQL vein! #superfail(c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 56
    57. 57. Other 9 factors to considerObviously, the model is not the only thing to evaluate whenyou choose the right product:3.Maturity4.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 tomine?7.Is it Open Source? Is there an active community?8.Commercial Support9.Current skill of your team10.TCO (Total Cost of Ownership)11.Test it before to select even with micro-benchmarksrepresent your use case! (c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 57
    58. 58. Future directions: NoSQL2nd 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. 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. 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. 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. 62. NoSQL Risks 1/2In many cases companies continue to use RDBMS as primary storageleaving 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. 63. NoSQL Risks 2/2RDBMS and NewSQL products are tryingto provide a technical answer to face the «BigData» and all the problems of performance and scalabilityCompanies 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. 64. NoSQL ChallengeThe 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. 65. Thats 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. 66. Luca Garulli Author of CEO at Document-Graph NoSQL Open Source project Ltd, London UKwww.twitter.com/lgarulli(c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 66
    67. 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 2www.twitter.com/lgarulli(c) Luca Garulli Licensed under a Creative Commons Attribution-NoDerivs 3.0 Unported License Page 67

    ×