Create an account

Very important

  • To access the important data of the forums, you must be active in each forum and especially in the leaks and database leaks section, send data and after sending the data and activity, data and important content will be opened and visible for you.
  • You will only see chat messages from people who are at or below your level.
  • More than 500,000 database leaks and millions of account leaks are waiting for you, so access and view with more activity.
  • Many important data are inactive and inaccessible for you, so open them with activity. (This will be done automatically)


Thread Rating:
  • 307 Vote(s) - 3.51 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Main differences/features among the most known NoSQL systems

#1
I have no experience with NoSQL database systems but if I would have to choose one of the most known (MongoDb, Cassandra, CouchDb, Redis), can someone describe the relevant main features/differences of every one? Is there anything I should know with regards to their capabilities that might affect the choice of NoSQL system I use>
Reply

#2
I was lately doing some research on this topic. I can post you some links..

Nice [categorization][1] of NoSQL DBs.

[Comparing][2] MongoDB and CouchDB

Comparing MongoDB, CouchDB and RavenDB [Part1][3]
Comparing MongoDB, CouchDB and RavenDB [Part2][4]

I was pretty impressed by RavenDB. It supports also transactions and triggers,but the licensing is not so friendly.

Some [arguments][5] why RavenDB from Ayende (creator of RavenDB)


[1]:

[To see links please register here]

[2]:

[To see links please register here]

[3]:

[To see links please register here]

[4]:

[To see links please register here]

[5]:

[To see links please register here]

Reply

#3
In addition to the other links, take a look at the [Survey of Distributed Databases][1] as well as this what if that takes a look at the characteristics of other NoSQL databases and how they respond - [MongoDB and Foursquare - What If?].

Finally, [NoSQLSummer] has a lot of good papers describing the various offerings out there and the theoretical underpinnings of each one.


[1]:

[To see links please register here]

[2]:

[To see links please register here]

[3]:

[To see links please register here]

Reply

#4
Redis is a **key-value store**. You can usually insert a primitive value (int, string, bool), or an array of primitives under a single key. Retrieval of data is usually limited to query by key. These are the most basic NoSQL databases.

Cassandra is a **column-family store**. It's similar to a key-value store, but supports nesting of key-value pairs up to about four levels deep. Querying is limited to query by key and map-reduce functions. This type of database has a rather difficult data model ([does 'supercolumn' ring any bells?](

[To see links please register here]

)) and is highly specialized for extremely large amounts of data.

MongoDB and CouchDB are both **document databases**. They both store JSON documents, which aren't restricted by a schema, giving you a lot of flexibility. The database allows you to query the contents of these documents, which makes it very easy to retrieve data, compared to other types of NoSQL databases. Map-reduce functions are also supported.

Martin Fabik's answer contains some good links to comparisons of MongoDB and CouchDB.

Ayende has a series of blog posts called [That No SQL Thing](http://www.google.com/search?q=site%3Aay...l+thing%22) that handles each of these types. It's a good introduction to the NoSQL concept, the different types of NoSQL databases and how to query each of them. I highly recommend you read his articles on the database types I mentioned above, they are very instructive!
Reply



Forum Jump:


Users browsing this thread:
1 Guest(s)

©0Day  2016 - 2023 | All Rights Reserved.  Made with    for the community. Connected through