
Elementrix v2.0 introduces multi-datasource support, allowing data products to be built from multiple tables across multiple databases. This enables complex data products that join and transform data from disparate sources.
| Database | Versions | Driver |
|---|---|---|
| PostgreSQL | 11.x - 17.x | org.postgresql.Driver |
| MySQL | 5.7 - 8.x | com.mysql.cj.jdbc.Driver |
| MariaDB | 10.5 - 10.11+ | org.mariadb.jdbc.Driver |
| Oracle | 12c+ | oracle.jdbc.OracleDriver |
| SQL Server | 2016+ | com.microsoft.sqlserver.jdbc.SQLServerDriver |
Multi-datasource architecture allows connecting to multiple databases simultaneously:
┌─────────────────────────────────────────────────────────────┐
│ Data Product │
│ ┌─────────────────────────────────────────────────────┐ │
│ │ Unified Schema │ │
│ │ ┌─────────────┐ ┌─────────────┐ ┌─────────────┐ │ │
│ │ │ Table A │ │ Table B │ │ Table C │ │ │
│ │ │ (Join) │ │ (Join) │ │ (Lookup) │ │ │
│ │ └──────┬──────┘ └──────┬──────┘ └──────┬──────┘ │ │
│ └─────────┼───────────────┼───────────────┼──────────┘ │
│ │ │ │ │
└────────────┼───────────────┼───────────────┼────────────────┘
│ │ │
┌────────▼────────┐ ┌────▼────────┐ ┌────▼────────┐
│ PostgreSQL │ │ MySQL │ │ Oracle │
│ (Customer) │ │ (Orders) │ │ (Products) │
└─────────────────┘ └─────────────┘ └─────────────┘
The system automatically discovers:
The system can automatically detect foreign key relationships:
user_id → users.id)For complex relationships, manually configure:
The ER Diagram Builder provides a visual interface for:
┌─────────────────────────────────────────────────────────────┐
│ ER Diagram Builder │
├─────────────────────────────────────────────────────────────┤
│ ┌─────────────┐ ┌─────────────┐ │
│ │ customers │──1:N────│ orders │ │
│ │─────────────│ │─────────────│ │
│ │ id (PK) │ │ id (PK) │ │
│ │ name │ │ customer_id │ │
│ │ email │ │ order_date │ │
│ │ created_at │ │ total │ │
│ └─────────────┘ └──────┬──────┘ │
│ │ │
│ 1:N │ │
│ ▼ │
│ ┌─────────────┐ │
│ │ order_items │ │
│ │─────────────│ │
│ │ id (PK) │ │
│ │ order_id │ │
│ │ product_id │ │
│ │ quantity │ │
│ └─────────────┘ │
└─────────────────────────────────────────────────────────────┘
| Join Type | Description | Use Case |
|---|---|---|
| INNER | Only matching rows | Required relationships |
| LEFT | All from left + matching | Optional relationships |
| RIGHT | All from right + matching | Reverse optional |
| FULL | All rows from both | Complete data merge |


