Specialized Administration > Configuring Your Windchill Environment > Windchill Runtime Environment > Database Components
  
Database Components
Following are the data components.
Object Relational Database Management System (ORDBMS)
The Windchill system uses a database to store structured and unstructured business data. The database manager is typically run on the same host as the Windchill servers, but at larger sites it may run on a dedicated host and be accessed remotely from one or more Windchill server hosts.
The use of an ORDBMS is leading-edge, but Windchill does not push the technology past reasonable bounds of usability and safety. Windchill leverages support for very large objects and object references (bigger BLOBs and object-ID navigation capability). It does not rely on the more futuristic capabilities of complex data types where, through extensions (object types, cartridges, and so on), the DBMS tries to understand the structure and meaning of Java objects.
* 
Windchill uses the object relational features of the database server to store data objects. In order to maintain the integrity of the associations among stored objects, users and administrators should avoid using vendor tools to directly manipulate database data. Directly changing data in the database could compromise data integrity. This does not preclude the use of such tools for standard database administration, which does not alter or change the values stored in the tables.
Single Logical Database
A single Windchill system uses one logical database. The database administrator may use vendor tools to physically partition the database but, for simplicity, Windchill does not try to coordinate transactions between multiple databases in real-time. It is assumed that the reasons which justify having separate databases also justify deploying Windchill as two or more federated systems, or using DBMS store/forward replication technology.
Storing File Content as Large Objects
Information managed by Windchill exists either as pure structured business information (attributes of objects and relationships) or as unstructured information created by applications in the form of external files utilizing either standard or proprietary data formats. The following figure illustrates ORDBMS management of structured and unstructured attributes.
Structured data is stored using normal relational techniques (tables), and unstructured data is stored as objects. Storing file content in the database obviously results in large databases and would cause performance problems with traditional RDBMS technology. However, new ORDBMS technologies are designed to enable this approach.
The runtime architecture for persistence is shown in the following figure. Every object that implements the persistable interface is assigned a persistence identifier. The PersistenceManager interface identifies the set of methods that applications use to manage the persistent state of their business objects. While all of the methods declared by this interface execute on the server, they are accessible to client applications through a helper class.
The Persistent Object Manager brokers persistence requests and forwards them to a PersistentDataService to handle the actual persistence operation. The protocol used to pass objects back and forth to the database is a combination of introspection and JDBC calls to stored procedures. Introspection is used to bind the attributes to stored procedure variables.