The main database is a key component of OpenStreetMap, because obviously it's where we keep all our data.
Please note that this is not the only database used to generate maps. Have a look at Component overview to see what other databases exist.
The database contains tables for each Element type (nodes, ways, relations). In fact for each of these there are several database tables: current, history, current_tags, history_tags. In addition there are database tables for storing changeset, gpx_files, users, diary entries, sessions, oauth etc.
Table sizes on main database cluster: Database/TableInfoDump
QuadTiles indexes for all nodes are used for faster querying (using B-tree index in Postgres).
Databases elsewhere will be structured differently. For example most applications only need the current map data. Different OSM tools use different database setups (See Databases#Database_Schemas).
Postgres server instance
For problems see Platform Status.
The cluster configuration is managed via the Chef configuration, found at https://github.com/openstreetmap/chef
What happens on each machine is defined in the roles, and the set-up of database-related machines is controlled by the "db" cookbook. https://github.com/openstreetmap/chef/tree/master/roles https://github.com/openstreetmap/chef/tree/master/cookbooks/db
For all Servers we have munin monitoring (realtime graphs showing server resource usage).
https://hardware.openstreetmap.org/, which is generated from the Chef configuration automatically.
See also Statistics.
April 1 2012 - a process of moving to a new server commenced.