Skip to content

Commit 10e92c4

Browse files
authored
Merge pull request #988 from elementary-data/update-readme-0426
Update and shorten readme
2 parents 9f32d47 + 3cdd8fe commit 10e92c4

File tree

1 file changed

+30
-156
lines changed

1 file changed

+30
-156
lines changed

README.md

Lines changed: 30 additions & 156 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<img alt="Logo" src="https://res.cloudinary.com/do5hrgokq/image/upload/v1764493013/github_banner_zp5l2o.png" width="1000">
33
</p>
44
<p align="center">
5-
<a href="https://join.slack.com/t/elementary-community/shared_invite/zt-uehfrq2f-zXeVTtXrjYRbdE_V6xq4Rg"><img src="https://img.shields.io/badge/join-Slack-ff69b4"/></a>
5+
<a href="https://join.slack.com/t/elementary-community/shared_invite/zt-3s3uv8znb-7eBuG~ApwOa637dpVFo9Yg"><img src="https://img.shields.io/badge/join-Slack-ff69b4"/></a>
66
<a href="https://docs.elementary-data.com/data-tests/dbt/quickstart-package"><img src="https://img.shields.io/badge/docs-quickstart-orange"/></a>
77
<img alt="License" src="https://img.shields.io/badge/license-Apache--2.0-ff69b4"/>
88
<img alt="Downloads" src="https://static.pepy.tech/personalized-badge/elementary-data?period=month&units=international_system&left_color=grey&right_color=orange&left_text=downloads/month" />
@@ -13,179 +13,53 @@
1313
From the [Elementary](https://www.elementary-data.com/) team, helping you deliver trusted data in the AI era.
1414
Ranked among the top 5 dbt packages and supported by a growing community of thousands.
1515

16-
### Table of Contents
16+
> **Need data reliability at scale?** The Elementary dbt package is also the foundation for **[Elementary Cloud](https://docs.elementary-data.com/cloud/introduction)** — a full Data & AI Control Plane with automated ML monitoring, column-level lineage from ingestion to BI and AI assets, a built-in catalog, and AI agents that scale reliability workflows for engineers and business users. [Book a demo →](https://meetings-eu1.hubspot.com/joost-boonzajer-flaes/intro-call-sl-)
1717
18-
- [**What's Inside the Elementary dbt Package?**](#whats-inside-the-elementary-dbt-package)
19-
- [**Get more out of Elementary dbt package**](#get-more-out-of-elementary-dbt-package)
20-
- [**Anomaly Detection Tests**](#anomaly-detection-tests)
21-
- [**Schema Tests**](#schema-tests)
22-
- [**Elementary Tables - Run Results and dbt Artifacts**](#elementary-tables---run-results-and-dbt-artifacts)
23-
- [**AI-powered data validation and unstructured data tests**](#ai-powered-data-validation-and-unstructured-data-tests)
24-
- [**Quickstart - dbt Package**](#quickstart---dbt-package)
25-
- [**Community & Support**](#community--support)
26-
- [**Contributions**](#contributions)
18+
---
2719

28-
## **What's Inside the Elementary dbt Package?**
20+
## What it does
2921

30-
The **Elementary dbt package** is designed to enhance data observability within your dbt workflows. It includes two core components:
22+
The package has two core components:
3123

32-
- **Elementary Tests** – A collection of **anomaly detection tests** and other data quality checks that help identify unexpected trends, missing data, or schema changes directly within your dbt runs.
33-
- **Metadata & Test Results Tables** – The package automatically generates and updates **metadata tables** in your data warehouse, capturing valuable information from your dbt runs and test results. These tables act as the backbone of your **observability setup**, enabling **alerts and reports** when connected to an Elementary observability platform.
24+
**1. Elementary Tables**
25+
Using dbt's on-run-end hook, the package automatically parses your dbt artifacts and run results and loads them as structured tables into your warehouse. This includes:
26+
- **Metadata tables** — models, tests, sources, exposures, columns, seeds, snapshots, and more
27+
- **Run results tables** — invocations, model run results, test results, source freshness, and job-level outcomes
3428

35-
## Get more out of Elementary dbt package
29+
These tables are the backbone of any observability setup — enabling alerts, reports, and lineage when connected to Elementary OSS or Cloud. → [See full table reference](https://docs.elementary-data.com/data-tests/dbt/package-models)
3630

37-
The **Elementary dbt package** helps you find anomalies in your data and build metadata tables from your dbt runs and tests—but there's even more you can do.
31+
**2. Elementary Tests**
32+
A suite of anomaly detection and data quality tests that run like native dbt tests — no separate tooling. Covers volume, freshness, column distributions, schema changes, and AI-powered validation for structured and unstructured data. → [See all tests](https://docs.elementary-data.com/data-tests/introduction)
3833

39-
To generate observability reports, send alerts, and govern your data quality effectively, connect your dbt package to one of the following options:
34+
---
4035

41-
- **Elementary OSS**
42-
**A self-maintained, open-source CLI** that integrates seamlessly with your dbt project and the Elementary dbt package. It **enables alerting and provides the self-hosted Elementary data observability report**, offering a comprehensive view of your dbt runs, all dbt test results, data lineage, and test coverage. Quickstart [here](https://docs.elementary-data.com/oss/quickstart/quickstart-cli), and our team and community can provide great support on [Slack](https://www.elementary-data.com/community) if needed.
43-
- **Elementary Cloud**
44-
A managed, AI-driven control plane for observability, quality, governance, and discovery. It includes automated ML monitoring, column-level lineage from source to BI, a built-in catalog, and AI agents that scale reliability workflows. Cloud supports both engineers and business users, enabling technical depth and simple self-service in one place. To learn more, [book a demo](https://cal.com/maayansa/elementary-intro-github-package) or [start a trial](https://www.elementary-data.com/signup).
36+
## Quickstart
4537

46-
<kbd align="center">
47-
<a href="https://storage.googleapis.com/elementary_static/elementary_demo.html"><img align="center" style="max-width:300px;" src="https://raw.githubusercontent.com/elementary-data/elementary/master/static/report_ui.gif"> </a>
48-
</kbd>
49-
50-
## Data Anomaly Detection & Schema changes as dbt Tests
51-
52-
**Elementary tests are configured and executed like native tests in your project!**
53-
54-
Elementary dbt tests help track and alert on schema changes as well as key metrics and metadata over time, including freshness, volume, distribution, cardinality, and more.
55-
56-
**Seamlessly configured and run like native dbt tests,** Elementary tests detect anomalies and outliers, helping you catch data issues early.
57-
58-
Example of an Elementary test config in `schema.yml`:
59-
60-
```
61-
62-
models:
63-
- name: all_events
64-
config:
65-
elementary:
66-
timestamp_column: 'loaded_at'
67-
columns:
68-
- name: event_count
69-
tests:
70-
- elementary.column_anomalies:
71-
column_anomalies:
72-
- average
73-
where_expression: "event_type in ('event_1', 'event_2') and country_name != 'unwanted country'"
74-
anomaly_sensitivity: 2
75-
time_bucket:
76-
period: day
77-
count:1
78-
79-
```
80-
81-
Elementary tests include:
82-
83-
### **Anomaly Detection Tests**
84-
85-
- **Volume anomalies -** Monitors the row count of your table over time per time bucket.
86-
- **Freshness anomalies -** Monitors the freshness of your table over time, as the expected time between data updates.
87-
- **Event freshness anomalies -** Monitors the freshness of event data over time, as the expected time it takes each event to load - that is, the time between when the event actually occurs (the **`event timestamp`**), and when it is loaded to the database (the **`update timestamp`**).
88-
- **Dimension anomalies -** Monitors the count of rows grouped by given **`dimensions`** (columns/expressions).
89-
- **Column anomalies -** Executes column level monitors on a certain column, with a chosen metric.
90-
- **All columns anomalies** - Executes column level monitors and anomaly detection on all the columns of the table.
91-
92-
### **Schema Tests**
93-
94-
- **Schema changes -** Alerts on a deleted table, deleted or added columns, or change of data type of a column.
95-
- **Schema changes from baseline** - Checks for schema changes against baseline columns defined in a source’s or model’s configuration.
96-
- **JSON schema** - Allows validating that a string column matches a given JSON schema.
97-
- **Exposure validation test -** Detects changes in your models’ columns that break downstream exposure.
98-
99-
Read more about the available [Elementary tests and configuration](https://docs.elementary-data.com/data-tests/introduction).
100-
101-
## Elementary Tables - Run Results and dbt Artifacts
102-
103-
The **Elementary dbt package** automatically stores **dbt artifacts and run results** in your data warehouse, creating structured tables that provide visibility into your dbt runs and metadata.
38+
[docs.elementary-data.com/data-tests/dbt/quickstart-package](https://docs.elementary-data.com/data-tests/dbt/quickstart-package)
10439

105-
### **Metadata Tables - dbt Artifacts**
40+
---
10641

107-
These tables provide a comprehensive view of your dbt project structure and configurations:
42+
## See it in action
10843

109-
- **dbt_models** – Details on all dbt models.
110-
- **dbt_tests** – Stores information about dbt tests.
111-
- **dbt_sources** – Tracks source tables and freshness checks.
112-
- **dbt_exposures** – Logs downstream data usage.
113-
- **dbt_metrics** – Captures dbt-defined metrics.
114-
- **dbt_snapshots** – Stores historical snapshot data.
115-
- **dbt_seeds -** Stores current metadata about seed files in the dbt project.
116-
- **dbt_columns** - Stores detailed information about columns across the dbt project.
117-
118-
### **Run Results Tables**
119-
120-
These tables track execution details, test outcomes, and performance metrics from your dbt runs:
121-
122-
- **dbt_run_results** – Captures high-level details of each dbt run.
123-
- **model_run_results** – Stores execution data for dbt models.
124-
- **snapshot_run_results** – Logs results from dbt snapshots.
125-
- **dbt_invocations** – Tracks each instance of dbt being run.
126-
- **elementary_test_results** – Consolidates all dbt test results, including Elementary anomaly tests.
127-
128-
For a full breakdown of these tables, see the [documentation](https://docs.elementary-data.com/dbt/package-models).
129-
130-
## AI-powered data validation and unstructured data tests
131-
132-
Elementary leverages AI to enhance data reliability with natural language test definitions:
133-
134-
- **AI data validation**: Define expectations in plain English to validate structured data
135-
- **Unstructured data validation**: Validate text, JSON, and other non-tabular data types
136-
137-
Example:
138-
139-
```yml
140-
# AI data validation example
141-
models:
142-
- name: crm
143-
description: "A table containing contract details."
144-
columns:
145-
- name: contract_date
146-
description: "The date when the contract was signed."
147-
tests:
148-
- elementary.ai_data_validation:
149-
expectation_prompt: "There should be no contract date in the future"
150-
```
151-
152-
Learn more in our [AI data validations documentation](https://docs.elementary-data.com/data-tests/ai-data-tests/ai_data_validations).
153-
154-
## Quickstart - dbt Package
155-
156-
1. Add to your `packages.yml`:
157-
158-
```
159-
packages:
160-
- package: elementary-data/elementary
161-
version: 0.23.1
162-
## Docs: <https://docs.elementary-data.com>
163-
164-
```
44+
<kbd align="center">
45+
<a href="https://storage.googleapis.com/elementary_static/elementary_demo.html"><img align="center" style="max-width:300px;" src="https://raw.githubusercontent.com/elementary-data/elementary/master/static/report_ui.gif"> </a>
46+
</kbd>
16547

166-
2. Run `dbt deps`
167-
3. Add to your `dbt_project.yml`:
48+
---
16849

169-
```
170-
models:
171-
## elementary models will be created in the schema '<your_schema>_elementary'
172-
## for details, see docs: <https://docs.elementary-data.com/>
173-
elementary:
174-
+schema: "elementary"
50+
## Get the most out of the dbt package
17551

176-
```
52+
The dbt package works standalone, and integrates with both:
17753

178-
4. Run `dbt run --select elementary`
54+
- **[Elementary OSS](https://docs.elementary-data.com/oss/oss-introduction)** — Self-hosted CLI for alerts and a local observability report.
55+
- **[Elementary Cloud](https://docs.elementary-data.com/cloud/introduction)** — A full Data & AI Control Plane with automated ML monitoring, column-level lineage from ingestion to BI and AI assets, a built-in catalog, and AI agents that scale reliability workflows for engineers and business users. [Start a trial →](https://www.elementary-data.com/signup) or [book a demo →](https://meetings-eu1.hubspot.com/joost-boonzajer-flaes/intro-call-sl-)
17956

180-
Check out the [full documentation](https://docs.elementary-data.com/).
57+
---
18158

18259
## Community & Support
18360

184-
- [Slack](https://join.slack.com/t/elementary-community/shared_invite/zt-uehfrq2f-zXeVTtXrjYRbdE_V6xq4Rg) (Talk to us, support, etc.)
185-
- [GitHub issues](https://github.com/elementary-data/elementary/issues) (Bug reports, feature requests)
186-
187-
## Contributions
188-
189-
Thank you :orange_heart: Whether it's a bug fix, new feature, or additional documentation - we greatly appreciate contributions!
61+
- [Slack community](https://join.slack.com/t/elementary-community/shared_invite/zt-3s3uv8znb-7eBuG~ApwOa637dpVFo9Yg) — questions, team and AI support, and conversation
62+
- [GitHub Issues](https://github.com/elementary-data/elementary/issues) — bug reports and feature requests
63+
- [elementary-data.com](https://www.elementary-data.com/) — product, use cases, and more
19064

191-
Check out the [contributions guide](https://docs.elementary-data.com/oss/general/contributions) and [open issues](https://github.com/elementary-data/elementary/issues) in the main repo.
65+
Contributions are always welcome. See the [contributions guide](https://docs.elementary-data.com/oss/general/contributions) to get started. 🧡

0 commit comments

Comments
 (0)