Gestisci i componenti

Introduzione alla Data Quality con Great Expectations

Davina Moossazadeh

Data Scientist

Componenti

Componenti GX - classi Python che rappresentano entità di dati e validazione

  • Data Context
  • Data Source e Data Asset
  • Batch Definition e Batch
  • Expectation
  • Expectation Suite
  • Validation Definition
  • Checkpoint e Action
  • Data Docs
1 https://docs.greatexpectations.io/docs/core/introduction/gx_overview
Introduzione alla Data Quality con Great Expectations

Gestione componenti in GX

Data Source:

  • si collegano ai dati e contengono Data Asset

Expectation Suite:

  • contengono Expectation

Validation Definition:

  • validano le Expectation sui dati

Checkpoint:

  • raggruppano e automatizzano le Validation

context.data_sources

$$

context.suites

$$

context.validation_definitions

$$

context.checkpoints

Introduzione alla Data Quality con Great Expectations

Aggiungere componenti

Expectation Suite:

suite = context.suites.add(suite)

Validation Definition:

validation_definition = context.validation_definitions.add(validation_definition)

Checkpoint:

checkpoint = context.checkpoints.add(
    checkpoint=checkpoint
)
Introduzione alla Data Quality con Great Expectations

Aggiungere una Data Source

data_source = context.data_sources.add_<TYPE_NAME>()

1 https://docs.greatexpectations.io/docs/core/connect_to_data/
Introduzione alla Data Quality con Great Expectations

Aggiungere una Data Source pandas

Usa .add_pandas() per creare facilmente una Data Source per i DataFrame pandas:

data_source = context.data_sources.add_pandas(
    name="my_pandas_datasource"
)
Introduzione alla Data Quality con Great Expectations

Recuperare componenti

Recupera componenti con .get() indicando il nome:

context.<COMPONENT>s.get(

name: str )
data_source = context.data_sources.get(

name="my_pandas_datasource" )
print(data_source)
id: 46c91f1b-1db9-4351-b5dd-83e038c0f511
name: 'my_pandas_datasource'
type: pandas
Introduzione alla Data Quality con Great Expectations

Recuperare componenti

Data Source:

context.data_sources.get(
    name="my_pandas_datasource"
)

Expectation Suite:

context.suites.get(
    name="my_suite"
)

Validation Definition:

context.validation_definitions.get(
    name="my_validation_definition"
)

Checkpoint:

context.checkpoints.get(
    name="my_checkpoint"
)
Introduzione alla Data Quality con Great Expectations

Elencare componenti

Usa .all() per elencare tutti i componenti nel tuo Data Context, con nomi e metadati:

context.<COMPONENT>s.all()
data_sources = context.data_sources.all()

print(data_sources)
{
    'my_pandas_datasource': PandasDatasource(
        type='pandas',
        name='my_pandas_datasource', 
        id=UUID('c22b16f7-6945-400e-932f-026cbd63b112'), 
        assets=[]
    )
}
Introduzione alla Data Quality con Great Expectations

Elencare componenti

Data Source:

context.data_sources.all()

Expectation Suite:

context.suites.all()

Validation Definition:

context.validation_definitions.all()

Checkpoint:

context.checkpoints.all()
Introduzione alla Data Quality con Great Expectations

Eliminare componenti

Usa .delete() per rimuovere componenti indicando il nome:

context.<COMPONENT>s.delete(

name: str )
context.data_sources.delete(
    name="my_pandas_datasource"
)

print(context.data_sources.all())
{}
Introduzione alla Data Quality con Great Expectations

Eliminare componenti

Data Source:

context.data_sources.delete(
    name="my_pandas_datasource"
)

Expectation Suite:

context.suites.delete(
    name="my_suite"
)

Validation Definition:

context.validation_definitions.delete(
    name="my_validation_definition"
)

Checkpoint:

context.checkpoints.delete(
    name="my_checkpoint"
)
Introduzione alla Data Quality con Great Expectations

Cheat sheet

Aggiungi un componente al Data Context:

context.data_sources.add(data_source)

context.suites.add(suite)

context.validation_definitions.add(
    validation_definition
)

context.checkpoints.add(checkpoint)

Recupera un componente:

.get(name: str)

Elenca componenti:

.all()

Elimina un componente:

.delete(name: str)
Introduzione alla Data Quality con Great Expectations

Ayo berlatih!

Introduzione alla Data Quality con Great Expectations

Preparing Video For Download...