CloudCrowd - NT/e Presentation on Scalable Cloud Transaction & ORM


Published on

NT/e's Presentation on Scalable Cloud Transaction & ORM at the GigaSpaces CloudCrowd Evening Gathering in London - November 2009.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

CloudCrowd - NT/e Presentation on Scalable Cloud Transaction & ORM

  1. 1. 1<br />Matthew Fowler, NT/e<br />CloudSave<br />CloudTran<br />Scalable Transactions in the Cloud<br />
  2. 2. 2<br />?<br />And the answer is<br />platform for mainstream Java developers<br />to use IMDG<br />for scalable, commercial applications<br />without worry and minimal hassle<br />for commercial advantage<br />It&apos;s a lump of middleware<br />built on, adding value to GigaSpaces<br />
  3. 3. 3<br />2001<br />WebLogic/J2EE specialisation<br />One week training course<br />4-point architecture for dummies<br />Messed-up architecture<br />revenue down<br />Automating server-side applications<br />J2EE/EJB<br />Spring/Hibernate <br />
  4. 4. 4<br />3-5...5-10...10-20...1,000,000 <br />Tracy&apos;s story: the path of successful apps<br />Database<br />Caching<br />In-memory Data Grid<br />The 50,000 club<br />Application scale drivers<br />Mobile phone growth, iPhone Apps<br />Micropayments<br />e-commerce continued growth<br />
  5. 5. 5<br />Get an edge with performance<br />“Latency really matters ... 100ms of latency costs 1% in sales.” Amazon<br />“An extra 0.5 seconds in search page generation time dropped traffic by 20%.” Google<br />Please wait<br />.....................<br />“... almost half of visitors will abandon a site if they perceive a page or feature takes longer than 2 seconds to load. ” GetElastic<br />
  6. 6. 6<br />6.5m, x10yrs, $400bn/yr<br />Mainstream Java developers<br />6.5m<br />most have 5-10 years experience<br />50 million man-years experience<br />Plain old application development market<br />$400bn/year<br />Can they build an IMDG application?<br />How can IMDG go mainstream?<br />
  7. 7. 7<br />Explaining it to your Mom / Boss<br />IMDG - SOR<br />Persistent Storage<br />
  8. 8. 8<br />Explaining it to a techie<br />System of Record in IMDG. Keep DB for<br /><ul><li>warehouse apps/BI
  9. 9. sleeping at night.</li></ul>Catching the money:<br />ACID transactions<br />throughput, scalability, bullet-proof reliability<br />distributed, data + messaging<br />ORM - Object references, not foreign keys.Easy to program. Entity groups for performance.<br />
  10. 10. 9<br />In-Memory Data Bases - Are You Crazy?<br />What&apos;s it worth:<br />Loss of sales, traffic - 5% vulnerable, saved by speed of IMDG<br />For $100m/year co:<br />$5m/year revenue for good behaviour<br />Customer/order/product data - 2million * 16Kb<br />8 servers in grid for 32GB live data<br />8 servers isn&apos;t a lot<br />Worth doing the numbers!<br />
  11. 11. 10<br />Distributed Transactions <br />Low Reliability<br />Complicated Programming<br />of Unknowing<br />Unintended Consequences<br />Fear and loathing ...<br />
  12. 12. 11<br />, 1, 2, 3, ... <br />Other alternatives<br />forget transactions, forget databases<br />Dan&apos;s the Man<br />GoogleApps on V2 last we heard<br />
  13. 13. 12<br />How is it possible?<br />Distributed Cloud Transactions<br />Redefining the problem<br />Grid connected<br />Helland&apos;s get out clause<br />System of Record is in the grid<br />No voting - 1PC not 2PC<br />Commit to backed-up memory<br />Leverage the GigaSpaces platform<br />SBA/Entity Groups, Transactions, SQL Queries, Backups<br />
  14. 14. 13<br />200/ ... 2,000 ... 20,000/second<br />
  15. 15. 14<br />Transactions you can count on<br />
  16. 16. 15<br />Transactions you can count on<br />
  17. 17. 16<br />Herding Cats - Java Style<br />How to distribute data<br />How to find it<br />How to resolve references <br />IMDG versus user view: FK ↔ OO<br />Atomicity on failure<br />Timeouts<br />Scalability<br />Consistency and isolation<br />
  18. 18. 17<br />The &apos;T&apos; Word<br />GigaSpaces Local Transactions<br />GigaSpaces Distributed Transactions<br />Mirror service<br />see Cat-Herding 101<br />
  19. 19. 18<br />How CloudTran ORM works<br />Partitioning<br />(entity groups)<br />Client<br />Gridsearch<br />OL<br />Order<br />Service<br />Commit<br />Data<br />Data<br />TxB<br />Commit<br />Commit<br />Confirm<br />Confirm<br />Tx<br />Messaging<br />Datasources<br />
  20. 20. 19<br />300 .. 700 .. 900 .. 2,100<br />Performance of transaction buffer<br />Tiny Transactions per second<br />
  21. 21. 20<br />Virgin Airways <br /><br />IMDG<br />In-Cloud Federated Applications<br />IMDG<br />CloudTran -FederatedTransaction Buffer<br />
  22. 22. 21<br />Scalable transactions in the cloud?<br />platform for mainstream Java developers<br />to use IMDG<br />for scalable, commercial applications<br />without worry and minimal hassle<br />for commercial advantage<br />GigaSpaces<br />CloudTran<br />
  23. 23. 22<br />End<br />