Data observability for Databricks — freshness, volume, and schema-change monitoring
Project description
DashObserve — Databricks Library
Part of the Dashlibs suite — Databricks libraries built for business users.
Notebook-native data observability for Databricks — no external service, no agent to deploy.
- Freshness monitoring — alert when a table's most recent timestamp value is older than expected
- Volume monitoring — alert on row-count bounds, or on deviation from a rolling historical baseline
- Schema-change detection — alert when columns are added, removed, or change type since the last run
- Next-update prediction — estimate when a table will next be refreshed, based on its observed update cadence
- Volume forecasting — project row counts over the next N days / weeks / months using a linear trend fitted to historical observations
All monitor results are appended to a Delta history table, which feeds baselines, schema-diff comparisons, and the forecasting models for future runs.
Installation
%pip install dash-observe
Quick Start
import dashobserve
dashobserve.launch() # Opens interactive UI in your Databricks notebook
What it looks like
Python API
from dashobserve import MonitorConfig, run_monitors, run_forecast
# Monitor
cfg = MonitorConfig(
table="catalog.schema.orders",
freshness_column="updated_at", max_staleness_minutes=60,
min_rows=1000, volume_tolerance_pct=20,
track_schema=True,
)
report = run_monitors(cfg, history_table="catalog.schema.observe_history")
report.display()
print(report.summary())
# Forecast (requires history built up from prior monitor runs)
forecast = run_forecast(
table="catalog.schema.orders",
history_table="catalog.schema.observe_history",
n_periods=4, period="weeks",
)
forecast.display()
Part of Dashlibs
| Library | Purpose |
|---|---|
| dash-dq | Data Quality |
| dash-synthetic | Synthetic Data Generation |
| dash-observe | Data Observability (freshness, volume, schema) |
| dash-ml | ML Model Monitoring |
| dash-ingest | Data Ingestion |
| dash-gov | Data Governance |
| dash-ontology | Ontology & Lineage for AI |
| dash-ui | Shared UI components (PyPI: dash-uis) |
Quality & Contributing
- 33 unit tests, zero Spark dependency to run them —
pytest tests/ -v(freshness/volume/schema-diff checks are pure Python and fully covered; only the Spark/Delta glue inrunner.pyneeds a live cluster) - Lint-clean (
ruff check dashobserve/), PEP 561 typed (py.typed) - Every change ships through a reviewed pull request; CI (lint → test on Python 3.9–3.12 → build) gates every PR and every release
- See CONTRIBUTING.md for dev setup, CHANGELOG.md for release history, SECURITY.md to report a vulnerability, and CODE_OF_CONDUCT.md
License
Apache 2.0
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file dash_observe-0.1.4.tar.gz.
File metadata
- Download URL: dash_observe-0.1.4.tar.gz
- Upload date:
- Size: 123.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
bea34f0cccf2cd75a367d7941463f170862458b73338da4abdb824a6f2765052
|
|
| MD5 |
4d149cb7913332bf662c14d847037b30
|
|
| BLAKE2b-256 |
0a645cb41fbf4a64b2ba795c19cb7a5047cf82ded0eeefed5f426b661a782551
|
Provenance
The following attestation bundles were made for dash_observe-0.1.4.tar.gz:
Publisher:
release.yml on dash-libs/dash-observe
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
dash_observe-0.1.4.tar.gz -
Subject digest:
bea34f0cccf2cd75a367d7941463f170862458b73338da4abdb824a6f2765052 - Sigstore transparency entry: 2046085883
- Sigstore integration time:
-
Permalink:
dash-libs/dash-observe@5c5fa1d03ffbc5a1c14413a3a5c0c223bb846a06 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/dash-libs
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@5c5fa1d03ffbc5a1c14413a3a5c0c223bb846a06 -
Trigger Event:
workflow_dispatch
-
Statement type:
File details
Details for the file dash_observe-0.1.4-py3-none-any.whl.
File metadata
- Download URL: dash_observe-0.1.4-py3-none-any.whl
- Upload date:
- Size: 15.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5d0d7102f4d981ad5e5cd28fd98863c664f062eb5e411535c5e4d4f97836a6b8
|
|
| MD5 |
b920125b815fc87c6c8e6aa7d9599798
|
|
| BLAKE2b-256 |
3fad1e153c95c05d9786cf144f78023003876a0f002b03548e564458b46ac9e6
|
Provenance
The following attestation bundles were made for dash_observe-0.1.4-py3-none-any.whl:
Publisher:
release.yml on dash-libs/dash-observe
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
dash_observe-0.1.4-py3-none-any.whl -
Subject digest:
5d0d7102f4d981ad5e5cd28fd98863c664f062eb5e411535c5e4d4f97836a6b8 - Sigstore transparency entry: 2046086176
- Sigstore integration time:
-
Permalink:
dash-libs/dash-observe@5c5fa1d03ffbc5a1c14413a3a5c0c223bb846a06 -
Branch / Tag:
refs/heads/main - Owner: https://github.com/dash-libs
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@5c5fa1d03ffbc5a1c14413a3a5c0c223bb846a06 -
Trigger Event:
workflow_dispatch
-
Statement type: