https://github.com/devantler-tech/data-product
https://github.com/devantler-tech/data-product
app
Last synced: 3 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/devantler-tech/data-product
- Owner: devantler-tech
- License: mit
- Created: 2022-08-05T22:43:42.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2025-02-16T13:11:15.000Z (about 1 year ago)
- Last Synced: 2025-02-16T13:37:57.239Z (about 1 year ago)
- Topics: app
- Language: C#
- Size: 1.75 MB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 28
-
Metadata Files:
- Readme: README.md
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
README
# Data Product ⬡
[](https://codecov.io/gh/devantler/data-product)

This repo contains a Data Product as defined by Zhamak Dehghani in the Book [Data Mesh](https://www.oreilly.com/library/view/data-mesh/9781492092384/). A data product is the central unit of the data mesh, and operates as a service that provides dedicated data storage, data processing, data discovery-, and data governance- tooling for a specific domain model. In this context, a domain model is the schema of some data that covers a concrete domain, e.g. Accounts, Books, Authors etc.
The data product is built to support most cloud providers and provisioning tools by being built as a container.
Show/hide folder structure
```
.
├── .github
│ └── workflows
├── .vscode
├── src
│ ├── Devantler.DataProduct
│ │ ├── Features
│ │ │ ├── Apis
│ │ │ │ ├── GraphQL
│ │ │ │ ├── Rest
│ │ │ │ │ └── Controllers
│ │ │ │ └── gRPC
│ │ │ ├── Auth
│ │ │ ├── Caching
│ │ │ │ ├── Extensions
│ │ │ │ └── Services
│ │ │ ├── Configuration
│ │ │ ├── Dashboard
│ │ │ │ └── UI
│ │ │ │ ├── Components
│ │ │ │ ├── Layouts
│ │ │ │ └── Pages
│ │ │ ├── DataCatalog
│ │ │ │ └── Services
│ │ │ │ └── DataHubClient
│ │ │ │ ├── Extensions
│ │ │ │ ├── Helpers
│ │ │ │ └── Models
│ │ │ │ ├── Aspects
│ │ │ │ │ └── SchemaMetadata
│ │ │ │ │ └── PlatformSchemas
│ │ │ │ └── Entities
│ │ │ ├── DataStore
│ │ │ │ ├── Entities
│ │ │ │ ├── Repositories
│ │ │ │ └── Services
│ │ │ ├── Inputs
│ │ │ │ ├── JsonConverters
│ │ │ │ └── Services
│ │ │ ├── Mapping
│ │ │ ├── Outputs
│ │ │ │ └── Services
│ │ │ ├── SchemaRegistry
│ │ │ ├── Schemas
│ │ │ ├── Telemetry
│ │ │ │ ├── Logging
│ │ │ │ ├── Metrics
│ │ │ │ └── Tracing
│ │ │ ├── Validation
│ │ │ └── Webhooks
│ │ ├── Properties
│ │ ├── assets
│ │ │ ├── input
│ │ │ └── schemas
│ │ └── wwwroot
│ │ └── css
│ ├── Devantler.DataProduct.Configuration
│ │ ├── Extensions
│ │ └── Options
│ │ ├── Apis
│ │ ├── Auth
│ │ ├── CacheStore
│ │ ├── Dashboard
│ │ ├── DataCatalog
│ │ ├── DataStore
│ │ │ ├── NoSQL
│ │ │ └── SQL
│ │ ├── FeatureFlags
│ │ ├── Inputs
│ │ ├── Outputs
│ │ ├── SchemaRegistry
│ │ │ └── Providers
│ │ └── Telemetry
│ ├── Devantler.DataProduct.Generator
│ │ ├── Extensions
│ │ ├── IncrementalGenerators
│ │ └── Models
│ └── Devantler.SchemaRegistry.Client
│ └── Models
└── tests
├── Devantler.DataProduct.Configuration.Tests.Unit
└── Devantler.DataProduct.Generator.Tests.Unit
├── IncrementalGenerators
│ ├── AutoMapperProfileGeneratorTests
│ ├── CachingStartupExtensionsGeneratorTests
│ ├── DataStoreServiceGeneratorTests
│ ├── DataStoreStartupExtensionsGeneratorTests
│ ├── DbContextGeneratorTests
│ ├── EntitiesGeneratorTests
│ ├── GraphQlQueryGeneratorTests
│ ├── InputsStartupExtensionsGeneratorTests
│ ├── OutputsStartupExtensionsGeneratorTests
│ ├── RepositoryGeneratorTests
│ ├── RestBulkControllerGeneratorTests
│ ├── RestControllerGeneratorTests
│ └── SchemaGeneratorTests
└── assets
└── schemas
98 directories
```
## Prerequisites
- .NET 7.0+
Optionally the following infrastructure:
- Kafka
- Kafka Schema Registry
- Jaeger
- Grafana
- Prometheus
- Elasticsearch
- Redis
- LinkedIn DataHub
- PostgreSQL
- Keycloak