Skip to content

Instantly share code, notes, and snippets.

@hwayne
Created June 26, 2023 20:38
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save hwayne/b27ff54cdfe0281c7ce6bf17254fc638 to your computer and use it in GitHub Desktop.
Save hwayne/b27ff54cdfe0281c7ce6bf17254fc638 to your computer and use it in GitHub Desktop.
Simple ETL pipeline in Alloy
// ETL pipeline
sig DataSource {}
sig Step {
requires: set Step
}
sig Database, File extends DataSource {}
sig Extract in Step {
from: DataSource
}
sig Load in Step {
to: DataSource
}
fact "dag" {
no iden & ^requires
}
fact "extracts are used" {
all e: Extract {
some l: Load |
e in l.^requires
}
}
run {some Load}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment