Fast single table database

I have an analytics database where I make complex queries. Each of these queries generates thousands of rows. I want to save these results as a cache on disk so that I can get the results later. I cannot paste the results back into the database where the results came from, since this database is read-only. The requirements of this cache.

  • Insert rows very quickly. MySQL is not a starter.
  • Quickly filter and sort results
  • No join of multiple tables is required.
  • No transaction

I am interested to know about any SQL or NoSQL solutions that can help with this.

+4
source share
5 answers

You should probably take a look at NoSQL solutions. Perhaps Cassandra, http://cassandra.apache.org/ , which is used by facebook and digg among others

+1
source

Have you looked at SQLite? It is used by applications (i.e. Thunderbird, FF) when they need query power, but not a full relational database, among other uses.

+2
source

You did not specify a platform, but on Windows you can use the built-in Esent engine . This will ensure data retention through sorting and high performance.

+1
source

If you have a lot of RAM, you might want to try the SQLite database in memory: http://www.sqlite.org/inmemorydb.html

With less RAM, try temporary SQLite databases (further down the page - see the hyperlink above). They also use a cache in memory, but parts can be flushed to disk if the database becomes large.

0
source

You should also take a look at the Advantage database. The local server is free and supports both SQL and non-SQL solutions. A solution other than SQL will certainly be faster than the SQL approach. A table can be designated as cached so that it remains in memory as long as possible for quick insertion. Advantage database server

0
source

All Articles