Skip to content

Script python para migrar campos de tabla de SQLserver a mongoDB, este script permite mapear y transformar los campos origen antes de pasarlos al destino

Notifications You must be signed in to change notification settings

neotrons/sql_to_mongodb

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Migrar SQL a MongoDB

Requerimientos

pip install -r requirements.txt

Configuración

  • Configurar la conexion SQL origen
ORIGEN = {
    "type": 'sql',
    "config": {
        "host": 'localhost',
        "name": 'BD_SQL_ORIGEN',
        "user": 'usuario',
        "password": 'xxxxxxx'
    },

    "table": '[ESQUEMA].[TABLA]',  # Esquema es opcional
}
  • Configurar la conexion MongoDB destino
DESTINO = {
    "type": 'mongo',
    "config": {
        "host": 'localhost',
        "name": 'BD_MONGO',
        "user": 'usuario',
        "password": 'xxxxxxxx',
        "port": 27017
    },

    "collection": 'nombre_coleccion'
}

Mapeo de variables

Es la relacion entre los campos origen del SQL y los destinos en MondoDB. Se debe especificar el tipo de dato que se desea aplicar los tipos de datos aceptados son int, str, json sin embargo es posible crear extender estos tipos.

MAP = {
        "campo_origen_sql": {
            "type": "tipo", 
            "dest": "campo_destino_mongo"
        }
    }

Funciones de tipo peronalizados

Permite extender los tipos de datos o personalizar la conversion pormedio de funciones de python

def to_int_or_cero(v):
    return int(v, 0)
    
TIPO_FUNCIONES = {
    "int_or_cero": to_int_or_cero
}

Ejecutar.

El bloque que ejecuta la migración es

if __name__ == "__main__":
    data_parser = sql(ORIGEN, MAP, TIPO_FUNCIONES)
    mongo(DESTINO, data_parser)

por lo tanto para ejecutar la migración solo hace falta ejecutar el archivo ejemplo:

python ejemplo.py

About

Script python para migrar campos de tabla de SQLserver a mongoDB, este script permite mapear y transformar los campos origen antes de pasarlos al destino

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages