Putting NoSQL in Perspective What NoSQL gives up (this varies by
NoSQL engine): - Relationships between entities (like tables)
are limited to non-existent. For example, you usually can't join
tables or models together in a query. Traditional concepts like
data normalization don't really apply. But you still must do
proper modeling based on the capabilities of the particular
NoSQL system. NoSQL data modeling varies by product and whether
you are using a document vs column based NoSQL engine. For
example, how you might model your data in MongoDB vs HBase
varies because each solution offers significantly different
capabilities. - Limited ACID transactions. The level of read
consistency and atomic write/commit capabilities across one or
more tables/entities varies by NoSQL engine. - No standard
domain language like SQL for expressing ad-hoc queries. Each
NoSQL has its own API and some of the NoSQL vendors have limited
ad-hoc query capability. - Less structured and rigid data model.
NoSQL typically forces/gives mo