A database management system that enables users to interact with a database comprised of data and metadata, said system comprising: a plurality of transactional nodes that provide users with access to the database, and at least one archival node that maintains an archive of the entire database, each transactional node including: i) a database request engine that provides an interface between high level-input and output query commands at a user level and input and output commands at the system level that control a sequence of operations for interacting with the database, wherein, in response to certain system level commands, atom objects generate atoms, and ii) a non-persistent memory storing at least one copy of an atom in a set of atoms, each atom containing a specified fragment of data or metadata, the set of all atoms collectively defining all the metadata and data in the database, a database system network interconnecting all the nodes, and a communications control in each of the nodes for establishing a communications path with each other node in the system, wherein: each transactional node is configured, responsive to a system command from the database request engine, to request a copy of an atom that is relevant to the query command but is not present in that transactional node from a transactional node having a copy of the requested atom, each transactional node is configured, responsive to a request for a copy of an atom from another transactional node, to replicate the requested atom for transfer to the requesting transactional node whereby only atoms required to complete a query command need be located in any transactional node at any given time, and each transactional node is configured, responsive to a change in an atom at that transactional node, to replicate that change to every other node in the system that contains a copy of that atom. a plurality of transactional nodes that provide users with access to the database, and at least one archival node that maintains an archive of the entire database, each transactional node including: i) a database request engine that provides an interface between high level-input and output query commands at a user level and input and output commands at the system level that control a sequence of operations for interacting with the database, wherein, in response to certain system level commands, atom objects generate atoms, and ii) a non-persistent memory storing at least one copy of an atom in a set of atoms, each atom i) a database request engine that provides an interface between high level-input and output query commands at a user level and input and output commands at the system level that control a sequence of operations for interacting with the database, wherein, in response to certain system level commands, atom objects generate atoms, and ii) a non-persistent containing a specified fragment of data or metadata, the set of all atoms collectively defining all the metadata and data in the database, a database system network interconnecting all the nodes, and a communications control in each of the nodes for establishing a communications path with each other node in the system, wherein: each transactional node is configured, responsive to a system command from the database request engine, to request a copy of an atom that is relevant to the query command but is not present in that transactional node from a transactional node having a copy of the requested atom, each transactional node is configured, responsive to a request for a copy of an atom from another transactional node, to replicate the requested atom for transfer to the requesting transactional node whereby only atoms required to complete a query command need be located in any transactional node at any given time, and each transactional node is configured, responsive to a change in an atom at that transactional node, to replicate that change to every other node in the system that contains a copy of that atom. each transactional node is configured, responsive to a system command from the database request engine, to request a copy of an atom that is relevant to the query command but is not present in that transactional node from a transactional node having a copy of the requested atom, each transactional node is configured, responsive to a request for a copy of an atom from another transactional node, to replicate the requested atom for transfer to the requesting transactional node whereby only atoms required to complete a query command need be located in any transactional node at any given time, and each transactional node is configured, responsive to a change in an atom at that transactional node, to replicate that change to every other node in the system that contains a copy of that atom.