0% encontró este documento útil (0 votos)
126 vistas2 páginas

Python ETL Project

Este documento describe un proyecto ETL para transferir datos desde un servidor de entrada a un servidor de salida usando Python. Incluye extracto, transformación y carga de datos. En la transformación se generan dos dataframes a partir de un archivo de entrada y se renombran campos. La carga almacena los dataframes en el servidor de salida y opcionalmente en una base de datos SQLite.

Cargado por

Fatima Sánchez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
126 vistas2 páginas

Python ETL Project

Este documento describe un proyecto ETL para transferir datos desde un servidor de entrada a un servidor de salida usando Python. Incluye extracto, transformación y carga de datos. En la transformación se generan dos dataframes a partir de un archivo de entrada y se renombran campos. La carga almacena los dataframes en el servidor de salida y opcionalmente en una base de datos SQLite.

Cargado por

Fatima Sánchez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 2

Proyecto Final Python for ETL

Crear un proyecto ETL que permita la transferencia de datos desde un servidor de


entrada (Carpeta server_inputs) a un servidor de salida (Carpeta server_outputs):

Proceso:

1. Crear el ambiente: … (2p)

• Carpeta server_inputs / Carpeta server_outputs / Archivo del proyecto: main.py

OBS: El archivo main.py deberá contener 3 partes de código, separados por

comentarios: EXTRACT, TRANSFORM y LOAD (O en su defecto, se puede seguir


lo indicado en el Bono 1)

2. EXTRACT: Se deberá leer data desde el servidor de entrada … (4p)

3. TRANSFORM: Se deberá generar dos DataFrames: cliente y deuda. Ambos


se obtienen desde el mismo archivo: le.ope. Cada una con las siguientes
reglas de negocio: … (10p)

• DataFrame cliente: Son todos aquellos registros que empiecen en 1

- Todos los campos se encuentran separados por. ‘|’

- Los datos se encuentran ordenados, y sus cabeceras son las siguientes:



‘SBSCodigoCliente', ‘SBSFechaReporte', ‘SBSTipoDocumentoT’,
‘SBSRucCliente’, ‘SBSTipoDocumento', ‘SBSNumeroDocumento',
‘SBSTipoPer', ‘SBSTipoEmpresa’, ‘SBSNumeroEntidad', ‘SBSSalNor',
‘SBSSalCPP', ‘SBSSalDEF', ‘SBSSalDUD’, ‘SBSSalAPER', ‘SBSAPEPAT',
‘SBSAPEMAT', ‘SBSAPECAS', ‘SBSNOMCLI', 'SBSNOMCLI2'

• DataFrame deuda: Son todos aquellos registros que empiecen en 2

• Sus campos se pueden obtener según la siguiente regla:

- CodigoSBS: Del caracter 1 al 10

- CodigoEmpresa: Del caracter 11 al 15

- TipoCredito: Del caracter 16 al 17

- Nivel2: Del caracter 18 al 19

- Moneda: Caracter 20

- SubCodigoCuenta: Del caracter 21 al 31

- Condicion: Del caracter 32 al 37

- ValorSaldo: Del caracter 38 al 41

- Clasi cacionDeuda: Caracter 42

- CodigoCuenta: Es la unión de los campos ‘Nivel 2’, ‘Moneda’ y


‘SubCodigoCuenta’

• Será necesario renombrar algunos campos según la siguiente regla:

- ‘CodigoSBS' —> 'Cod_SBS'

- 'CodigoEmpresa'—> 'Cod_Emp'

- 'TipoCredito'—> 'Tip_Credit'

- 'ValorSaldo'—> 'Val_Saldo'

- 'Clasi cacionDeuda'—> 'Clasif_Deu'

- 'CodigoCuenta'—> 'Cod_Cuenta'

4. LOAD: Se deberá guardar los dataframes dentro del servidor de salida


(Carpeta server_outputs) … (4p)

fi
fi
fi
Bono 1:
La estructura del archivo Python deberá ser la siguiente: … (4p)

• Importar librerías a utilizar

• De nir variables a utilizar

• De nir las siguientes funciones: Extract, Transform y Load

• Llamar a las funciones de nidas en el punto 3

Bono 2:

Load: Generar un proceso adicional que permita guardar los datos de la deuda en
una base de datos de SQLite (4p).

La tabla se podrá crear mediante el siguiente query:

sql_query = '''

CREATE TABLE IF NOT EXISTS deudas_sbs(

Cod_SBS VARCHAR(200),

Cod_Emp VARCHAR(200),

Tip_Credit VARCHAR(200),

Nivel2 VARCHAR(200),

Moneda VARCHAR(200),

Condicion VARCHAR(200),

Val_Saldo VARCHAR(200),

Clasif_Deu VARCHAR(200),

Cod_Cuenta VARCHAR(200)

OBS: Nótese que hay campos que deberán eliminarse del dataframe antes de
realizar la carga (‘Field_1’, ‘Value’, ‘SubCodigoCuenta’).
fi
fi
fi

También podría gustarte