Upgrade to Pro — share decks privately, control downloads, hide ads and more …

uSwitch.com - Our Age of Enlightenment

Paul Ingles
November 28, 2012

uSwitch.com - Our Age of Enlightenment

My talk from the NoSQL Exchange, London, 28th November 2012. Hosted by Skillsmatter.

Variation and selection are great ways to evolve complex systems. Composing complex systems from smaller pieces allows the introduction of greater variation. Maximise discovery.

Homogeneity in the large should be avoided. Models provide utility- both organisationally and technically. Rather than trying to view the world as a single model under tension, compose many smaller models for greater utility.

NoSQL represents the rejection of single models. Composing a system with multiple data stores allows us to safely experiment and have data stores 'find their place'.

Paul Ingles

November 28, 2012
Tweet

More Decks by Paul Ingles

Other Decks in Technology

Transcript

  1. ... a cultural movement of intellectuals in 18th century ...

    [whose] purpose was to reform society using reason (rather than tradition, faith and revelation) The Age of Enlightenment
  2. application of reason over intuition, tradition and faith Enlightenment at

    ... inhibited by legacy monolithic system ... reinforced through inflexibile models
  3. MS SQL Server Operational Store Reporting Data Warehousing Network Analysis

    Correlational Study Realtime Single Model in Tension: DB
  4. MS SQL Server Change is global Releasing is complex Add

    process to manage complexity Single Model in Tension: DB
  5. hard to avoid if difficult to talk to anything else

    Monolithic Architecture make decisions on tradition and faith
  6. “the mechanics of genetic evolution provide a clear and compelling

    picture of how a system can capture and exploit implicit insight without creating explicit knowledge... ... trial and error advances society’s material interests without conscious knowledge or planning.” - Jim Manzi, Uncontrolled
  7. NoSQL is obvious “The solutions are all simple - after

    you have arrived at them. But they’re only simple when you know already what they are.” -Zen and the Art of Motorcycle Maintenance
  8. Keep problems local Build complex system from smaller parts Small

    flows of data between independent processes
  9. Tariff Editor Comparison Service Energy Website Back Office MongoDB MongoDB

    Charon SQL Server MySQL Energy Region CSV Reconciliation Profit & Loss Southampton Uni Research MysQL Redis MySQL:RDS
  10. Tariff Editor Comparison Service Energy Website Back Office Car Insurance

    Website Credit Cards Website ... nginx proxy servers Kaa HDFS Hive Cascalog Visitor Service Neo4j Cassandra
  11. Micro-service Architecture Platform for continuous delivery/ strangulation Bounded context guides

    system decomposition Keep problems local Composition with narrow APIs and data
  12. Enlightenment at NoSQL: Rejection of “One True” Model System composition

    important Embrace variation and selection: Monoliths and homogeneity considered harmful. Micro-services make it safe. Compose with data flows and narrow APIs