Questions tagged [nosql]

NoSQL (sometimes expanded to "not only SQL") is a broad class of database management systems that differ from the classic model of the relational database management system (RDBMS) in some significant ways.

NoSQL (sometimes expanded to "not only ") is a broad class of database management systems that differ from the classic model of the relational database management system () in some significant ways.

NoSQL systems:

  • Specifically designed for high load
  • Natively support horizontal scalability
  • Fault-tolerant
  • Store data in a denormalized manner
  • Do not usually enforce strict database schema
  • Do not usually store data in a table
  • Sometimes provide eventual consistency instead of ACID transactions

In contrast to RDBMS, NoSQL systems:

  • Do not guarantee data consistency
  • Usually support a limited query language (a subset of SQL or another custom query language)
  • May not provide support for transactions/distributed transactions
  • Do not usually use some advanced concepts of RDBMS, such as triggers, views, stored procedures

NoSQL implementations can be categorized by their manner of implementation:

Free NoSQL Books

Related tags

13110 questions
811
votes
10 answers

Difference between scaling horizontally and vertically for databases

I have come across many NoSQL databases and SQL databases. There are varying parameters to measure the strength and weaknesses of these databases and scalability is one of them. What is the difference between horizontally and vertically scaling…
London guy
  • 27,522
  • 44
  • 121
  • 179
686
votes
7 answers

When to use CouchDB over MongoDB and vice versa

I am stuck between these two NoSQL databases. In my project, I will be creating a database within a database. For example, I need a solution to create dynamic tables. So users can create tables with columns and rows. I think either MongoDB or…
Luke101
  • 63,072
  • 85
  • 231
  • 359
663
votes
11 answers

How do you query for "is not null" in Mongo?

I would like to execute a following query: db.mycollection.find(HAS IMAGE URL) What should be the correct syntax?
TIMEX
  • 259,804
  • 351
  • 777
  • 1,080
487
votes
9 answers

Explanation of JSONB introduced by PostgreSQL

PostgreSQL just introduced JSONB in version 9.4, and it's already trending on hacker news. How is it different from Hstore and JSON previously present in PostgreSQL? What are its advantages and limitations and when should someone consider using it?
Peeyush
  • 6,144
  • 5
  • 23
  • 37
466
votes
10 answers

When to Redis? When to MongoDB?

What I want is not a comparison between Redis and MongoDB. I know they are different; the performance and the API is totally different. Redis is very fast, but the API is very 'atomic'. MongoDB will eat more resources, but the API is very very easy…
guilin 桂林
  • 17,050
  • 29
  • 92
  • 146
462
votes
7 answers

Add new field to every document in a MongoDB collection

How can I add a new field to every document in an existent collection? I know how to update an existing document's field but not how to add a new field to every document in a collection. How can I do this in the mongo shell?
itsme
  • 48,972
  • 96
  • 224
  • 345
316
votes
13 answers

CAP theorem - Availability and Partition Tolerance

While I try to understand the "Availability" (A) and "Partition tolerance" (P) in CAP, I found it difficult to understand the explanations from various articles. I get a feeling that A and P can go together (I know this is not the case, and that's…
Manikandan Kannan
  • 8,684
  • 15
  • 44
  • 65
314
votes
5 answers

What is Hash and Range Primary Key?

I am not able to understand what Range / primary key is here in the docs on Working with Tables and Data in DynamoDB How does it work? What do they mean by "unordered hash index on the hash attribute and a sorted range index on the range attribute"?
mannuscript
  • 4,711
  • 6
  • 26
  • 25
303
votes
3 answers

What is the difference between CouchDB and Couchbase?

Are there any essential differences between CouchDB and Couchbase?
yojimbo87
  • 65,684
  • 25
  • 123
  • 131
288
votes
2 answers

NoSQL Use Case Scenarios or WHEN to use NoSQL

With all the hype, it seems really hard to find reliable information on when to use this. So I pose the following questions, and I'm sorry if these are really dumb questions in advance: Should I use NoSQL for user data? E.g. profiles, usernames +…
user1389722
  • 2,891
  • 2
  • 14
  • 4
284
votes
10 answers

NoSQL (MongoDB) vs Lucene (or Solr) as your database

With the NoSQL movement growing based on document-based databases, I've looked at MongoDB lately. I have noticed a striking similarity with how to treat items as "Documents", just like Lucene does (and users of Solr). So, the question: Why would…
eduncan911
  • 17,165
  • 13
  • 68
  • 104
260
votes
27 answers

Is there a query language for JSON?

Is there a (roughly) SQL or XQuery-like language for querying JSON? I'm thinking of very small datasets that map nicely to JSON where it would be nice to easily answer queries such as "what are all the values of X where Y > 3" or to do the usual SUM…
allclaws
  • 5,575
  • 8
  • 30
  • 27
251
votes
10 answers

What did MongoDB not being ACID compliant before v4 really mean?

I am not a database expert and have no formal computer science background, so bear with me. I want to know the kinds of real world negative things that can happen if you use an old MongoDB version prior to v4, which were not ACID compliant. This…
Lance
  • 75,200
  • 93
  • 289
  • 503
229
votes
6 answers

Explanation of BASE terminology

The BASE acronym is used to describe the properties of certain databases, usually NoSQL databases. It's often referred to as the opposite of ACID. There are only few articles that touch upon the details of BASE, whereas ACID has plenty of articles…
Niels van der Rest
  • 31,664
  • 16
  • 80
  • 86
228
votes
29 answers

How can I run MongoDB as a Windows service?

How can I set up MongoDB so it can run as a Windows service?
heisthedon
  • 3,657
  • 3
  • 21
  • 24
1
2 3
99 100