Regístrate Ahora

Accede a mis informes sobre problemas del día a día con SQL Server. Ya está disponible la "Guía y consejos para rendir la certificación 70-461 Querying Microsoft SQL Server 2012". Sólo para suscriptores.
.

1 de jun. de 2011

Libro Microsoft Business Intelligence: vea el cubo medio lleno

Ya está disponible para descarga mi nuevo libro
Microsoft Business Intelligence: vea el cubo medio lleno

image

Quiero agradecer a mi empresa, SolidQ, que me haya permitido dedicar tiempo a la escritura de este libro, y que haya atendido sin dudarlo mi petición de que dicho ebook sea gratuito, para así poder compartir mis conocimientos con un mayor número de lectores.

Espero que os resulte interesante, y os pido que me hagáis llegar vuestro feedback para intentar mejorar el material expuesto.

Para descargar el libro pincha aquí o sobre la imagen del libro.

25 comentarios:

Ana Maria dijo...

Muchas gracias Salva. Sin dudas este libro es un enorme regalo.
Eres muy generoso con tus conocimientos y tu tiempo.
Lo he descargado y empiezo a estudiarlo ya mismo.
Otra vez, Gracias !!!!

Víctor M. Sánchez García dijo...

Que grande! Muchas gracias por el esfuerzo
Gracias y saludos

Jesica dijo...

Excelente libro! Muy claro. Les hago una consulta se puede hacer una conexion SFTP con SSIS ??? Gracias!

Salvador Ramos dijo...

Gracias Jesica,
Me alegro que te esté gustando el libro :)

Sí que se puede, pero no hay un componente que venga con SSIS que lo haga. Tienes dos opciones, adquirir un componente de terceros e integrarlo en SSIS o utilizar un ejecutable que permita usar STFP (incluso los hay open source), hacer un .bat o un script vb que lo use y llamarlo desde SSIS utilizando un Process Task.

No te puedo recomendar ninguno ya que no los he probado, pero si buscas en internet "SSIS SFTP" obtendrás diversas respuestas en los foros hablando de componentes de terceros y de cómo usar un .exe desde un Proccess Task

Un saludo
Salvador Ramos

Carlos dijo...

muchas gracias Salvador por compartir estos textos me ayudan mucho a entender SSIS :). y su funcionalidad

Solo una consulta los cursos a los que se refiere que van ligados veo que se imparten en Online mi duda es si son en español si es asi de casualidad sabras las proximas fechas de apertura de estos cursos y los costos ya que soy de Mexico y creo que por el momento seria la unica forma que podria aprender un poco mas de SSIS, de antemano agradezco tu atencion.

Salvador Ramos dijo...

Hola Carlos,

Los cursos a los que hago referencia en el libro, por ahora sólo se imparten presenciales, aunque estamos preparando una plataforma para impartirlos online (aún no tenemos fechas para su arranque). También comentarte que tenemos subsidiaria en México con excelentes profesionales y que allí se podrían impartir de forma presencial. Jesús Gil (MVP en SQL Server y ponente habitual en eventos de Microsoft) es nuestro director de operaciones, lo puedes seguir en twitter @jesus_gilv

Salvador Ramos dijo...

Holar Carlos,

Efectivamente los cursos se pueden impartir en español, de hecho yo los imparto en español. Aunque el material utilizado (slides y labs) está en inglés, pero esto no tiene mayor dificultad, incluso es conveniente que el alumno se familiarice con los términos en inglés ya que luego serán los que busque por internet y los que aparecen en cualquier libro (ya que no hay material en español).

Un saludo
Salvador Ramos

Carlos dijo...

Muchas gracias salvador por la info :) un favor mas me podrias pasar el link o en donde puedo ver para inscribirme a estos cursos para tomarlos por que si me apasiono mucho el tema de SSIS y me gustaria aprender mas de este tema.

Salvador Ramos dijo...

Claro que si,

Estos son los cursos de SSIS, allí tienes links para solicitar información:
http://www.solidq.com/squ/courses/Pages/SQL%20Server%202005%20and%202008%20Integration%20Services%20End-to-End.aspx
http://www.solidq.com/squ/courses/Pages/Enterprise%20ETL%20with%20SQL%20Server%20Integration%20Services%202005%20and%202008.aspx

Y este el del catálogo general de cursos que ofrecemos:
http://www.solidq.com/squ/courses/Pages/Home.aspx
en SolidQ University:
http://www.solidq.com/squ/Pages/Main.aspx

Muchas gracias

Saludos
Salvador Ramos

rvgfox dijo...

Muchas Gracias Salvador por tus fantasticos aportes.

Me permitiría hacerte una pequeña consulta que igual genera algo de debate.

Estoy en proyecto de DW y diseñando la dimensión cliente, me encuentro con que hay ciertos campos del tipo codigo/descripcion que pongo en la dimensión (huyendo del modelo snowflake y adoptando el star) pero veo que me puedo encontrar situaciones en las que estas descripciones sean modificadas en el OLTP.

En este caso deberia proceder a actualizar los registros existentes en la dimensión ya que la carga de la misma la hago de forma incremental para controlar las SCD de tipo 2.

En tu experiencia, ¿cual es la mejor forma de proceder?

Saludos
Ramón

Salvador Ramos dijo...

Hola Ramón,

En una misma dimensión es muy habitual que haya atributos que tratemos como SCD tipo 1 (sobreescritura) y otros como SCD tipo 2 (historial de cambios).

Entiendo que tu pregunta es, si se actualiza un atributo que tratamos como SCD 1, que hago con todas las filas del historial para esa Business Key, ¿las sobreescribo todas o sólo la última? pues sinceramente, es un tema a hablar con los usuarios de negocio, depende de ellos no es una decisión técnica. Desde el punto de vista técnico, en un caso la condición WHERE del Update será por la Business Key y en otro por la Subrogate Key.

Igual no entendí bien, por favor si esto no responde a tu duda, hazmelo saber.

Un saludo
Salvador Ramos

rvgfox dijo...

No me refiero, por ejemplo a un par de campos como pueden ser el código y la descripción que pueden ser de tipo SCD1 o SCD2 y cambia la descripción pero no el código.

Te pongo un ejemplo. Imagina en la dimensión cliente dos campos:

CodGrupo: 03
Grupo: CLIENTES HOSTELERIA

Tenemos por ejemplo unos 2.000 clientes con esos valores ya cargados.

En la siguiente carga incremental, me viene un registro de cliente con:

CodGrupo: 03
Grupo: CLIENTES HORECA

Como ves el caso es independiente de si el CodGrupo lo trato como SCD1 o SCD2 (entiendo que la descripción Grupo siempre seria SCD1).

El tema es ¿que hago con los registros anteriores? ¿Les modifico el campo Grupo a 'CLIENTES HORECA'?

Entiendo que si porque si no las jerarquías que tenga creadas en SSAS me darán problemas...

Esto creo que es el "gran problema" del modelado en estrella.

¿como lo ves?

Ramón.

Salvador Ramos dijo...

Hola Ramón,

El que sea SCD 1 o 2, es algo que debes de estudiar con el usuario de negocio y decidir, todo depende de lo que necesite. Si quiere saber en qué periodo de tiempo se llamó de una forma y de otra y que le aparezcan los dos nombres, pues SCD 2, si quiere que se borre el rastro del nombre antiguo, SCD 1.

En cuanto al "gran problema" que citas, yo no lo veo tal, la diferencia es que en un snowflake actualizarías una sola fila y aquí tienes que actualizar todas las filas que haya cambiado esa descripción de grupo. Además son cosas puntuales. Y no tiene la mayor importancia si están contempladas en tu ETL. Además, lo habitual es que no afecte a un gran número de filas (imaginate que sean 100.000, eso supone una update que tarde menos de un minuto, que no creo que sea significativo para tu ETL).

Si es SCD 1 y tienes otras columnas SCD 2 puede que haya varias versiones de un clientes. Si es ahí donde tienes dudas de si cambiarlo para todas las versiones de cada cliente, te remito a mi respuesta anterior: tienes que transmitirlo al usuario de negocio y ver qué le interesa (la solución técnica es igual de simple en ambos casos como te comenté en la respuesta anterior).

Saludos
Salvador Ramos

rvgfox dijo...

Gracias Salvador.

Tu respuesta confirma mis dudas, por lo que creo que lo mejor será preparar algo "standard" y reutilizable para actualizar este tipo de situaciones codigo/descripcion, manteniendo por tanto el modelo en estrella.

Estoy preparando algo para hacerlo automáticamente para todas las dimensiones y todos los campos afectados ya que incluir y mantener las diferentes updates en el ETL de SSIS me parece engorroso ya que, por ejemplo sólo para la dimensión cliente, tengo 15 campos de este tipo...

Ramón

Salvador Ramos dijo...

Hola Ramón,

Lo que suelo hacer es identificar si hay en esa fila alguna columna con cambios tipo 2, si no los hay compruebo si esa fila tiene alguna columna cambios de tipo 1. En cualquiera de esos casos le doy el tratamiento adecuado, y si no hay ninguno de ellos no hago nada.

Hay varias formas de simplificarlo, pero eso se extiende demasiado y necesita imágenes, con lo que se sale de ámbito de los comentarios de un blog. Espero que estas indicaciones te ayuden.

Saludos
Salvador Ramos

rvgfox dijo...

Gracias Salvador.

Al final me he decidido por mantener el modelo en estrella y actualizar los campos de descripción mediante un proceso que he automatizado.

Me gustaría saber tu opinión sobre el mismo.

Tienes los detalles en:

http://bit.ly/StarVsSnowflake

Ramón.

Yuri Jose dijo...

Hola Salvador, ante todo mil gracias por este buen libro que esta explicado detalladamente, ahora como puedo obtener los videos que hacen referencia en tu libroo......

Saludos...
Yuri Pando..

salvador ramos dijo...

Hola Yuri Jose,

No recuerdo que citase los videos que indicas. ¿Me puedes indicar la página donde los cito?

Saludos
Salvador Ramos

Agustin Mota dijo...

Salvador, tendrás algún libro similar pero de Reporting Services?

salvador ramos dijo...

No, a día de hoy no conozco ningún libro en español sobre Reporting Services.

Saludos
Salvador Ramos

Jesús Yustas Romo dijo...

Buenas tardes Salvador:

Estoy intentándome bajar tu libro sin éxito. ¿Algún consejo o ayuda?

Muchas gracias y un cordial saludo.

Jesús Yustas

Jesús Yustas Romo dijo...

Buenas tardes Salvador:

Estoy intentado descargar tu libro sin éxito. ¿Algún consejo o ayuda?

Muchas gracias y un cordial saludo.

Jesús Yustas

bellako dijo...

salvador no puedo descargar tu libro.. me puedes ayudar mi correo es (christianptaarenas@gmail.com)

salvador ramos dijo...

Hola,

Hubo un problema puntual con el enlace, ya está solucionado.
Disculpad las molestias

Saludos
Salvador Ramos

Rodger Gutierrez dijo...

Hola

trate de descargarlo pero hubo en error la pagina no fue encontrada.

saludos

Google