RavenDB in the wild

1,423 views

Published on

Talk for UGIAlt.Net (in italy)

Published in: Technology
1 Comment
3 Likes
Statistics
Notes
  • Grazie per averlo postato. Mi è dispiaciuto non poter seguire la tua sessione ma come ho scritto sul mio post avevo un diverso 'fil rouge' da seguire.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total views
1,423
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
22
Comments
1
Likes
3
Embeds 0
No embeds

No notes for slide

RavenDB in the wild

  1. 1. RavenDB In the wild…
  2. 2. Mauro ServientiArchitect…well not really :-)@: mauro@topics.itb: //milestone.topics.it
  3. 3. Agenda…• Background;• Let’s go;• This slide should be dropped…
  4. 4. BACKGROUNDWhat the hell are you talkin’ about…?
  5. 5. hum…?• Not using the relational model (nor the SQL language);• Open source;• Designed to run on large clusters;• No schema, allowing fields to be added to any record without controls;• Document based;• Documents independency;
  6. 6. why• Schema free;• Storing full complex object graphs (aggregates);• Low overhead: Usually operate on a single document: • One read, one write;• Fast, really fast :-)• Known format: the database itself can do lots of things with documents;
  7. 7. Got the time…tickin’ in my head Sql NoSql• Consistent; • Eventually consistent;• ACID; • ACID;• Supported; • Supported :-)• Strong schema; • schema-less;• Relational (joins); • No relation(s) • no joins :-) • But…map/reduce and multi map;
  8. 8. RAVENDBPlease welcome…
  9. 9. Why RavenDB: our project• 20.000 users• 50 msgs/day/user• Something like 200.000.000 msgs/year• Office 365?• Exchange on premise?• …26 days to be up & running;
  10. 10. Selling RavenDB to the corporation• Esent; • «Munin» to run on Mono;• Linq API; • .net everywhere;• Is supported;• Standard backup support (via Shadow copy);
  11. 11. Architecture HTTP/RestRaven Http Server Background Tasks HTTP Indexing Reducing User Tasks Server Document Store Index Store ESENT / Raven.Munin
  12. 12. FEATURES
  13. 13. Indexing: give me my data!• Auto Indexing, Map (only), Map/Reduce, Multi Map;
  14. 14. INDEXINGA couple of…
  15. 15. Includes• Prevent the Select N+1 pain;
  16. 16. Statistics, staleness and paging
  17. 17. Facets
  18. 18. Suggestion
  19. 19. Features• Safe by default (max 128 «rows» per query);• Sharding;• Multi tenant;• Replica;• Embedded mode (a must for tests)• Dynamic Fields: «Search»;• Cache;• Lucene;• Spatial;
  20. 20. EXTENSIBILITY
  21. 21. Extensibility: MEF• Lucene Analyzers;• Bundles;• Responders;• Triggers;• Document metadata;• Schema less (hooks to update schema at read time);
  22. 22. WE ARE USED TO…
  23. 23. Unit of Work• Primary Key Auto generation• Transaction;• Identity Map;• Tracking;
  24. 24. Polimorphic queries• The best choice is to define an index:• Magic strings… :-/ • Don’t worry: «conventsions» handling;
  25. 25. ACTION
  26. 26. THANK YOU!Questions?

×