Sie sind auf Seite 1von 15

INTRODUCCIÓN A MDX

• En teoría de bases de datos, un cubo OLAP es una


representación abstracta de la proyección de una relación
de un RDBMS (Sistema administrador de bases de datos
relacionales). Dada una relación de orden N, se
considera la posibilidad de una proyección que dispone
de los campos X, Y, Z como clave de la relación y de W
como atributo residual. Categorizando esto como una
función se tiene que:
• W : (X,Y,Z) → W
• Los atributos X, Y, Z se corresponden con los ejes del cubo,
mientras que el valor de W devuelto por cada tripleta (X, Y, Z)
se corresponde con el dato o elemento que se rellena en cada
celda del cubo.
• Debido a que los dispositivos de salida (monitores, impresoras,
...) sólo cuentan con dos dimensiones, no pueden caracterizar
fácilmente cuatro dimensiones, es más práctico proyectar
"rebanadas" o secciones de los datos del cubo (se dice
proyectar en el sentido clásico vector analítico de reducción
dimensional, no en el sentido de SQL, aunque los dos
conceptos son claramente análogos), tales como la expresión:
• W : (X,Y) → W
• Aunque no se conserve la clave del cubo (al faltar el parámetro
Z), puede tener algún significado semántico, sin embargo,
también puede que una sección de la representación funcional
con tres parámetros para un determinado valor de Z también
resulte de interés.
• La motivación que hay tras OLAP vuelve a mostrar de nuevo el paradigma de los
informes de tablas cruzadas de los sistema de gestión de base de datos de los
80. Se puede desear una visualización al estilo de una hoja de cálculo, donde los
valores de X se encuentran en la fila $1, los valores de Y aparecen en la columna
$A, y los valores de W: (X,Y) → W se encuentran en las celdas individuales a
partir de la celda $B2 y desde ahí, hacia abajo y hacia la derecha. Si bien se
puede utilizar el Lenguaje de Manipulación de Datos (o DML) de SQL para
mostrar las tuplas (X,Y,W), este formato de salida no es tan deseable como la
alternativa de tablas cruzadas. El primer método requiere que se realice una
búsqueda lineal para cada par (X,Y) dado, para determinar el correspondiente
valor de W, mientras que el segundo permite realizar una búsqueda más
convenientemente permitiendo localizar el valor W en la intersección de la
columna X apropiada con la fila Y correspondiente.
• Se ha desarrollado el lenguaje MDX (MultiDimensional eXpressions o
expresiones multidimensionales) para poder expresar problemas OLAP de
forma fácil. Aunque es posible traducir algunas sus sentencias a SQL tradicional,
con frecuencia se requieren expresiones SQL poco claras incluso para las
sentencias más simples del MDX. Este lenguaje ha sido acogido por la gran
mayoría de los proveedores de OLAP y se ha convertido en norma de hecho para
estos sistemas.
MDX DEFINICION
• Se ha desarrollado el lenguaje MDX (MultiDimensional
eXpressions o expresiones multidimensionales) para poder
expresar problemas OLAP de forma fácil. Aunque es posible
traducir algunas sus sentencias a SQL tradicional, con
frecuencia se requieren expresiones SQL poco claras incluso
para las sentencias más simples del MDX. Este lenguaje ha
sido acogido por la gran mayoría de los proveedores de OLAP
y se ha convertido en norma de hecho para estos sistemas.
• MDX, un acrónimo de Multi Dimensional Expressions, es una
sintaxis que sostiene la elaboración y manipulación de objetos
multidimensionales y datos. MDX es similar en muchos
aspectos al Lenguaje de consulta estructurado (SQL) sintaxis,
pero no es una extensión del lenguaje SQL, de hecho, algunas
de las funciones que se suministra por MDX se pueden
suministrar, aunque no tan eficiente o por intuición, por SQL.
• Al igual que con una consulta SQL, cada consulta MDX
requiere una solicitud de datos (la cláusula SELECT), un
punto de partida (la cláusula FROM), y un filtro (la
cláusula WHERE). Estas y otras palabras clave ofrecer
las herramientas utilizadas para extraer partes
específicas de los datos de un cubo para su análisis.
MDX también suministra un robusto conjunto de
funciones para la manipulación de los datos recuperados,
así como la capacidad de extender MDX con funciones
definidas por el usuario.
• MDX, como SQL, proporciona el lenguaje de definición de
datos (DDL) para la gestión de la sintaxis de las estructuras de
datos. Hay comandos MDX para crear (y borrar) cubos,
dimensiones, medidas, y sus objetos subordinados.
• Puede crear medidas o miembros de una dimensión
personalizados, denominados miembros calculados,
combinando datos del cubo, operadores aritméticos, números
y funciones. Por ejemplo, puede crear un miembro calculado
denominado Euros que convierta dólares en euros
multiplicando una medida de dólar existente por una tasa de
cambio. De esta manera, se puede mostrar a los usuarios
finales el valor en euros en una fila o una columna
independiente.
• Las definiciones de los miembros calculados se almacenan,
pero sus valores solo existen en la memoria. En el ejemplo
anterior, los usuarios finales ven los valores en euros, pero
éstos no se almacenan como datos del cubo.
Los miembros calculados se crean en cubos. Para crear un
miembro calculado, en el Diseñador de cubos, en la
pestaña Cálculos, haga clic en el icono de Nuevo miembro
calculado de la barra de herramientas. Este comando abre
un formulario para especificar las siguientes opciones para
el miembro calculado:
Nombre
• Seleccione el nombre del miembro calculado. Este
nombre aparece como encabezado de columna o de fila
de los valores de miembros calculados cuando los
usuarios finales examinan el cubo.
Jerarquía primaria
• Seleccione la jerarquía primaria que se incluirá en el miembro calculado. Las jerarquías son
categorías descriptivas de una dimensión mediante las cuales se pueden separar los datos
numéricos (es decir, las medidas) de un cubo para su análisis. En los exploradores
tabulares, las jerarquías proporcionan los encabezados de columna y de fila que se
muestran a los usuarios finales cuando examinan los datos de un cubo. (En los exploradores
gráficos, proporcionan otros tipos de etiquetas descriptivas pero tienen la misma función que
en los exploradores tabulares). Un miembro calculado proporciona un nuevo encabezado (o
etiqueta) en la dimensión primaria que seleccione.
• Otra posibilidad es incluir el miembro calculado en las medidas, en vez de una dimensión.
Esta opción también proporciona un nuevo encabezado de columna o de fila pero, en el
explorador, se adjunta a las medidas.
Miembro primario
• Haga clic en Cambiar para seleccionar un miembro primario para incluir el miembro
calculado. Esta opción no está disponible si selecciona una jerarquía de un solo nivel o
MEASURES como dimensión primaria.
• Las jerarquías se dividen en niveles que contienen miembros. Cada miembro produce un
encabezado. Mientras examinan los datos de un cubo, los usuarios finales pueden obtener
detalles de un encabezado seleccionado a cualquier encabezado subordinado que no se
haya mostrado previamente. El encabezado del miembro calculado se agrega al nivel
inmediatamente inferior del miembro primario que haya seleccionado.
Expresión
Especifique la expresión que produce los valores del
miembro calculado. Esta expresión puede escribirse en
expresiones multidimensionales (MDX). La expresión
puede contener cualquiera de los elementos siguientes:
• Expresiones de datos que representan los componentes
del cubo, como dimensiones, niveles, medidas, etc.
• Operadores aritméticos
• Números
• Funciones
Puede arrastrar o copiar componentes del cubo desde la
pestaña Metadatos del panel Herramientas de cálculo,
para agregarlos rápidamente
Importante
a una expresión.
Cualquier miembro calculado que vaya a utilizarse en la expresión de
valor de otro miembro calculado debe crearse antes que el miembro
calculado que va a utilizarlo.
• Cadena de formato
• Visible
• Comportamiento si no está vacío
• Expresiones de color
• Expresiones de fuente
Miembros calculados

• Un miembro calculado es un miembro cuyo valor se calcula en


tiempo de ejecución mediante una expresión MDX
(Expresiones multidimensionales) que se especifica al definir el
miembro calculado. Los miembros calculados están
disponibles para las aplicaciones de Business Intelligence del
mismo modo que los demás miembros. Los miembros
calculados no aumentan el tamaño del cubo porque en el
mismo solamente se almacenan las definiciones; los valores
se calculan en la memoria cuando son necesarios para
responder a una consulta.


([Measures].[Price_to_Ship] - [Measures].[Cost_to_Ship]) /
[Measures].[Volume_in_Cubic_Meters]
Conjuntos con nombre

• Un conjunto con nombre es una expresión de instrucción


MDX CREATE SET que devuelve un conjunto. La
expresión MDX se guarda como parte de la definición de
un cubo en Microsoft SQL Server Analysis Services. Un
conjunto con nombre se crea para reutilizarse en
consultas MDX (Expresiones Multidimensionales). Un
conjunto con nombre permite a los usuarios corporativos
simplificar las consultas y usar un nombre de conjunto en
lugar de una expresión de conjunto para expresiones de
conjunto complejas utilizadas con frecuencia. Tema
relacionado: Crear conjuntos con nombre
Comandos de script
• Un comando de script es un script MDX, incluido como parte de la definición del
cubo. Los comandos de script permiten realizar prácticamente cualquier acción
admitida por MDX en un cubo, como asignar un ámbito a un cálculo que
solamente se aplique a parte del cubo. En SQL Server Analysis Services, los
scripts MDX se pueden aplicar a todo el cubo o a determinadas secciones del
mismo, en puntos específicos a lo largo de la ejecución del script. El comando de
script predeterminado, que es la instrucción CALCULATE, rellena las celdas del
cubo con datos agregados según el ámbito predeterminado.
• El ámbito predeterminado es todo el cubo, pero puede definir un ámbito más
restringido, denominado subcubo, y aplicar un script MDX solamente a dicho
espacio de cubo. La instrucción SCOPE define el ámbito de todas las
instrucciones y expresiones MDX posteriores en el script de cálculo hasta que
finaliza o se vuelve a definir el ámbito. La instrucción THIS se utiliza para aplicar
una expresión MDX al ámbito actual. Puede utilizar la instrucción BACK_COLOR
para especificar el color de fondo de celda de las celdas del ámbito actual, para
ayudarle durante la depuración.
• Por ejemplo, puede utilizar un comando de script para asignar cuotas de venta a
los empleados a lo largo del tiempo y el territorio de ventas según los valores
ponderados de las ventas de un período de tiempo anterior.

Das könnte Ihnen auch gefallen