Requirements
Before connecting, ensure you have:- Databricks workspace with Unity Catalog enabled
- SQL Warehouse (serverless or classic)
- Personal Access Token or Service Principal credentials
- Catalog access for the catalogs you want to monitor
Connection Settings
| Field | Description | Example |
|---|---|---|
| Connection Name | Friendly identifier | Databricks Production |
| Workspace URL | Your Databricks workspace | https://xxx.cloud.databricks.com |
| HTTP Path | SQL warehouse path | /sql/1.0/warehouses/abc123 |
| Catalog | Unity Catalog to monitor | main |
| Access Token | Authentication token | dapi... |
Finding Your Connection Details
Workspace URL
Your workspace URL is in your browser when logged into Databricks:| Cloud | URL Format |
|---|---|
| Azure | https://adb-1234567890.12.azuredatabricks.net |
| AWS | https://dbc-abc123.cloud.databricks.com |
| GCP | https://xxx.gcp.databricks.com |
SQL Warehouse HTTP Path
- Go to SQL Warehouses in Databricks
- Click on your warehouse
- Go to Connection Details tab
- Copy the HTTP Path
Creating an Access Token
- Personal Access Token
- Service Principal (Recommended)
Best for quick setup and testing:
- Click your username in Databricks → User Settings
- Go to Access Tokens tab
- Click Generate New Token
- Set a description:
AnomalyArmor - Set lifetime (or leave blank for no expiry)
- Click Generate
- Copy the token immediately (you won’t see it again)
Granting Catalog Permissions
The user or service principal needs read access to Unity Catalog.Per-Schema Permissions
For more granular control:What We Monitor
AnomalyArmor discovers and monitors these Unity Catalog objects:| Object Type | Monitored | Notes |
|---|---|---|
| Delta Tables | Yes | Including managed and external |
| Views | Yes | Standard and materialized |
| Schemas | Yes | Schema-level metadata |
| Volumes | No | Coming soon |
| Functions | No | Not supported |
Metadata Captured
For each table and view:- Table name and schema
- Column names and data types
- Table properties
- Last modified timestamp (for freshness)
- Partitioning information
Multiple Catalogs
3-Level Namespace Support
Databricks Unity Catalog uses a 3-level namespace:catalog.schema.table. AnomalyArmor fully supports this structure, enabling you to:
- Track tables across catalogs: Distinguish between
prod.analytics.usersanddev.analytics.users - Filter by catalog: View only tables from specific catalogs in the UI
- Catalog-aware alerting: Get notified of changes in production catalogs only
- Lineage across catalogs: Track data flow between development, staging, and production
Connecting Multiple Catalogs
To monitor multiple catalogs, create separate data sources for each: Data Sources:- Databricks Production (catalog: production)
- Databricks Staging (catalog: staging)
- Databricks Development (catalog: development)
Each data source needs access to its respective catalog. Use the same token if it has permissions across catalogs.
Catalog-Aware Features
| Feature | Catalog Support |
|---|---|
| Schema Discovery | Tables shown with full catalog.schema.table path |
| Schema Drift Alerts | Filter alerts by catalog |
| Tag Inheritance | Tags propagate within catalog boundaries |
| Table Filtering | API supports catalog_name filter parameter |
| Lineage Visualization | Shows cross-catalog data dependencies |
SQL Warehouse Considerations
Warehouse State
AnomalyArmor queries run on your SQL warehouse. Consider:| Warehouse Type | Behavior |
|---|---|
| Serverless | Auto-starts, minimal delay |
| Classic (Auto-stop) | May have startup delay (30s-2min) |
| Classic (Always-on) | Immediate, but costs more |
Warehouse Sizing
Discovery queries are lightweight. A Small or X-Small warehouse is sufficient:- Recommended: Serverless SQL Warehouse
- Alternative: X-Small Classic Warehouse with auto-stop
Scheduling Discovery
If using a classic warehouse with auto-stop:- Schedule discovery during business hours
- Or extend auto-stop timeout to cover discovery windows
- Or use serverless (recommended)
Connection Architecture
What We Query
AnomalyArmor runs these types of queries:Troubleshooting
Connection test fails
Connection test fails
Common causes:
- Invalid or expired access token
- Wrong workspace URL
- Incorrect HTTP path
- Generate a new access token
- Verify workspace URL matches your browser
- Copy HTTP path directly from SQL Warehouse settings
Permission denied errors
Permission denied errors
Causes:
- Token lacks catalog/schema permissions
- Service principal not granted access
Warehouse not found
Warehouse not found
Causes:
- Wrong HTTP path
- Warehouse deleted or renamed
- Go to SQL Warehouses in Databricks
- Copy the HTTP path from Connection Details
- Ensure the warehouse exists and is accessible
Discovery times out
Discovery times out
Causes:
- Warehouse is starting up
- Large number of tables
- Use a serverless warehouse (faster startup)
- Extend warehouse auto-stop timeout
- Filter to specific schemas if catalog is very large
Token expired
Token expired
Causes:
- Personal access token has expiry date
- Generate a new token with longer expiry
- Use a service principal with OAuth (no expiry)
- Update the token in AnomalyArmor Data Sources settings
Best Practices
Use Service Principals for Production
Personal access tokens are tied to individual users. If that user leaves:- Token stops working
- Monitoring breaks
Monitor Production Catalog
Start with your production catalog where schema changes have the most impact.Schedule Discovery After ETL
If you have predictable ETL schedules, run discovery after ETL completes to catch changes immediately:Next Steps
Run Discovery
Scan your Databricks catalog
Set Up Alerts
Get notified of schema changes
