Overhead and (c) NoSQL database performance?

I have a question about NoSQL type bases, in particular MongoDB, but it applies in general to most storages based on keys or documents. Some of the NoSQL selling points are speed and scalability, but it seems to me that there is significant overhead compared to relational databases.

  • You have a lot of duplication because (almost) everything is abnormal. You cannot do much, because it is a kind of point of such databases. I am more concerned about the following:

  • There is a lot of overhead because, if you have a JSON document, you must save all the keys (and all structural information) with each document. Thus, for 10,000 rows, you will need to keep the row age, name, 10,000 times.

  • There cannot be many smart things in the database, such as creating indexes or binary trees (to save time) or storing integers in a compact form (since one of the free-form documents can have a string in which all others have int, etc. d.)

I know that you can write your own views or map / reduction algorithms to get something like an index, but at first glance it seems that for a general case, NoSQL should be a terribly inefficient space and processor.

Is it really that bad? What types of optimization exist in NoSQL databases (say, MongoDB)? What is the overhead of storing a lot of the same complex JSON documents compared to using a relational database?

+5
source share
1 answer

-, ; - - .

, , , NoSQL, , , :

1- , () . , .

, ( ) . , " ", , . , SQL- ( ?) .

2- , , JSON, ( ) . , 10000 , , 10000 .

, , , - "" - .

3. , ( ) ( , int ..)

, (, , , " " ). , ( , 1, ).

+1

All Articles