awslabs / awslabs/python-deequ
FileSystemMetricsRepository file to be a parquet (/ delta)
- Lingua principale
- Jupyter Notebook
- Stelle
- 826
- Fork
- 158
- Merge medio
- 9g 22h
- PR unite (30g)
- 3
Descrizione
**Is your feature request related to a problem? Please describe.**
We run thousands of anomalies validations on hundreds of data sources. We often want to explain why they fail. To do so - first step is to look at the underlying metrics - persisted in PyDeeQu managed json. Processing json in spark environment is not efficient (both programmatically and not).
**Describe the solution you'd like**
One way to provide explanations for failed anomalies is to expose json repository file underlying FileSystemMetricsRepository to analytical user. Since PyDeeQu is a PySpark framework the best and natural choice is to store repository data as .parquet/delta files instead of json. This could also cover:
- Enable anomalies explainability by enabling live metrics repository table
- Establishing data contract for repository (currently PyDeeQu json repository does not really assume a schema)
**Describe alternatives you've considered**
Consider DELTA format - probably way batter choice but requires more development to enable incremental processing and rollbacks.
**Additional context**
Would also be good to know why .json format was a chosen? And is there any way we can benefit from this choice?
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Inizia individuando FileSystemMetricsRepository e tracciando come il relativo repository JSON gestito da PyDeeQu viene scritto e utilizzato nel framework PySpark. Confronta i requisiti per l’archiviazione in Parquet e Delta, inclusi uno schema del repository definito, l’accesso alle metriche in tempo reale, l’elaborazione incrementale e il supporto per il rollback; il lavoro è concluso quando il formato scelto supporta questi obiettivi e il comportamento esistente del repository continua a essere considerato.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- python, spark
- Ambito
- data-engineering
- Tipo di issue
- Funzionalità
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Tranquilla
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 35/100