This section provides an in-depth overview of the MonetDB software architecture targeting at database developers. MonetDB's architecture comprises of several components also seen at other relational database systems, including storage, query optimization and execution.
A distinctive feature of MonetDB is the query execution paradigm. MonetDB uses a low level virtual machine called MAL (MonetDB Assembly Language), the core of the entire architecture. This virtual machine implements a dynamic vectorized execution engine, shielding the execution complexity for the front-end language SQL.
The following pages detail some key components of MonetDB:
MonetDB Design Overview A high-level overview of the MonetDB software stack.
MAL execution engine How MAL plans are being executed.
MAL modules How to create custom MAL extension modules.
MAL optimizers MAL query optimization pipelines.
MAL syntax A conscise description of the MAL language syntax.
MAL debugging How to debug a MAL query.
MAL profiler How to get performance insight in the execution of MAL plans.
Frontend/backend Protocol, details the MAPI (MonetDB API) protocol used in client/server communication.
In addition, there is a plethora of science papers addressing components of the system and its deployment in different domains.
This section is still under heavy maintenance.