Repository Architecture and Design

From TeamServer ER/Studio
Jump to: navigation, search

Go Up to Repository Administration

The Repository relies on a native client connection and the TCP/IP protocol to send and receive information between ER/Studio DA, the Repository Server, and the Repository Database. Communications between the client and server are secure. SSL support in the client and repository allows you to specify the common URL and port to support secure communications between the client and the repository.


There is a metadata diagram of the Repository schema in the System Models directory (Repository300MetaModel.dm1). It includes relationships between entities as documentation whereas the actual database, for performance reasons, does not include FK constraints. The file shows the propagation chain which could be helpful for writing queries to run against the Repository.


For a complete list of software and installation requirements, and supported Repository Databases, see the Repository Database Server Requirements.

Repository Client

ER/Studio Team Server provides the user interface for the Diagram data stored in the Repository. The ER/Studio Repository menu gives you access to all Repository functions and features. To access and use the Repository, you must have ER/Studio DA running.

You can access Repository metadata, search and create reports through ER/Studio Team Server.


Repository Server

The Repository Server links ER/Studio DA to the Repository Database. The Repository Server contains the SQL code necessary to query the database to retrieve data or to insert data into the database. The Repository Server runs this code when it receives a request to execute an operation that requires it to read data in the database and return the appropriate information and when it receives a request to execute an operation that requires it to write new data to the database.

Notepad blue icon 2.pngNote: Because the Repository Server is responsible for inserting data into the database, and retrieving data from the database, you can only have one Repository Server for each Repository Database.

The Repository Server manages the state of the Repository data, which it stores in the Repository database. It records modeling change operations as requested by ER/Studio Team Server users.

When the server receives a request, it does the following:

  1. Checks to make sure the user has the necessary permissions to perform the operation.
  2. If the operation requests data from the Repository database, the server retrieves the data from the database and sends it to the ER/Studio Team Server instance from which the request originated.
  3. If the operation attempts to store data in the Repository database, the Repository Server writes the data out to the database.
  4. Notifies all ER/Studio Team Server “clients” of the new state of the Repository and sends them the appropriate information to update the displays.

See Also