Cognos - Relaciones en el modelo de metadatos
Las relaciones se utilizan para crear consultas sobre varios objetos en un modelo de metadatos. Las relaciones pueden ser bidireccionales y sin crear una relación, los objetos son entidades individuales sin uso en el modelo de metadatos.
Cada objeto del modelo de metadatos se conecta mediante una clave principal o externa en la fuente de datos. Puede crear o eliminar relaciones en el modelo de metadatos para cumplir con los requisitos comerciales.
Hay diferentes relaciones que son posibles, algunas de ellas son:
One to One- Cuando una instancia de un asunto de consulta está relacionada con otra instancia. Por ejemplo: cada cliente tiene una identificación de cliente.
One to Many- Esta relación se produce cuando una instancia del asunto de la consulta se relaciona con varias instancias. Por ejemplo: cada médico tiene muchos pacientes.
Many to Many- Esta relación se produce cuando muchas instancias de un asunto de consulta se relacionan con varias instancias. Por ejemplo: cada paciente tiene muchos médicos.
Concepto de cardinalidad
Se define como el número de filas relacionadas para cada uno de los dos asuntos de consulta. La cardinalidad se utiliza de las siguientes formas:
- Loop Joins en esquema de estrella
- Acceso optimizado a la fuente de datos
- Evite el doble recuento de datos de hechos
Al usar la base de datos relacional como fuente de datos, la cardinalidad se puede definir considerando las siguientes reglas:
- Claves primarias y externas
- Los nombres de los elementos de la consulta de coincidencia representan columnas indexadas de forma única
- Nombres de elementos de consulta coincidentes
Las formas más comunes de definir la cardinalidad es mediante el uso de la clave principal y externa. Para ver la información clave que se importó, haga clic con el botón derecho en el asunto de la consulta → Editar definición. Puede importar relaciones de muchas a muchas, relaciones opcionales y uniones externas desde el origen de datos.
Notación de relaciones en el modelo de metadatos
En Framework Manager, una relación está representada por Merise notation. La primera parte de esta notación representa el tipo de combinación para esta relación.
- 0..1 representa cero o una coincidencia
- 1..1 representa una coincidencia uno a uno
- 0..n representa cero o ninguna coincidencia
- 1..n representa una o más coincidencias
- 1: una combinación interna con todas las filas coincidentes de ambos objetos.
- 0: una combinación externa con todos los objetos de ambos, incluidos los elementos que no coinciden.
Crear o modificar las relaciones
Para crear una relación o combinar objetos relacionados lógicamente que no están unidos en la importación de metadatos. Puede crear manualmente relaciones entre objetos o puede definir automáticamente relaciones entre objetos en función de criterios seleccionados.
Para crear una relación, use la tecla CTRL para seleccionar uno o más elementos de consulta, temas o dimensiones. Luego ve aAction Menu → Create Relationship.
Si se trata de una relación válida, el administrador de Framework desea crear un acceso directo a la relación. Luego puede hacer clic en el botón Aceptar.
Una vez que crea una relación después de la importación de metadatos, también puede modificar la relación o Cardinalidad en el administrador de Framework.
Para editar una relación, haga clic en una relación y desde Action menu → click Edit Definition.
Desde el Relationship Expression tab → Select Query items, Cardinalities and Operators.
Para crear una combinación adicional, vaya a la Relationship Expression tab → New Link and Define New Relationship.
Para probar esta relación, vaya a Relationship SQL tab → rows to be returned → Test.
Haga clic en el botón Aceptar.
Crear un atajo de relación
Un atajo de relación se define como el puntero a una relación existente y para reutilizar la definición de una relación existente. Cuando realiza algún cambio en la relación de origen, se actualizan automáticamente en accesos directos. Los métodos abreviados de relación también se utilizan para resolver relaciones ambiguas entre asuntos de consulta.
Framework Manager le pregunta si desea crear un acceso directo de relación cada vez que crea una relación y ambas condiciones son verdaderas.
- Al menos un extremo de la nueva relación es un atajo.
- Existe una relación entre los objetos originales.
Ir Action Menu → Create Relationship.
Si se trata de una relación válida, Framework Manager desea crear un acceso directo a la relación. Haga clic en SÍ. Aparece una lista de todas las relaciones en las que un extremo es un objeto modelo y el otro extremo es otro objeto modelo o un acceso directo a otro objeto modelo.
Haga clic en Aceptar.
Crear un asunto de consulta
Un asunto de consulta se define como un conjunto de elementos de consulta que tienen una relación inherente. Se puede usar un asunto de consulta para personalizar los datos que recuperan usando un Framework Manager.
Los siguientes son los tipos de asunto de consulta en un Framework Manager:
Data Source Query Subject - Se basan en los metadatos relacionales definidos por las declaraciones SQL y se crean automáticamente para cada tabla y vista cuando importa metadatos al modelo.
Note - El asunto de la consulta del origen de datos hace referencia a los datos de un solo origen de datos a la vez, pero puede editar directamente el SQL que define los datos recuperados para editar el asunto de la consulta.
Model Query Subjects- No se crean directamente a partir de una fuente de datos, sino que se basan en los elementos de consulta definidos en otros asuntos o dimensiones de consulta. Usando el asunto de la consulta del modelo, le permite crear una vista más abstracta y comercial de la fuente de datos.
Stored Procedure Query Subjects- Se crean cuando se importa un procedimiento desde una fuente de datos relacionales. IBM Cognos Framework Manager solo admite procedimientos almacenados definidos por el usuario y los procedimientos almacenados del sistema no son compatibles.
¿Cómo crear un asunto de consulta de fuente de datos?
Desde Actions Menu → Create → Query Subject.
Ingrese el nombre de un nuevo asunto de consulta.
Haga clic en Data Source → OK to open new Query Subject wizard.
Siga los pasos hasta que aparezca el botón Finalizar → Finalizar
Clic derecho en Query Subject → Edit Definition. Clickea en elSQL tab → Available database objects box, drag objects to the SQL box.
También puede insertar una referencia de fuente de datos, insertar una macro, incrustar un cálculo e incrustar un filtro.
Seleccione las acciones de la lista y haga clic en Aceptar.
Propósito | Acción |
---|---|
Control de granularidad | Pestaña Determinantes |
Para probar el asunto de la consulta | Pestaña de prueba |
Para ver SQL | Ficha Información de consulta |
Para ver las tablas del sistema desde la fuente de datos | Casilla de verificación Mostrar objetos del sistema |
Editar SQL
Cuando edita cualquier fuente de base de datos de Relation, crea o consulta una base de datos de Relation, entonces SQL se usa en segundo plano. Puede utilizar las siguientes opciones:
- Cognos SQL
- SQL nativo
- Pasar por SQL
Para editar SQL del asunto de la consulta del modelo, copie el SQL de la pestaña Información de la consulta y péguelo en el asunto de la consulta de la nueva fuente de datos. Es posible convertir un asunto de consulta modelo en asunto de consulta de fuente de datos.
- Haga clic en Asunto de consulta de fuente de datos y Action menu → Edit Definition.
- Haga clic en el botón SQL, arrastre los objetos o escriba el SQL que desee.
- Haga clic en Aceptar.
Cambiar tipo de SQL
Puede seleccionar el tipo de SQL que se utilizará cuando defina el asunto de la consulta del origen de datos. Estos factores deben tenerse en cuenta al considerar el tipo de SQL:
Tipo de SQL | Ventaja | Desventaja |
---|---|---|
Cognos SQL | Desempeño mejorado Trabajar en todas las bases de datos compatibles |
SQL no estándar no compatible |
SQL nativo | Rendimiento optimizado Específico de la base de datos |
SQL no funciona en una base de datos diferente. No puede usar SQL que la fuente de datos no admite para subconsultas. |
Pasar a través de SQL | Cualquier SQL compatible con la base de datos | Sin opción para Framework Gerente para optimizar rendimiento automáticamente |
También tenga en cuenta que no es posible cambiar el tipo de SQL para los asuntos de consulta según las fuentes de datos OLAP.
Para cambiar el tipo de SQL, vaya al asunto de la consulta que desea cambiar.
Ir Actions menu → Edit Definition and go to Query Information button.
Ir Options → SQL Settings tab.
Para cambiar el tipo de SQL, haga clic en Lista de tipos de SQL. Luego, haga clic en Aceptar.