Search
DSL (Domain Specific Language)
A Domain-Specific Language (DSL) is a computer language targeted at a particular kind of problem, rather than a general-purpose language aimed at any kind of software problem.
Domain-specific languages have been discussed and used for almost as long as computing has existed. In the data space, they are mostly used with YAML. For example, Dagster uses a DSL to declaratively create a pipeline/graph ( docs): ^8853ef
Sometimes, you may want to construct the dependencies of a graph definition from a YAML file or similar. This is useful when migrating to Dagster from other workflow systems.
For example, you can have a YAML like this:
|
|
# DSL for data pipelines
A DSL is a good way to empower less Pythonic users, such as data analysts. It provides a declarative approach to building data pipelines.
A comprehensive write-up by Elliot Gunn and Tim Castillo on Standardize Pipelines with Domain-Specific Languages | Dagster Blog offers valuable insights.
# Case Studies
- Abstracting the Pipelines for Analysts with a YAML DSL | Dagster Blog
- YAML engineer: From Data Engineer to YAML Engineer
Origin:
References:
Created 2022-09-22