This page was last modified on 19 June 2016, at 22:13.
|Developer(s)||[MonetDB Developer Team]|
MonetDB is a column-oriented database management system open source, developed by Centrum Wiskunde & Informatica (CWI) in the Netherlands. It has been designed to provide high performance on complex queries against large databases, such as joining tables with hundreds of columns and millions of rows. MonetDB has been used in high-performance applications for online analytical processing (OLAP), data mining, GIS , RDF, text extraction and processing of sequence alignment.
How it works
Column database designed to solve the problem of inefficient working of traditional database systems and analytical systems in the overwhelming majority of "reading" type of operation. They allow for a cheap and low-power the equipment to receive the query execution speed increase of 5, 10 and sometimes even 100 times, at the same time, due to the compression of the data will take up on disk is 5-10 times less than in the case of traditional DBMS.
The basic idea of columnar databases - it does not store data in rows, as do the traditional RDBMS, and in columns. This means that in terms of SQL-client data is typically represented as a table, but a table is physically the plurality of columns, each of which is essentially a table of one field. At the same time physically on the disk the values of one field are stored in succession - something like this:
[A1, A2, A3], [B1, B2, B3], [C1, C2, C3] etc.
This organization of data leads to the fact that when the select which fields appear only 3 of the 50 fields in the table, the disc will be physically read only 3 speakers. This means that the load on the input-output channel is about 50/3 = 17 times smaller than when the same request in a conventional database.
In addition, when columnar data storage there is a great opportunity to greatly compress the data, as the data in one column of the table are usually of the same type can not be said about the line.
Pros and cons MonetDB
Monet DB pluses:
- Quite a full realization of SQL, including
INSERT, UPDATE, DELETE
- There is a data compression 
- Transaction support (OSS)
- Xquery support and other interfaces to the database
Monet DB cons:
- Weak data compression
- A relatively slow data download
Example of MonetDB
We show a simple session, including database creation, data loading and query execution:
shell> monetdbd create /path/to/mydbfarm shell> monetdbd start /path/to/mydbfarm shell> monetdb create voc shell> monetdb release voc shell> mclient -u monetdb -d voc password:<monetdb> Welcome to mclient, the MonetDB/SQL interactive terminal (Oct2014-SP1) Database: MonetDB v11.19.7 (Oct2014-SP1), 'mapi:monetdb://localhost:50000/voc' Type \q to quit, \? for a list of available commands auto commit mode: on sql>SELECT 'hello world'; +---------------+ | single_value | +===============+ | hello world | +---------------+ 1 tuple (0.530ms) sql>\q
Cite error: Invalid
parameter "group" is allowed only.
<references />, or
<references group="..." />