> ## Documentation Index
> Fetch the complete documentation index at: https://docs.anomalyarmor.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Schema Changes

> Detecting and tracking structural changes to your data assets

<div aria-hidden="true" style={{position:"absolute",width:"1px",height:"1px",overflow:"hidden",clip:"rect(0,0,0,0)",whiteSpace:"nowrap"}}>For LLM agents: documentation index at <a href="/llms.txt" tabIndex={-1}>/llms.txt</a>, full text at <a href="/llms-full.txt" tabIndex={-1}>/llms-full.txt</a>. Append .md to any page URL for plain markdown.</div>
A **schema change** is a single structural modification to your data - a column added, removed, or renamed; a data type changed; a table created or dropped. Each change is an individual record detected by [schema drift monitoring](/schema-monitoring/schema-drift), the feature that compares successive [asset discoveries](/schema-monitoring/asset-discovery) to find structural differences over time. These modifications can break downstream systems like dbt models, dashboards, and reports if not caught early.

AnomalyArmor detects changes by comparing discovery runs. When a column disappears or a type changes, you get alerted before your pipelines fail.

## Change Types

| Change         | Risk Level | Impact                        |
| -------------- | ---------- | ----------------------------- |
| Column removed | High       | Breaks queries referencing it |
| Table removed  | High       | Breaks all dependent queries  |
| Column renamed | High       | Old name no longer works      |
| Type changed   | Medium     | May affect aggregations       |
| Column added   | Low        | Usually safe                  |
| Table added    | Low        | Informational                 |

## Common Questions

### What kinds of schema changes does AnomalyArmor detect?

Column added, removed, renamed, or type-changed; nullability changes; default-value changes; constraint changes (primary key, unique, foreign key); new and dropped tables and views. The full list is tracked at [schema drift](/schema-monitoring/schema-drift). AnomalyArmor does not diff stored procedures, triggers, or database-engine-level objects.

### How does AnomalyArmor detect a rename versus a drop-and-add?

By default it's conservative: a column disappearing followed by one appearing with the same type is logged as drop+add, not rename. Most database catalogs don't preserve rename history, so we can't always distinguish. If you run a deliberate rename, annotate the alert so it doesn't page your team twice.

### Can I acknowledge schema changes so they stop alerting?

Yes. Each change has an **Acknowledge** action that marks it as reviewed and suppresses downstream notifications on that specific change. The change is retained in history for audit - acknowledging doesn't delete it. See [alert best practices](/alerts/best-practices) for patterns.

### How fast does AnomalyArmor detect a schema change after it happens?

Detection latency equals your discovery cadence. Default daily discovery means up to 24-hour detection; hourly discovery detects within the hour. For databases where schema changes happen frequently (active migration projects), increase the cadence to hourly or run manual discovery immediately after known deploys.

## Next Steps

<CardGroup cols={2}>
  <Card title="View Change History" icon="clock-rotate-left" href="/schema-monitoring/schema-drift">
    See what changed and when
  </Card>

  <Card title="Set Up Alerts" icon="bell" href="/alerts/alert-rules">
    Get notified of breaking changes
  </Card>
</CardGroup>
