Sparx EA Platform

Sparx EA Repository Database Options: SQL Server vs MySQL vs PostgreSQL — Which to Choose

By Ryan Schmierer  ·  May 31, 2025

Sparx EA Repository Database Options: SQL Server vs MySQL vs PostgreSQL — Which to Choose

All three work. SQL Server is the most common choice in Windows-heavy enterprise environments and benefits from deep Sparx EA compatibility and mature tooling. PostgreSQL is the best choice for Linux or cloud-native deployments — it performs well at scale, has no licensing cost, and integrates cleanly with cloud hosting platforms. MySQL is the lowest-cost option for smaller teams and simpler deployments, though it has limitations at larger scales. The right choice depends on your existing infrastructure, team skills, cloud strategy, and budget. Pro Cloud Server is required for multi-user access regardless of which database you choose.

Key Takeaways


Why the Database Decision Matters

The database is the foundation of your Sparx EA repository. Unlike the Sparx EA client — which can be reinstalled, upgraded, or replaced — the database carries the accumulated architecture content, governance history, and model relationships your practice builds over years. A poor database choice is not fatal, but it is expensive to correct: migrating a Sparx EA repository between database platforms requires careful schema handling, testing, and downtime.

This is a decision worth making deliberately, before deployment begins.


SQL Server

Best for: Windows-based enterprise environments, organisations with existing SQL Server infrastructure and DBA expertise, teams that need SQL Server’s ecosystem (SSMS, SQL Server Agent, Azure SQL integration).

Compatibility. SQL Server has the deepest integration history with Sparx EA. All repository features are tested against SQL Server. Enterprise deployments on SQL Server are the most commonly documented and supported configuration.

Performance at scale. SQL Server handles large Sparx EA repositories well — tens of thousands of elements, complex relationship queries, and concurrent multi-user access. With appropriate indexing and DBA oversight, SQL Server repositories remain performant as content grows. SQL Server’s query optimiser is mature and well-understood.

Cloud hosting options. Azure SQL Database is the natural cloud hosting path for SQL Server-backed repositories. Azure SQL Managed Instance provides near-complete SQL Server compatibility with managed patching and backup. AWS RDS for SQL Server is also supported. Cloud SQL Server hosting works well with PCS.

Pro Cloud Server compatibility. SQL Server is fully supported by PCS for all connection modes: direct database, cloud model, and model streaming.

Backup and recovery. SQL Server Agent provides job-scheduled backups. Azure Backup covers Azure SQL. The SQL Server backup ecosystem is mature. Point-in-time recovery is available with full recovery model databases.

Licensing cost. This is the significant downside. SQL Server Standard Edition licensing costs thousands of dollars per core. SQL Server Enterprise adds capabilities but at substantially higher cost. For organisations already running SQL Server, this is typically absorbed into existing infrastructure. For organisations starting fresh, the licensing cost is a real budget item — particularly for smaller teams who may not have SQL Server already.


PostgreSQL

Best for: Linux environments, cloud-native deployments, organisations preferring open-source infrastructure, teams with PostgreSQL DBA expertise, cost-sensitive deployments that still require enterprise-grade performance.

Compatibility. PostgreSQL support in Sparx EA is mature and well-tested. Sparx Systems has invested significantly in PostgreSQL compatibility, and it is the recommended choice for new cloud-hosted deployments.

Performance at scale. PostgreSQL performs comparably to SQL Server for typical EA repository workloads. For very large repositories (100,000+ elements) or high-concurrency environments, PostgreSQL with appropriate tuning — connection pooling via PgBouncer, proper indexing, adequate shared_buffers — handles the load well. PostgreSQL is not second-class to SQL Server for Sparx EA performance.

Cloud hosting options. PostgreSQL has the widest cloud hosting support. Amazon RDS for PostgreSQL, Azure Database for PostgreSQL, Google Cloud SQL for PostgreSQL, and self-hosted on any Linux VM are all viable. Managed PostgreSQL services (RDS, Azure Database) handle patching, failover, and backup automatically — reducing DBA overhead.

Pro Cloud Server compatibility. PCS supports PostgreSQL fully across all connection modes.

Backup and recovery. pg_dump provides logical backups. Continuous archiving with WAL (Write-Ahead Logging) enables point-in-time recovery. Managed cloud services provide automated backup retention. PostgreSQL’s backup tooling is robust and well-documented.

Licensing cost. PostgreSQL is open-source with no licensing cost. The managed cloud service cost (RDS, Azure Database) is an infrastructure cost — typically $50–$300/month depending on instance size — not a software licence.


MySQL

Best for: Smaller teams, simpler deployments, environments where MySQL expertise already exists, cost-constrained teams prioritising the lowest-possible infrastructure cost.

Compatibility. MySQL is supported by Sparx EA, but it has historically had more compatibility edge cases than SQL Server or PostgreSQL. For basic repository operations, MySQL works without issue. At larger scales or with more complex repository queries, occasional compatibility quirks appear.

Performance at scale. MySQL handles small to mid-size Sparx EA repositories well. For larger repositories — particularly those with complex relationship traversal queries or high concurrent user counts — MySQL can be limiting. If your repository is expected to grow significantly or support 20+ concurrent users over time, PostgreSQL or SQL Server are better long-term choices.

Cloud hosting options. Amazon RDS for MySQL, Azure Database for MySQL, and Google Cloud SQL for MySQL are available. These provide managed hosting, but MySQL’s cloud hosting ecosystem is slightly less mature than PostgreSQL’s for enterprise workloads.

Pro Cloud Server compatibility. PCS supports MySQL. Configuration is straightforward for standard deployments.

Backup and recovery. mysqldump provides logical backups. MySQL’s binary log enables point-in-time recovery. Managed cloud MySQL services include automated backup. For small repositories, this is entirely adequate.

Licensing cost. MySQL Community Edition is open-source and free. MySQL Enterprise Edition (from Oracle) adds monitoring, backup, and support — with corresponding licensing cost. Most Sparx EA deployments use MySQL Community Edition.


Decision Table

Environment Recommended Choice Reason
Windows enterprise, existing SQL Server infrastructure SQL Server Native ecosystem, DBA familiarity, mature tooling
Linux servers or cloud-first infrastructure PostgreSQL No licensing cost, excellent cloud hosting options, strong performance
Azure cloud hosting preferred SQL Server (Azure SQL) or PostgreSQL (Azure Database) Both work well; SQL Server if existing Azure SQL footprint
AWS cloud hosting preferred PostgreSQL (RDS) Broadest managed service support, no licensing cost
Small team, simple deployment, cost priority MySQL Lowest infrastructure cost for uncomplicated workloads
Large repository planned (50,000+ elements) SQL Server or PostgreSQL Better query performance and scale characteristics
High concurrent users (30+) SQL Server or PostgreSQL Better concurrency handling
New deployment, no existing database infrastructure PostgreSQL Best balance of performance, cost, and cloud flexibility

A Note on Pro Cloud Server

Regardless of your database choice, Pro Cloud Server is required for multi-user Sparx EA deployment. PCS sits between Sparx EA clients and the database — it handles connection management, authentication, security, HTTP/HTTPS access, and model streaming.

PCS is database-agnostic. It connects to SQL Server, PostgreSQL, and MySQL using ODBC drivers. The PCS configuration process is similar across all three — the database-specific element is the ODBC driver setup and connection string. Sparx Services Deploy covers PCS configuration for all three database platforms.

Attempting to share a Sparx EA repository across multiple users without PCS — using direct database access — is impractical in most enterprise environments. It bypasses authentication management, makes HTTPS access impossible, and does not support model streaming or web access. PCS is not optional for serious multi-user deployment.


Migrating Between Databases

If you start on one database and later need to migrate — for example, from MySQL to PostgreSQL as your repository grows — Sparx EA provides repository transfer utilities. Migration is possible, but it involves downtime, testing, and careful schema validation. It is not a casual operation.

This is why the initial database decision matters. Choosing based on current team size rather than growth trajectory is a common mistake. If you expect your practice to scale significantly within two to three years, choose the database that will support that scale from the start.


FAQ

Can Sparx EA use a cloud database like Azure SQL or Amazon RDS? Yes. Sparx EA repositories work with Azure SQL Database, Azure Database for PostgreSQL, Amazon RDS for SQL Server, Amazon RDS for PostgreSQL, and Amazon RDS for MySQL. In all cases, Pro Cloud Server connects to the cloud database using an ODBC connection, and Sparx EA clients connect to the cloud repository via PCS. The cloud database handles storage, patching, backup, and high availability — PCS handles the connection brokering.

Does the database choice affect Sparx EA performance for users? Yes, but the PCS layer abstracts much of the difference for individual users. The database choice primarily affects performance at scale — large repository queries, concurrent write operations, and complex relationship traversal. For small teams with modest repositories, all three database options deliver acceptable user experience. For large repositories or high concurrent usage, SQL Server and PostgreSQL are materially better than MySQL.

Is a separate database server required, or can the database run on the same server as PCS? For small deployments, PCS and the database can run on the same server. For production deployments — particularly where performance, backup, and high availability matter — a separate database server is recommended. This allows independent scaling, patching, and backup scheduling for the database without affecting PCS availability.

How large do Sparx EA repositories typically get? Repository size varies enormously by practice maturity and scope. Small practices (1–5 architects, single domain) might have 5,000–20,000 elements after two to three years. Large enterprise practices (10+ architects, multiple domains, multi-year programs) can reach 100,000+ elements. The database choice should be made with the two-to-three-year expected scale in mind, not the week-one starting point.

What ODBC drivers does Pro Cloud Server use to connect to each database? PCS uses ODBC for database connectivity. SQL Server uses the Microsoft ODBC Driver for SQL Server (available from Microsoft). PostgreSQL uses the PostgreSQL ODBC driver (psqlODBC). MySQL uses the MySQL Connector/ODBC. Sparx Services Deploy handles ODBC driver installation and configuration as part of PCS setup.

Does Sparx Services have a preference for which database to use in Deploy engagements? Sparx Services recommends PostgreSQL for new cloud-hosted deployments and SQL Server for organisations with existing Windows/SQL Server infrastructure. The Deploy engagement works with all three database platforms — the choice is driven by your environment, not our preferences. We provide guidance on the decision as part of the pre-deployment scoping conversation.


Starting a Sparx EA Deployment and Need to Get the Database Right?

Sparx Services Deploy includes repository database selection guidance, Pro Cloud Server configuration, and a production-ready setup — regardless of whether you choose SQL Server, PostgreSQL, or MySQL. We get the foundation right so your architecture practice starts on solid ground.

Talk to Sparx Services about Deploy →

Share this article

Ready to make your EA investment work harder?

Talk to a Sparx Services architect about where your organization is on the journey and what the next stage looks like.