Skip to main content
Apache Ignite

Schema Evolution Without Downtime

Add columns, modify indexes, change distributions. Applications keep running.
Schema Evolution

Apache Ignite enables schema changes without cluster restarts. Catalog-driven schema management provides atomic versioning. Add columns, modify indexes, and change distributions while applications continue running. Deploy features continuously without maintenance windows.

Catalog-Driven Schema Management

Atomic Schema Versioning

The catalog stores schema definitions with version numbers. Schema changes create new versions atomically. All nodes see schema changes simultaneously. No partial updates. No synchronization windows. This eliminates inconsistent schema states during changes.

Zero-Downtime Changes

Schema changes execute while the cluster processes requests. Add columns to existing tables. Create new indexes on populated tables. Modify distribution zones for existing data. Applications continue reading and writing during changes.

Backward Compatibility

New schema versions maintain compatibility with existing data. Nullable columns default to NULL for existing rows. Applications running older schema versions continue functioning. This enables gradual application rollouts without coordinated deployments.

Transaction Safety

Ongoing transactions complete under their starting schema version. New transactions use the latest schema. No transaction failures from schema changes. MVCC ensures transactions see consistent schema states throughout execution.

Schema Operations

Column Operations

Add columns with default values. Drop unused columns. Modify column types when safe. All operations execute without blocking reads or writes. The system handles data migration transparently for storage engines.

Index Management

Create indexes on existing tables without downtime. The system builds indexes in the background while serving queries. Drop unused indexes immediately. Index changes become visible atomically across the cluster.

Distribution Changes

Modify distribution zones for existing tables. Change replica counts. Adjust node filters. The system rebalances data automatically. Applications continue operating during rebalancing with no impact on consistency.

Colocation Changes

Modify colocation keys requires table recreation. The catalog enforces this constraint to prevent incorrect query results. Plan colocation carefully during initial schema design. This trade-off ensures correctness for colocated joins.

Multiple API Views

Single Schema, Multiple APIs

One catalog schema serves SQL, RecordView, and KeyValueView. Schema changes apply to all access patterns simultaneously. No need to update cache configurations separately. This simplifies operations and prevents API inconsistencies.

API Compatibility

SQL sees new columns immediately after schema changes. RecordView and KeyValueView reflect updated schemas through type-safe interfaces. Applications check schema versions to handle new columns gracefully. This enables progressive rollouts.

Client Schema Awareness

Clients fetch current schema versions automatically. Type-safe APIs validate against current schemas. The protocol includes schema metadata for correct serialization. This prevents version mismatches between clients and cluster.

Development Workflow

Define schemas using DDL statements or Table API. Test schema changes in development environments. Apply identical changes to production clusters. The catalog ensures deterministic behavior across environments.

Use Cases

Continuous Deployment

Deploy application features without maintenance windows. Add columns for new functionality. Create indexes to optimize new query patterns. Roll out changes gradually across application tiers. Zero-downtime evolution enables continuous delivery.

A/B Testing

Add columns for experimental features. New application versions write to new columns. Old versions ignore them gracefully. Collect metrics on both approaches. Remove unsuccessful experiments by dropping columns.

Evolving Data Models

Adapt schemas as requirements change. Add columns for new attributes. Create indexes as query patterns evolve. Modify distributions as data growth patterns change. Schema evolution supports changing business needs.

How Schema Evolution Connects to the Foundation

Catalog Provides Consistency

The catalog uses distributed consensus for schema changes. All nodes see schema updates atomically. Version numbers ensure consistent views. This coordination enables zero-downtime schema evolution at scale.

MVCC Enables Safe Evolution

MVCC allows ongoing transactions to complete under old schema versions. New transactions use updated schemas. No transaction failures from schema changes. Version chains support multiple schema versions simultaneously.

Unified Schema for All APIs

SQL, RecordView, and KeyValueView share the same catalog schema. Schema changes apply to all access patterns simultaneously. This unified approach simplifies operations and prevents inconsistencies.
Ready to Start?

Discover our quick start guide and build your first application in 5-10 minutes

Quick Start Guide
Read Documentation

Learn about table creation, schema modifications, and catalog operations

Tables Documentation