Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 5 Next »


This page discusses the options of elastic persistence and how they compare

MongoDB

Main characteristics

  • BSON format (binary JSON), so more efficiency in data transfer and storage
  • C++
  • Supports updates in-place, which means that no new documents have to be created but the existing document is modified. This improves the write performance a lot.
  • Adhoc queries, which means that indexes are not mandatory because in a lot of cases MongoDB can find an optimal query path.
  • Language specific drivers

Questions

  • How to work with update commands?  Write side?  Is our idea valid?
  • How to test scalability?
  • How to deal with relations?
  • How to handle schema updates in the code?
  • How to make a versioned update like [update ... where oid = ... and version = 2] and then check how many documents were updated.

Links

Pros

  • BSON (binary JSON) instead of JSON, which optimizes the storage and communication of documents
  • Native drivers for a lot of languages (including Java, C++, C#, PHP, Javascript, Groovy etc)
  • Good support for queries
  • High read and write performance

Cons

  • Less durability (no crash-only design) because writes are not immediately synced with the file system. This means that the write performance is higher, but data can get lost after a crash. From version 1.7.5 journalling is supported which provides more durability, but this seems to be work-in-progress.

CouchDB

TODO

Pros

Cons

Cassandra

TODO


  • No labels