Foundation: Understanding Project Repositories
The TimeXtender software is an abstraction layer. It does not actually store any data tables or fields, this is handled by your SQL Databases. Instead, TimeXtender simply manages all of the information about your data (metadata) and displays visual representations of these objects in the user interface (UI).
However, all the information about the projects (such as settings, connection strings, tables, relations, etc.), known as metadata, is all stored in another SQL Database known as the Project Repository.
- When you Save: metadata is written to the repository database, and when you open a project, this metadata is read from the project repository and presented in the UI.
- When you Deploy & Execute: Data is ingested from sources and tables are populated in the MDW.
In this section, one project environment and one global database are needed, which sets the foundation for your data estate solution.
Repository Contents
The Project Repository database contains essential metadata including:
- Table and field definitions
- Data type specifications
- Configuration settings
- Encrypted connection details for data sources
- Data lineage & Dependency mappings
- All Project versions
- One project repository can contain multiple projects.
Important Considerations
A repository database is linked to a single environment (dev, test, production). Each additional environment will require it's own repository.
Privacy & Security
- The repository database is hosted by you
- Sensitive information (like passwords) is automatically encrypted
- No business data is ever stored in the repository
Administration
- Daily SQL Database backups of the repository database are highly recommended.
- To ensure TimeXtender users can freely open and edit projects, these users need db_owner permissions to the repository database.
The Project Repository serves as the foundation for TimeXtender's ability to efficiently manage and execute your data warehouse projects while maintaining complete transparency of data movement through detailed lineage tracking