[MonetDB-users] Re: MonetDB Questions

Martin Kersten Martin.Kersten at cwi.nl
Tue May 17 06:52:10 CEST 2005

Hello Mason,

thank you for your interest in using MonetDB.
Enclosed a quick response to your questions.
If I miss something, someone from the monetdb-users
list is likely to fill in the details.

M Sharp wrote:

> Hello Martin,
> We are interested in evaluating MonetDB for use with our product (a
> potential customer of ours told us queries ran 5-6 times faster than on
That;s what we know to be true for especially decision support applications.
> PostgreSQL). Basically we would install MonetDB on several nodes, and
> partition data amongst them, for data warehousing usage (more info about
> our product can be found at http://www.extendb.com).
> I have looked through the documentation and website, but have some
> questions I was hoping you could help answer (as the project lead). If
> it is not too much trouble, I would greatly appreciate it if you could
> take a few minutes to answer.
> 1. Size limitation. If I understand correctly, there is no size
> limitation for tables or databases, just that a single column is limited
> to 2 GB. Is that correct? Also, when do you believe this restriction
> will be removed?

The size limitation of 2 GB holds for 32-bit platforms, it is already
removed for 64 bit machines.
> 1a. I see something in the config file about 3GB of virtual memory. If
> the database (or table) is larger than that, does it negatively impact
> performance?
The performance degradation starts when MonetDB has to access BATs
larger then the available memory, but won;t become slower than what
you would expect in traditional database systems.
The judicious use of the BATs mean that in practice of decision
support you have a much lower chance hitting an IO bottleneck.
> 2. Multiple databases. I noticed in the config file that only one
> database can be used at a time. Can we start mulitple MonetDB instances
> to support multiple databases, just using a different port?
There can be one Mserver per database directory, and ofcourse multiple
Mserver instances per platform.
> 3. Backups. Is there any backup tool? Also, can you do incremental
> backups? 
No, we are looking forward to people interesting in developing such
supportive tools.
> 4. Is there point in time recovery?
The SQL frontend ensures a log of all committed transactions to ensure
stability. If you use the system at the MIL layer you have to schedule
that work yourself.
> 5. Do you support savepoints (or subtranscations), not just
> transactions?
The SQL transaction semantics is based on the requirements in SQL99
> 6. What kind of locking capability is offered; DB, table or row? Are
> there different isolation levels?
There are no separate isolation levels. The policy in MonetDB is to
assume a cooperative environment, which means that (SQL) compilers
have to explicity lock/release resources to support concurrent use
from clients. Internally, the system is fully configured to safely
run with tens of concurrent threads thereby protecting the integrity
of the database structures (but not their content).
> 7. Is there a separate high-speed loader utility, or must INSERTs be
> used?
yes there is.
> 8. Are checkpoints used? And is it configurable?
No particular support for taking a checkpoint
> 9. Are there utilities by which you can determine corruption? ... And
> repair corruption?
The additional tools have not been needed so far. The SQL log was
sufficient to deal with the rare cases during development crashes.
> Thank you very much in advance for taking the time to answer these
> questions. Also, please feel free to provide any other thoughts you have
> regarding using MonetDB and handling large databases (~ 1 TB).
It is the sizes we are after, but not on 32-bit platforms.
> Regards,
> Mason Sharp
> ExtenDB

More information about the users-list mailing list