none
Jerarquia multiples Padre e Hijos RRS feed

  • Pregunta

  • Estimados soy nuevo en esto del mundo de OLAP y quiero saber si alguien me podria dar un ayudita de como puedo resolver una jerarquia de multiples Padre e Hijos.
    lunes, 11 de mayo de 2009 14:41

Respuestas

  • Ese ya es un escenario distinto, ahi necesitarías además implementar una relación de muchos a muchos creando una tabla intermedia (donde tengas la relación entre empleado y sus jefes) y usar esa tabla para unir los Facts a tu dimensión Empleado.

    Alan Koo
    http://alan-koo.blogspot.com
    • Propuesto como respuesta Alan Koo jueves, 28 de mayo de 2009 14:55
    • Marcado como respuesta Alan Koo jueves, 2 de julio de 2009 19:44
    lunes, 11 de mayo de 2009 18:59

Todas las respuestas

  • Dos opciones,

    1) Crear tu tabla con la relación del padre hacia la misma tabla.

    Ejem:

    EmpID | Nombre | JefeID

    En este caso el JefeID es un EmpID. En este caso Analysis Services detecta este tipo de relación como Parent-Child y te creará una "pseudo" jeraquía para esto (ya que existe sólo un atributo que es el empleado)

    Pro: Puedes manejar N niveles de profundidad de tu jerarquía
    Contra: Las mejores practicas de SSAS recomiendan usar al mínimo este tipo de relaciones por el tema de performance. Ya que SSAS no sabe el número de niveles, no puede crear agregaciones para mejorar los tiempos de respuesta de tus consultas.

    2) Crear tu tabla con la relación denormalizada

    EmpID | Nombre | Jefe

    En este caso el Jefe (que es un empleado) estaría denormalizado incluyendo ya el nombre del Jefe (resolviendo el JOIN entre EmpID y JefeID en tu Data Source View o en tu base de datos). SSAS vería a esto como 2 atributos por separado (empleado y jefe) y puede crear una jerarquía usando ambos atributos.

    Pro: Permite la creación de agregaciones por tanto mejores tiempos de respuesta
    Contra: El número de niveles de la jerarquía estaría fijo. Esto no es un problema, si se conoce el número de niveles que tiene la jerarquía o se maneja con la propiedad HideMemberIf del atributo dentro de la jerarquía.

    En mi caso te recomiendo la segunda opción mientras te sea posible.

    Saludos,

    Alan Koo


    http://alan-koo.blogspot.com
    lunes, 11 de mayo de 2009 15:42
  • Como manejo cuando un empleado tienes más de un jefe?

    lunes, 11 de mayo de 2009 17:25
  • Ese ya es un escenario distinto, ahi necesitarías además implementar una relación de muchos a muchos creando una tabla intermedia (donde tengas la relación entre empleado y sus jefes) y usar esa tabla para unir los Facts a tu dimensión Empleado.

    Alan Koo
    http://alan-koo.blogspot.com
    • Propuesto como respuesta Alan Koo jueves, 28 de mayo de 2009 14:55
    • Marcado como respuesta Alan Koo jueves, 2 de julio de 2009 19:44
    lunes, 11 de mayo de 2009 18:59