I am searching for an information storage solution for any project with one of these needs:
- The applying produces dynamically a containter/table within the store.
- For any small time period (two days for instance) that table/container will get a large amount of card inserts in parallel. Last read need to be immediately available.
- The information placed is extremely small, 4 to six number posts.
- Small query/blocking support is needed, but no joins or mix queries.
- Is required to execute some aggregate functions like "Count", "Sum", "Max", "Min" and "Avg".
Essentially, I want something similar to Home windows Azure Table Storage however with aggregate functions.
What can you recommend?
RavenDB supports whatever you pointed out and much more. Its scales perfectly, and supports aggregate functions via Map/Reduce queries and Linq queries. Additionally, it can run in-memory.
MongoDB is another sensible choice. It supports group (aggregate) queries on single-node installation. If you want to scale you may create sharded cluster and employ map/reduce for aggregation needs - but Mongo map/reduce performance is not top level when comapring with other solutions.
If you want large performance in map/reduce you are able to take take a look at Hadoop
Why not use SQL Azure? It support Aggregate function and meet all your needs, have a look at this table
If it doesn't need to be free, kdb+ will be a sensible choice. It's a system mainly uses in finance for time series analysis. It supports all you request for and it is incredibly fast. There's a totally free trial version available, but to make use of it in production it's...costly. It's fully queryable having a sql-like syntax and fully prrr-rrrglable having a proprietary language known as q which is incorporated in the apl family.
For that needs indexed by the question body, any competent SQL server available on the market would handle this, altho you should setup some indexes to obtain items to be very fast.
But that is like saying, if you would like your vehicle to visit fast, you need to place it in D and press the gas pedal, so that's that fwiw.
You might take a look at H2 also.
Actually need more information around the needs and budget... but, since individuals are just sickness some solutions, I'll throw that one in to the mix:
You will find some very awesome, and incredibly costly, hardware solutions created to run massively parallel SQL queries, like the Netezza Skimmer or TwinFin
Almost makes me wish our data warehouse was not fast enough - so I possibly could here is another young puppies.