Muchas gracias por tú tiempo y la pasión que le ponés a tus videos! Disfruto mucho escuchándote y aprendiendo. Soy nueva en este mundo y tu canal me super sirvió. Un saludo desde Argentina! Gracias de nuevo!
Gracias por tomarse el tiempo para comentar, de verdad me alegra mucho poder ayudar y saber que lo que hago le hace bien a la comunidad. Gracias Ivana, un abrazo.
Excelente toda esta serie de DW+BI, estoy empezando en esto y ya tengo lo necesario para ir traveseando un poco, pura vida mae por tomarse el tiempo, ojalá puedas seguir con estos vídeos, bendiciones!!
Muchas Gracias Cesar, hoy lo puse en practica en mi trabajo y me salió de maravilla, solo le tuve que agregar un converter porque mi origen es oracle y mi destino sql server, pero nada del otro mundo. Muchas Gracias
Muy importante lo que haces, porque la mayoría de los videos son superficiales, pero es muy bueno ver casos reales y problemas que pueden ocurrir a la hora de hacer un poryecto. Me gustaría saber según tu experiencia cuales son los problemas fundamentales a la hora de realizar los ETL, sobre todo a la hora de la carga y la transformación de datos. Gracias por tu aporte.
Muchas gracias Elizabeta, siempre la idea del canal ha sido crear tutoriales y cursos bien prácticos de DW, ahora sobre lo que plantea de problemas comunes a la hora del ETL me suena a hacer un video sobre ello, así que esté atenta al contenido. Gracias.
Es magnifico este video, yo realice un ejercicio similar, pero en vez de Ignorar el error , coloque la opción de Redirigir filas a resultados no coincidentes. De esta manera cuando no existen los registros en la dimensión los inserta, de lo contrarios los manda a los existentes y de ahí con una condición le pregunto que si alguno de los registros cambio su valor lo actualice.
Hola Guillermo, disuclpa puedo saber que condicion utilizas para saber si un registro cambio? Y en donde pones la condicion? Disculpa soy muy nueva en esto y estoy aprendiendo. Gracias
Super chévere el curso, muchas gracias, me sirvió un montón! Desearía que hagas una parte con Analysis Servers y terminar el proceso con azure porque explicas muy bien! y yo soy nueva en todos los temas de BI. Ver vídeos de ésta calidad son difíciles en TH-cam, pero sé que todo lo he entendido porque cuando me evalúan estoy en lo correcto gracias a sus términos , practicas y la documentación de Microsoft jajaja. Me encantaría saber más sobre el tema y ya me suscribí. Saludos desde Colombia. :D
Muy bien video. Tengo dos preguntas y una sugerencia. 1 Se podrían tambien contemplar los deleted? 2 Incremental loading aplicando lookup funciona con tablas grandes, por ejemplo por encima de 10 millones de registros? 3 Me gustaría ver un video de incremental loading aplicando change tracking. Muchas gracias por tus aportes.
Hola, de antemano muchas gracias por el esfuerso de transmitir su conocimiento, es muy valioso. Tengo la siguiente pregunta, en el Conditional Split en la parte de modificar hay un error cuando en un campo se compara algun dato que venda nulo ¿Cual es la manera de corregir esto? Gracias
Excelente video, tengo el siguiente escenario, necesito hacer una carga incremental, de una vista pero en la vista no tengo una llave de negocio, no tengo un valor único. Como se haría en ese caso?
EXCELENTE VIDEO, una consulta es recomendable usar la TAREA EJECUTAR SQL Y DENTRO DE ELLO USAR TRANSACT CON MERGE INTO PARA HACER CARGAS INCREMENTAL, GRACIAS ANTEMANO
Buenas, que tanto recomiendas usar la tarea de control cdc para hacer la carga incremental, y si has tenido alguna experiencia buena/mala con este task en producción . Gracias.Saludos.
Hola. Muy bueno vídeos. Te quería pedir si puedes agregar vídeos de esta temática del ETL y DW, pero creando un mini proyecto desde cero hasta el datamart y su actualización como si estuviera en producción . Por ejemplo que se reciban datos exportados desde un sistema transaccional a un MS SQL en varias tablas (todos los días 3 a.m.) de una db deposito, el pasaje al staging área (que puede ser la database: DBstaging) donde estan staging de dimensiones o facts, pasar los datos de las tablas staging a las tablas dimensionales y fact definitivas ( que pueden estar en otra database, DWbase) y por ultimo la planificación de todas estas tareas en Jobs de mssql para que todos los dias mssql ejecute los packages y procedimientos almacenados del staging y cargue las dimensiones y facts.
Muy buen video, me sirvio bastante la parte de Agregar los registros nuevo, lo que no entiendo es el por que el ISNULL, osea si el ID es nulo osea vacio los inserta pero no me queda claro en como hace la comparativa entre el id del origen y el del lookup :(
hace una comparacion de origen - destino , si el id de origen isnull en destino es decir si no esta presente , pues lo inserta , para eso usa el lookup para buscar y comparar los id entre ambas tablas
Buen día amigo, un favor gigante estoy adentrándome en el mundo de las ETL con visual studio y debo hacer una etl que me lea los registros origen (SQL) y actualice los registros que sufrieron alguna actualización en el Destino (ODBC) , agradezco si me ayudas con una guía o como debo investigar para resolverlo. Muchas gracias.
@@BILATAM Deberías hacer un video de los stageng y mejores practicas para esta BD, tengo un excel de documentación de las tablas para creación de un DW, si me indicas un correo te lo puedo proporcionar. Slds
@@BILATAM Pregunta, cuando yo creo la tabla DimProducto, la columna ProductoID que es autoincremental, debe ser Primary Key? Si es correcto, quiere decir que todas las dimensiones debe tener un primary key autoincremental, al igual que el la tabla Fact?. Gracias
Yo en los proyectos o tablas "pequeños" si uso el Slowly Changing Dimension. Pero siempre es muy discutible el rendimiento de este componente. En el video usé una opción que da mejor rendimiento que el componente SCD.
@@BILATAM es correcto, al usar Slowly Changing Dimension para cargar tablas(Dimensiones) con columnas de tipo atributo variable demora mucho mas que hacerlo con un Lookup. Se recomienda usarlo para tablas que no suelen actualizar sus campos frecuentemente. P. D.: Excelente vídeo amigo!
En la parte del "Conditional Split" (o antes) ¿no habria una forma de concatenar source y lookup para luego validar esa concatenación o usar un campo calculado de CHECKSUM?
Si correcto, de hecho una forma bastante común de optimizar esta carga es por medio del checksum. Sin embargo al ser este video introductorio al SSIS pues no lo vi como lo mejor para alguien que ir está empezando.
El ejemplo aplica muy bien para una cantidad de registros limitada, para volúmenes grandes de datos un lookup y un update serían demasiado costoso en tiempo y recursos. Sería más óptimo el uso de tablas temporales o hash
Correcto, dependiendo del volumen el SSIS inclusive se queda corto. Más que de acuerdo, voy ha hacer una segunda parte con Hash y alguna otra estrategia de carga para ejemplificar mejor otros escenarios.
5 ปีที่แล้ว
Para grandes cantidades de data sí sería pesado, pero recuerde que esto es para cargar una dimensión, la cual normalmente no llegan a crecer demasiado, entonces este método es eficaz y eficiente para la mayoría de las dimensiones de tamaño regular mediano o pequeño.
tu vídeo me fue de mucha ayuda sin embargo hay una excepción que necesito manejar en caso de una interrupción forzada durante el proceso de inserción y no tengo un indice durante dicha inserción ya que el origen es un flat file source que luego paso por un script y obtengo los datos para luego insertarlos en su respectiva tabla, algúna idea de como podría sortear ese evento borde en el que se apague el servidor durante la inserción??
En el caso de interrumpir el proceso se requiere usar “transaction option” = required. Para agregar transacciones al ETL. Sin embargo lo normal, en procesos de ETL para Data Warehouse que el mismo ETL maneja cómo continuar el proceso a partir de donde falló o incrementalmente.
@@BILATAM Esto tambien funciono muchas gracias, tendrás un tutorial de como configurar correctamente el script task (transformation) con multiples salidas, necesito dividir las columnas que salen de ese script task para insertar dos tablas distintas dentro de la misma base de datos pero si lo hago con el muticast da un error de conexión a base de datos.
Muy interesante el vídeo Cesar, pero le veo varias pegas. En primer lugar, si la dimensión tiene muchos atributos, el lookup puede ser muy pesado y la comprobación de si los registros muy farragosa al tener que escribir mucho código en la expresión de comprobación. Yo suelo utilizar un componente free para generar un hash del registro y comparar el hash....
Correcto el utilizar un Hash es una muy buena idea. Voy a hacer una versión 2 del video con hash. Gracias Ramon, exactamente a eso me refería con que cada quien tiene sus formas de cargar las dimensiones.
En realidad es una pregunta muy general, pero si recomendaría que inicien pensando bien la arquitectura y que no la inventen. Cuando se inicia es muy común hacer “mi versión de BI”. Y a la larga les queda corta de alcance.
Correcto, cada proceso de carga se debe hacer por separado. Ese es un error común, por pereza de hacer más paquetes de SSIS intentan llenarlos de todo. En lo personal yo creo un paquete por tabla que cargo al stage y un paquete por Dimensión, es decir terminó creando fácilmente más de 50-100 SSIS por proyecto.
@@BILATAM gracias porque me has sacado de otra duda yo estaba equivocado entonces yo he estado practicando que en el mismo paquete hacia todo. Otra duda que tengo cuando estas llenando las dimensiones o hechos a traves del ETL como hacer para que no te pase los mismos cada ves que ejecutas ya que si tenemos una tabla con millones de registros tardara mucho en pasar lo mismo y talves en la oltp solo se agregaron 20 registros nuevos. He estado probando con consultas por ejemplo ver el max idproducto y que solo me pase los que sean mayores al max encontrado cuando ejcute la.prinera carga
@@BILATAM ahi esperando a que subas nuevos tutoriales ya que ayudan un monton ya son las 1 de la mañana en mi pais y yo viendo aun los videos porque no me queria salir el de modificar pero ya
Cesar tengo un clavo cuando ejecuto el proyecto si la tabla dimProducto ya tiene los registros me da un error el la division condicional y me envia que el modificar no se puede ejecutar pero en la condicion esta bien no me da error donde el origen de los datos los compara con los de busqueda
Hola, me gustaria hacerte una pregunta, cual es el metodo mas rapido para hacer un delta load? He escuchado que utilizando hash el proceso es mas rapido. Me interesa para la carga de las tablas en un staging area. Y existe una tabla que tiene alrededor de 20 millones de registros. Asi que si podrias por favor hacer un video de como hacer el delta load con hash te estaria mas que agradecida. Aparte nose si se deberia hacer la carga por paquetes? aunque tampoco se como funciona? Crees que podrias hacer por favor un video de esoß perdon por mis faltas ortograficas, no tengo tilde. Saludos
Excelente video. Pero en mi caso no me funciona xq el source el cuál no es local tiene 2millones de records y el componente "database source" sólo lee 475mil records y luego falla con el siguiente error: "[SSIS.Pipeline] Error: SSIS Error Code DTS_E_PRIMEOUTPUTFAILED. The PrimeOutput method on ODBC Denodo Workers FULL Source returned error code 0x80004005. The component returned a failure code when the pipeline engine called PrimeOutput(). The meaning of the failure code is defined by the component, but the error is fatal and the pipeline stopped executing." Sabes a que se debe? e investigado todo el día y no he podido solucionarlo. Saludos desde Costa Rica ☺
Si la transformación es muy grande, lo recomendable es que se haga desde la BD, puede ser un Merge o un simple Insert y update. El SSIS no es tan bueno cuando se trata de volúmenes altos
Claro que si. Eso es parte de las problemáticas que hay que manejar. Por esto mismo muchas estrategias de carga solo insertan en lugar de modificar. Todo depende de la estrategia de carga.
@@BILATAM En cuando al provider instaldo te refieres Componente de flujo para postgree??.. Seria interesante sincronización de tablas con herramientas SSIS ya que se usa dos bases de datos diferentes Mysql y postgreesql ... Y tambien hablar de Data Lake solo si es posible...
Estimado, y que pasa con los que no hacen math , osea si en la tablaA no existe y en la tabla DWtablaA si existe , alli tendria que eliminar, falta esoo
No olviden dejar un like y comenten que más quieren para los nuevos videos. Y claro sus dudas y comentarios.
Un vídeo de estándares y buenas prácticas. Sería genial ambos temas en el canal.
Saludos.
Vamos a trabajar en el entonces!
Eres una de las pocas personas que hacen este tipo de vídeo, usualmente las cosas se van más del lado de programación, pls no nos dejes solos!!
Vamos a seguir con este tipo de videos hasta que tenga fuerzas. De verdad me apasiona mucho el Business Inteligence y vienen cosas nuevas al canal!!
Excelente video señor Oviedo, muy clara la explicación
Muchas gracias por tú tiempo y la pasión que le ponés a tus videos! Disfruto mucho escuchándote y aprendiendo. Soy nueva en este mundo y tu canal me super sirvió. Un saludo desde Argentina! Gracias de nuevo!
Gracias por tomarse el tiempo para comentar, de verdad me alegra mucho poder ayudar y saber que lo que hago le hace bien a la comunidad. Gracias Ivana, un abrazo.
Excelente toda esta serie de DW+BI, estoy empezando en esto y ya tengo lo necesario para ir traveseando un poco, pura vida mae por tomarse el tiempo, ojalá puedas seguir con estos vídeos, bendiciones!!
Muchas gracias por tus enseñanzas he aprendido bastante gracias a ti que Dios te bendiga
Muchas Gracias Cesar, hoy lo puse en practica en mi trabajo y me salió de maravilla, solo le tuve que agregar un converter porque mi origen es oracle y mi destino sql server, pero nada del otro mundo. Muchas Gracias
Genial! De verdad me gista mucho saber que el canal esta ayudando. Graciad por seguir el canal y vamos con todo!!!
Nuchas Gracias , excelente tutorial , claro y conciso.
Muy importante lo que haces, porque la mayoría de los videos son superficiales, pero es muy bueno ver casos reales y problemas que pueden ocurrir a la hora de hacer un poryecto. Me gustaría saber según tu experiencia cuales son los problemas fundamentales a la hora de realizar los ETL, sobre todo a la hora de la carga y la transformación de datos. Gracias por tu aporte.
Muchas gracias Elizabeta, siempre la idea del canal ha sido crear tutoriales y cursos bien prácticos de DW, ahora sobre lo que plantea de problemas comunes a la hora del ETL me suena a hacer un video sobre ello, así que esté atenta al contenido. Gracias.
gracias!!
Lo estuve probando tambien con la funcion Hashbytes para acelerar la busqueda de diferencias en datos existentes
Es magnifico este video, yo realice un ejercicio similar, pero en vez de Ignorar el error , coloque la opción de Redirigir filas a resultados no coincidentes. De esta manera cuando no existen los registros en la dimensión los inserta, de lo contrarios los manda a los existentes y de ahí con una condición le pregunto que si alguno de los registros cambio su valor lo actualice.
Hola Guillermo, disuclpa puedo saber que condicion utilizas para saber si un registro cambio? Y en donde pones la condicion? Disculpa soy muy nueva en esto y estoy aprendiendo. Gracias
Super chévere el curso, muchas gracias, me sirvió un montón!
Desearía que hagas una parte con Analysis Servers y terminar el proceso con azure porque explicas muy bien! y yo soy nueva en todos los temas de BI.
Ver vídeos de ésta calidad son difíciles en TH-cam, pero sé que todo lo he entendido porque cuando me evalúan estoy en lo correcto gracias a sus términos , practicas y la documentación de Microsoft jajaja.
Me encantaría saber más sobre el tema y ya me suscribí.
Saludos desde Colombia. :D
Muy bien video. Tengo dos preguntas y una sugerencia. 1 Se podrían tambien contemplar los deleted? 2 Incremental loading aplicando lookup funciona con tablas grandes, por ejemplo por encima de 10 millones de registros? 3 Me gustaría ver un video de incremental loading aplicando change tracking. Muchas gracias por tus aportes.
Gracias, me ha servido mucho tu vídeo. Buen trabajo.
Mil gracias!!! De verdad es un placer ayudar
excelente, gracias por compartir tu conocimiento
Excelente video, felicitaciones, me ayudó muchisimo
Que bueno ser de ayuda. Saludos Salomón.
Muy bueb video, seria importante tener un video para tecnicas de carga incremental para tablas de hechos
Excelente, gracias me ayudo mucho. Saludos y Felicitaciones
Gracias Elmar!
Excelente explicación, funciono perfecto, muchas gracias.
Gracias Jonathan! Me alegra que le funcione, y a seguir con más.
Excelente forma de explicar, gracias :D
muy buen video , muchas gracias
Hola, de antemano muchas gracias por el esfuerso de transmitir su conocimiento, es muy valioso. Tengo la siguiente pregunta, en el Conditional Split en la parte de modificar hay un error cuando en un campo se compara algun dato que venda nulo ¿Cual es la manera de corregir esto? Gracias
Excelente video, tengo el siguiente escenario, necesito hacer una carga incremental, de una vista pero en la vista no tengo una llave de negocio, no tengo un valor único. Como se haría en ese caso?
buen video maestro
Gracias Javier.
excelente video!!
EXCELENTE VIDEO, una consulta es recomendable usar la TAREA EJECUTAR SQL Y DENTRO DE ELLO USAR TRANSACT CON MERGE INTO PARA HACER CARGAS INCREMENTAL, GRACIAS ANTEMANO
Buenas, que tanto recomiendas usar la tarea de control cdc para hacer la carga incremental, y si has tenido alguna experiencia buena/mala con este task en producción . Gracias.Saludos.
Hola. Muy bueno vídeos. Te quería pedir si puedes agregar vídeos de esta temática del ETL y DW, pero creando un mini proyecto desde cero hasta el datamart y su actualización como si estuviera en producción . Por ejemplo que se reciban datos exportados desde un sistema transaccional a un MS SQL en varias tablas (todos los días 3 a.m.) de una db deposito, el pasaje al staging área (que puede ser la database: DBstaging) donde estan staging de dimensiones o facts, pasar los datos de las tablas staging a las tablas dimensionales y fact definitivas ( que pueden estar en otra database, DWbase) y por ultimo la planificación de todas estas tareas en Jobs de mssql para que todos los dias mssql ejecute los packages y procedimientos almacenados del staging y cargue las dimensiones y facts.
Muy buen vídeo, todo muy claro!
Gracias Rodrigo
Me encanto mil graciasssssssssssssssss
Muy buen video, me sirvio bastante la parte de Agregar los registros nuevo, lo que no entiendo es el por que el ISNULL, osea si el ID es nulo osea vacio los inserta pero no me queda claro en como hace la comparativa entre el id del origen y el del lookup :(
hace una comparacion de origen - destino , si el id de origen isnull en destino es decir si no esta presente , pues lo inserta , para eso usa el lookup para buscar y comparar los id entre ambas tablas
Bro, que buen video, me ayudo mucho. Gracias !!!
Gracias Haroun
Buen día amigo, un favor gigante estoy adentrándome en el mundo de las ETL con visual studio y debo hacer una etl que me lea los registros origen (SQL) y actualice los registros que sufrieron alguna actualización en el Destino (ODBC) , agradezco si me ayudas con una guía o como debo investigar para resolverlo. Muchas gracias.
buen video!
Gracias! Saludos
Muy interesante, y buena explicación!!
Gracias Luis. Espero que le sea de ayuda en sus próximos proyectos de Data Warehouse.
@@BILATAM Deberías hacer un video de los stageng y mejores practicas para esta BD, tengo un excel de documentación de las tablas para creación de un DW, si me indicas un correo te lo puedo proporcionar. Slds
@@BILATAM Pregunta, cuando yo creo la tabla DimProducto, la columna ProductoID que es autoincremental, debe ser Primary Key? Si es correcto, quiere decir que todas las dimensiones debe tener un primary key autoincremental, al igual que el la tabla Fact?. Gracias
Hola, gracias por el ejemplo... pero por qué no usaste mejor un slow update dimensions?
Yo en los proyectos o tablas "pequeños" si uso el Slowly Changing Dimension. Pero siempre es muy discutible el rendimiento de este componente. En el video usé una opción que da mejor rendimiento que el componente SCD.
@@BILATAM es correcto, al usar Slowly Changing Dimension para cargar tablas(Dimensiones) con columnas de tipo atributo variable demora mucho mas que hacerlo con un Lookup. Se recomienda usarlo para tablas que no suelen actualizar sus campos frecuentemente.
P. D.: Excelente vídeo amigo!
Hola César, éste es tu último video del curo DW+BI?
Es que no he tenido tiempo :( pero no en teoría seguimos. Lo siento por cortar el curso así, tengo que retomarlo pronto
Siii, retomalo por favor, está muy bueno... Y me quedé intrigada
En la parte del "Conditional Split" (o antes) ¿no habria una forma de concatenar source y lookup para luego validar esa concatenación o usar un campo calculado de CHECKSUM?
Si correcto, de hecho una forma bastante común de optimizar esta carga es por medio del checksum. Sin embargo al ser este video introductorio al SSIS pues no lo vi como lo mejor para alguien que ir está empezando.
El ejemplo aplica muy bien para una cantidad de registros limitada, para volúmenes grandes de datos un lookup y un update serían demasiado costoso en tiempo y recursos. Sería más óptimo el uso de tablas temporales o hash
Correcto, dependiendo del volumen el SSIS inclusive se queda corto. Más que de acuerdo, voy ha hacer una segunda parte con Hash y alguna otra estrategia de carga para ejemplificar mejor otros escenarios.
Para grandes cantidades de data sí sería pesado, pero recuerde que esto es para cargar una dimensión, la cual normalmente no llegan a crecer demasiado, entonces este método es eficaz y eficiente para la mayoría de las dimensiones de tamaño regular mediano o pequeño.
@@BILATAM espero con ansias ese video
tu vídeo me fue de mucha ayuda sin embargo hay una excepción que necesito manejar en caso de una interrupción forzada durante el proceso de inserción y no tengo un indice durante dicha inserción ya que el origen es un flat file source que luego paso por un script y obtengo los datos para luego insertarlos en su respectiva tabla, algúna idea de como podría sortear ese evento borde en el que se apague el servidor durante la inserción??
de antemano muchas gracias @Business Intelligence LATAM
En el caso de interrumpir el proceso se requiere usar “transaction option” = required. Para agregar transacciones al ETL. Sin embargo lo normal, en procesos de ETL para Data Warehouse que el mismo ETL maneja cómo continuar el proceso a partir de donde falló o incrementalmente.
@@BILATAM Esto tambien funciono muchas gracias, tendrás un tutorial de como configurar correctamente el script task (transformation) con multiples salidas, necesito dividir las columnas que salen de ese script task para insertar dos tablas distintas dentro de la misma base de datos pero si lo hago con el muticast da un error de conexión a base de datos.
Muy interesante el vídeo Cesar, pero le veo varias pegas. En primer lugar, si la dimensión tiene muchos atributos, el lookup puede ser muy pesado y la comprobación de si los registros muy farragosa al tener que escribir mucho código en la expresión de comprobación. Yo suelo utilizar un componente free para generar un hash del registro y comparar el hash....
Correcto el utilizar un Hash es una muy buena idea. Voy a hacer una versión 2 del video con hash. Gracias Ramon, exactamente a eso me refería con que cada quien tiene sus formas de cargar las dimensiones.
Hola me puedo comunicar contigo para preguntarte algo sobre utilizar hash?
Cesar una consulta queremos hacer na arquitectura de business inteligence a una farmacia de medicamentos como podriamos implementarla
En realidad es una pregunta muy general, pero si recomendaría que inicien pensando bien la arquitectura y que no la inventen. Cuando se inicia es muy común hacer “mi versión de BI”. Y a la larga les queda corta de alcance.
Una pregunta pero eso solo para una DimProducto si quisieras agregar mas Dimensiones y llenar la tabla de hechos tendrias que hacer separado todo?
Correcto, cada proceso de carga se debe hacer por separado. Ese es un error común, por pereza de hacer más paquetes de SSIS intentan llenarlos de todo. En lo personal yo creo un paquete por tabla que cargo al stage y un paquete por Dimensión, es decir terminó creando fácilmente más de 50-100 SSIS por proyecto.
Se busca que cada paquete de SSIS sea “atómico” es decir que cumpla una única responsabilidad
@@BILATAM gracias porque me has sacado de otra duda yo estaba equivocado entonces yo he estado practicando que en el mismo paquete hacia todo. Otra duda que tengo cuando estas llenando las dimensiones o hechos a traves del ETL como hacer para que no te pase los mismos cada ves que ejecutas ya que si tenemos una tabla con millones de registros tardara mucho en pasar lo mismo y talves en la oltp solo se agregaron 20 registros nuevos. He estado probando con consultas por ejemplo ver el max idproducto y que solo me pase los que sean mayores al max encontrado cuando ejcute la.prinera carga
Un gusto Oscar. Y gracias por seguir el canal! Un abrazo
@@BILATAM ahi esperando a que subas nuevos tutoriales ya que ayudan un monton ya son las 1 de la mañana en mi pais y yo viendo aun los videos porque no me queria salir el de modificar pero ya
Cesar tengo un clavo cuando ejecuto el proyecto si la tabla dimProducto ya tiene los registros me da un error el la division condicional y me envia que el modificar no se puede ejecutar pero en la condicion esta bien no me da error donde el origen de los datos los compara con los de busqueda
Hola, me gustaria hacerte una pregunta, cual es el metodo mas rapido para hacer un delta load? He escuchado que utilizando hash el proceso es mas rapido. Me interesa para la carga de las tablas en un staging area. Y existe una tabla que tiene alrededor de 20 millones de registros. Asi que si podrias por favor hacer un video de como hacer el delta load con hash te estaria mas que agradecida. Aparte nose si se deberia hacer la carga por paquetes? aunque tampoco se como funciona? Crees que podrias hacer por favor un video de esoß
perdon por mis faltas ortograficas, no tengo tilde.
Saludos
Tengo que have un video sobre el tema... no es fácil explicarlo por mensajes. Este será el siguiente en la lista de los videos de Data Warehouse y ETL
@@BILATAM ,muchas gracias. Lo voy a estar esperando con ansias! Saludos cordiales :)
Excelente video. Pero en mi caso no me funciona xq el source el cuál no es local tiene 2millones de records y el componente "database source" sólo lee 475mil records y luego falla con el siguiente error: "[SSIS.Pipeline] Error: SSIS Error Code DTS_E_PRIMEOUTPUTFAILED. The PrimeOutput method on ODBC Denodo Workers FULL Source returned error code 0x80004005. The component returned a failure code when the pipeline engine called PrimeOutput(). The meaning of the failure code is defined by the component, but the error is fatal and the pipeline stopped executing." Sabes a que se debe? e investigado todo el día y no he podido solucionarlo. Saludos desde Costa Rica ☺
Si la transformación es muy grande, lo recomendable es que se haga desde la BD, puede ser un Merge o un simple Insert y update. El SSIS no es tan bueno cuando se trata de volúmenes altos
el update no hace lenta la transaccion ?
Claro que si. Eso es parte de las problemáticas que hay que manejar. Por esto mismo muchas estrategias de carga solo insertan en lugar de modificar. Todo depende de la estrategia de carga.
Hay alguna posibilidad que el destino sea postgreesql.....tengo un cliente que no usa sql server .....
Si, siempre y cuando tenga el provider instalado tanto en la maquina de desarrollo como en el servidor de producción
@@BILATAM En cuando al provider instaldo te refieres Componente de flujo para postgree??.. Seria interesante sincronización de tablas con herramientas SSIS ya que se usa dos bases de datos diferentes Mysql y postgreesql ... Y tambien hablar de Data Lake solo si es posible...
Alguna forma de comunicarse con ustedes ?
Escríbeme al Facebook de Business Intelligence LATAM, y por ahí nos hablamos!
Estimado, y que pasa con los que no hacen math , osea si en la tablaA no existe y en la tabla DWtablaA si existe , alli tendria que eliminar, falta esoo
falto para la tabla de hechos :c
excelente me fue de muchas ayuda gracias