MongoDB for data aggregation

Who has experience with bulk database in MongoDB, please tell me, how it is designed or not designed (fast or slow counts) to calculate sums, averages, etc., that SQL can be expressed as SELECT SUM(X) FROM T WHERE Y > 10 AND Z < 100

Storage in json/bson kind of hints at the performance of such operations, but the possibility of clustering and storing large amounts of MongoDB is very captivating...
October 8th 19 at 02:37
3 answers
October 8th 19 at 02:39
October 8th 19 at 02:41
Map/Reduce is one of the main directions of development of MongoDB, the performance of such operations (if done correctly) are much higher than for MySQL. however, it is not one that reason to immediately rush to use it. mongo have really a lot of pitfalls that you never thought in MySQL, such as: aggressive caching of all data-sets a (makes no sense to run mongo from a large dataset, if it turns something else besides Mongo) and global write lock (Mongo in General is designed for quick reading, but the insert in it is hell and horror)
October 8th 19 at 02:43
Believes not fast, because I believe it will all be single-threaded JavaScript. Besides aggregation in Mongo is generally not designed for realtime. If the desired aggregation and clustering, the column-oriented dbms, or hadoop. Or stay in SQL and not suffer.
The task is just to make a multithreaded system, in which main calculations are performed in batch mode when you insert data. That is, the packet is new data, inserting and processing with the expectation of a large number of new fields. The first implementation on MySQL and Python has been rather slow. It was possible to parallelize just run multiple processes in Python, each of which handles its own portion of data (such as partitions, for example, one process handles rows 1-10000, 10001-20000 second, etc.) But I want to find a more fashionable solution like hadoop, but as the database, look at mongodb. - Jimmy_Terry commented on October 8th 19 at 02:46

Find more questions by tags MongoDB