SAP Vista analítica de HANA: Cómo crearla y usarla

⚡ Resumen inteligente

SAP HANA Analytic View modela los datos como un esquema de estrella, uniendo una tabla de hechos central a vistas de atributos para que los datos de transacciones se puedan agregar sobre la marcha para análisis multidimensionales dentro SAP Estudio HANA.

  • 🔘 Estructura: En el centro se encuentra una tabla de hechos que contiene datos de transacciones, rodeada de tablas de dimensiones y vistas de atributos reutilizables.
  • ☑️ nodos: Datos Foundation contiene las tablas de hechos, Star Join adjunta las vistas de atributos y Semantics define la salida.
  • ✅ medidas: En la base de datos pueden existir varias tablas, pero solo se pueden seleccionar medidas de una de ellas.
  • 🧪 Ejemplo: Las vistas PURCHASE_ORDER y PURCHASE_DETAIL se unen mediante PO_NUMBER, y la vista de atributo AT_PRODUCT se une mediante PRODUCT_ID.
  • 🛠️ Activación: La validación y la activación publican la vista como una vista de columna en el esquema _SYS_BIC para la generación de informes.
  • 📈 Dirección: Las vistas analíticas están obsoletas, por lo que los nuevos modelos de estilo cubo deben utilizarse en vistas de cálculo gráfico.

Modelado de esquema de estrella de vista analítica en SAP HANA

¿Qué es una vista analítica en SAP ¿HANA?

Una visión analítica en SAP HANA se basa en un esquema de estrella y representa un objeto de modelado OLAP (multidimensional). Forma una estructura cúbica que se utiliza para analizar datos y se adapta a cualquier escenario donde se necesiten datos agregados de las tablas subyacentes.

En la vista analítica, las tablas de dimensiones se unen a la tabla de hechos que contiene los datos de las transacciones. Una tabla de dimensiones contiene datos descriptivos como el producto, el nombre del producto, el proveedor o el cliente. Una tabla de hechos contiene datos descriptivos junto con datos cuantificables como el importe y los impuestos.

Debido a que la agregación se realiza en memoria en el momento de la consulta, no es necesario almacenar tablas agregadas. La vista se define una sola vez en SAP Modelado HANA y reutilizado por cada informe que lo lee.

Ejemplo de SAP Vista analítica de HANA

Aquí se crea una vista analítica para una orden de compra, basada en la vista de atributo “AT_PRODUCT” se creó anteriormente. Las tablas Encabezado de la Orden de Compra y Detalle de la Orden de Compra proporcionan los datos de la transacción.

Ejecute ambos scripts a continuación en el SQL consola de SAP Estudio Hana antes de que comiencen los pasos de modelado.

Script SQL para crear la tabla “PURCHASE_ORDER” en “DHK_SCHEMA”

CREATE COLUMN TABLE "DHK_SCHEMA"."PURCHASE_ORDER"					
(		
PO_NUMBER NVARCHAR(10) primary key,							
COMPANY NVARCHAR (4),			
PO_CATEGORY NVARCHAR(2),			
PRODUCT_ID NVARCHAR(10),			
VENDOR NVARCHAR(10),			
TERMS NVARCHAR(4),			
PUR_ORG NVARCHAR(4),			
PUR_GRP NVARCHAR(3),			
CURRENCY NVARCHAR(5),			
QUOTATION_NO NVARCHAR(10),			
PO_STATUS VARCHAR(1),			
CREATED_BY NVARCHAR(20),			
CREATED_AT DATE		
);		

INSERT	INTO "DHK_SCHEMA"."PURCHASE_ORDER" VALUES(1000001,1000,'MM','A0001','V000001','CASH' ,1000,'GR1','INR',1000011,'A','HANAUSER','2016-01-07');																													
INSERT INTO "DHK_SCHEMA"."PURCHASE_ORDER" VALUES(1000002,2000,'MM','A0002','V000001','CASH',1000,'GR1','INR',1000012,'A','HANAUSER','2016-01-06');																			
INSERT INTO "DHK_SCHEMA"."PURCHASE_ORDER" VALUES(1000003,2000,'MM','A0003','V000001','CASH',1000,'GR1','INR',1000013,'A','HANAUSER','2016-01-07');																			
INSERT INTO "DHK_SCHEMA"."PURCHASE_ORDER" VALUES(1000004,2000,'MM','A0004','V000001','CASH',1000,'GR1','INR',1000014,'A','HANAUSER','2016-01-07');

Script SQL para crear la tabla “PURCHASE_DETAIL” en “DHK_SCHEMA”.

CREATE	 COLUMN TABLE "DHK_SCHEMA"."PURCHASE_DETAIL"					
(		
PO_NUMBER NVARCHAR(10) primary key,							
COMPANY NVARCHAR(4),			
PO_CATEGORY NVARCHAR(2),			
PRODUCT_ID NVARCHAR(10),			
PLANT NVARCHAR(4),			
STORAGE_LOC NVARCHAR(4),			
VENDOR NVARCHAR(10),			
TERMS NVARCHAR(4),			
PUR_ORG NVARCHAR(4),			
PUR_GRP NVARCHAR(3),			
CURRENCY NVARCHAR(5),			
QUANTITY SMALLINT,			
QUANTITY_UNIT VARCHAR(4),			
ORDER_PRICE DECIMAL(8,2),			
NET_AMOUNT DECIMAL(8,2),			
GROSS_AMOUNT DECIMAL(8,2),			
TAX_AMOUNT DECIMAL(8,2)			
);		


INSERT	INTO "DHK_SCHEMA"."PURCHASE_DETAIL"	VALUES(1000001,1000,'MM','A0001',1001,101,
'V000001','CASH',1000,'GR1','INR',10,'UNIT',50000.00,40000.00,50000.00,10000.00);																									
INSERT	INTO "DHK_SCHEMA"."PURCHASE_DETAIL"	VALUES(1000002,2000,'MM','A0002',1002,102,
'V000002','CASH',1000,'GR1','INR',10,'UNIT',60000.00,48000.00,60000.00,12000.00);																									
INSERT	INTO "DHK_SCHEMA"."PURCHASE_DETAIL"	VALUES(1000003,2000,'MM','A0003',1003,103,
'V000001','CASH',1000,'GR1','INR',20,'UNIT',40000.00,32000.00,40000.00,8000.00);																									
INSERT	INTO "DHK_SCHEMA"."PURCHASE_DETAIL"	VALUES(1000004,2000,'MM','A0004',1004,104,
'V000002','CASH',1000,'GR1','INR',20,'UNIT',20000.00,16000.00,20000.00,4000.00);																	

Los dos scripts crean las tablas “PURCHASE_ORDER” y “PURCHASE_DETAIL” junto con sus datos.

Cómo crear una vista analítica en SAP HANA

A continuación, se crea una vista analítica denominada “AN_PURCHASE_ORDERS” a partir de la vista de atributos “AT_PRODUCT” y las tablas “PURCHASE_ORDER” y “PURCHASE_DETAIL”. Los diez pasos siguen el orden de las pantallas del editor.

Paso 1) Cree una nueva vista analítica a partir del árbol de paquetes que se muestra a continuación.

  1. Seleccione el subpaquete Modelling dentro del paquete DHK_SCHEMA.
  2. Haz clic con el botón derecho y elige Nuevo.
  3. Seleccione la opción Vista analítica.

Nueva opción de vista analítica en el subpaquete de modelado en SAP Estudio Hana

Paso 2) Se abre el editor de vista de información para la vista analítica. Complete el cuadro de diálogo de creación que se muestra a continuación.

  1. Introduzca el nombre de la vista analítica “AN_PURCHASE_ORDERS” y una etiqueta para la misma.
  2. Seleccione el tipo de vista “Vista analítica”.

Diálogo de creación de vista analítica con el nombre AN_PURCHASE_ORDERS y tipo de vista

Una vez que haya completado los datos, haga clic en el botón Finalizar. A continuación, se mostrará el editor de la vista de información para la vista analítica.

Paso 3) Agregue las tablas del esquema a los datos. Foundation nodo debajo del panel de escenarios. El panel de escenarios contiene tres nodos.

  1. Semántica: Este nodo representa la estructura de salida de la vista.
  2. Únete a la estrella: Este nodo crea la unión que adjunta las vistas de atributos a la tabla de hechos.
  3. Datos Foundation: Este nodo contiene las tablas de hechos de la vista analítica. Se pueden agregar varias tablas, pero las medidas solo se pueden seleccionar de una de ellas.

Arrastre y suelte las tablas “PURCHASE_ORDER” y “PURCHASE_DETAIL” de DHK_SCHEMA en Data Foundation nodo, como se muestra a continuación.

Las tablas PURCHASE_ORDER y PURCHASE_DETAIL se eliminaron de los datos. Foundation nodo

Paso 4) Agregue la vista de atributo al nodo Star Join.

  1. Seleccione la vista de atributo “AT_PRODUCT” del paquete Modelado.
  2. Arrastra y suelta la vista de atributos sobre el nodo Star Join, como se muestra a continuación.

Vista del atributo AT_PRODUCT arrastrada al nodo Star Join del panel de escenario

Paso 5) En la misma ventana, trabaje en el panel de detalles según las instrucciones.

  1. Haga clic en los datos Foundation nodo. Las tablas añadidas a él aparecen en la sección de detalles.
  2. Une la tabla “PURCHASE_ORDER” con la tabla “PURCHASE_DETAIL” en el campo “PO_NUMBER”.
  3. Escriba el tipo de unión y la cardinalidad.

Editar la pantalla de unión que une PURCHASE_ORDER con PURCHASE_DETAIL en PO_NUMBER

Haz clic en el botón Aceptar para mantener la unión.

Paso 6) Seleccione las siguientes columnas en la misma ventana.

  1. Seleccione PO_NUMBER, COMPANY, PO_CATEGORY, PRODUCT_ID, PLANT y STORAGE_LOC de la tabla “PURCHASE_DETAIL”.
  2. Seleccione la columna MONEDA de la tabla “PURCHASE_DETAIL”.
  3. Seleccione IMPORTE_GRUPO e IMPORTE_IMPUESTO.
  4. Seleccione las columnas PO_STATUS, CREATED_BY y CREATED_AT de la tabla “PURCHASE_ORDER”, que es el encabezado del pedido de compra.

Columnas de salida de la base de datos resaltadas en naranja después de la selección.

Cada columna seleccionada, marcada en naranja, aparece en el resultado de la vista analítica.

Paso 7) Vincula la vista de atributos a la tabla de hechos en la base de datos. Haz clic en el nodo "Unión con estrella" en el panel de escenarios, como se muestra a continuación.

Nodo Star Join seleccionado en el panel de escenarios del editor de vistas analíticas.

La vista de atributos y la tabla de hechos se muestran en el panel de detalles. Una la vista de atributos a la base de datos en la columna “PRODUCT_ID”, como se muestra a continuación.

Vista de atributos unida a la base de datos en la columna PRODUCT_ID.

Haz clic en el enlace de unión. Se mostrará una ventana emergente para editar la unión, donde el tipo de unión se define como "Referencial" y la cardinalidad como 1...1.

Editar ventana emergente de unión con tipo de unión Referencial y cardinalidad 1 a 1

Haz clic en el botón Aceptar para confirmar la unión de la estrella.

Paso 8) Defina los atributos, las medidas y la clave de la vista. Seleccione el nodo Semántica en el panel de escenarios, como se muestra a continuación.

Nodo semántico seleccionado en el panel de escenarios para definir atributos y medidas.

  1. Seleccione la pestaña Columnas en el panel de detalles.
  2. Defina el tipo de columna como atributo o medida. Todas las columnas aquí son atributos, excepto "GROSS_AMOUNT", que está definida como una medida.

Pestaña Columnas que marca GROSS_AMOUNT como una medida y el resto como atributos.

Paso 9) Valide y active la vista analítica desde la barra de herramientas.

  1. Validar la vista analítica.
  2. Activar la vista analítica.

Iconos de validación y activación en la barra de herramientas del editor de vista analítica

La vista analítica “AN_PURCHASE_ORDERS” ya está creada y activada en la carpeta Analytic del subpaquete Modelling, como se muestra a continuación.

AN_PURCHASE_ORDERS se encuentra en la carpeta Analítica del paquete de modelado.

Paso 10) Visualice una vista previa de los datos en la vista analítica.

  1. Dirígete a la sección de la barra de herramientas y haz clic en el icono "Vista previa de datos".
  2. Seleccione Abrir en el Editor de vista previa de datos.

Icono de vista previa de datos que abre el editor de vista previa de datos para la vista analítica.

En el editor de vista previa de datos hay tres pestañas disponibles. Análisis La función `tab` toma atributos y medidas arrastrándolos y soltándolos en el eje de etiquetas y el eje de valores, y muestra el resultado como un gráfico, tabla, cuadrícula o HTML, como se muestra a continuación.

Gráfico de la pestaña Análisis que compara las medidas de los pedidos de compra con los atributos del eje de etiquetas.

El Valores distintos La pestaña muestra los valores distintos de un atributo seleccionado a la vez, como se muestra a continuación.

Pestaña Valores distintos que muestra las entradas distintas de un atributo seleccionado.

El Raw Data La pestaña muestra los registros en formato de tabla, como se muestra a continuación.

Pestaña Datos sin procesar que muestra los registros de la vista analítica en formato de tabla.

Nota: una vista analítica acepta solo vistas de atributos como sus dimensiones y no admite la unión operador. Las restricciones a nivel de fila en la vista activada se aplican a través de privilegios analíticos.

Las vistas de atributos y las vistas analíticas están obsoletas a partir de SAP HANA 2.0 y no están disponibles en SAP HANA Cloud, por lo que los nuevos modelos de estilo cubo se construyen como gráficos vistas de cálculo de categoría de datos Cubo con unión en estrella. Los pasos anteriores siguen aplicándose a los existentes. SAP Los sistemas HANA 2.0 y los conceptos de modelado se mantienen. Hay más información disponible en el SAP HANA .

Preguntas Frecuentes

Una vista analítica modela un esquema de estrella con una única tabla de hechos que proporciona medidas. Una vista de cálculo combina proyecciones, uniones, combinaciones y agregaciones sobre cualquier origen, incluidas otras vistas, por lo que maneja lógica que una vista analítica no puede expresar.

La base de datos representa una tabla de hechos. Se pueden unir tablas adicionales para enriquecerla con atributos, pero permitir mediciones de varias de ellas multiplicaría las filas durante la agregación y devolvería totales inflados.

Sí. Las columnas calculadas, las medidas restringidas, los parámetros de entrada y las variables se definen en el nodo Semántica. Se evalúan en tiempo de ejecución, por lo que las tablas subyacentes permanecen sin cambios y todos los usuarios de la vista ven la misma lógica.

Asistentes de IA en SAP Las herramientas sugieren rutas de unión, marcan columnas no utilizadas y predicen agregaciones costosas a partir de planes de consulta anteriores. Aprendizaje automático en la carga de trabajo tracTambién recomienda qué medidas exponer, aunque un modelador sigue validando cada resultado.

GitHub Copilot genera automáticamente las sentencias CREATE COLUMN TABLE y SELECT que alimentan o consultan una vista, y acelera la ejecución de scripts de datos de prueba. El SQL generado aún debe revisarse comparándolo con la sintaxis, los privilegios y los nombres de columna reales de HANA.

Las vistas analíticas siguen siendo utilizables en SAP HANA 2.0 pero están obsoletos. SAP HANA Cloud solo admite vistas de cálculo, por lo que las vistas analíticas existentes se reconstruyen como vistas de cálculo gráficas de la categoría de datos Cubo con un nodo de unión en estrella.

El filtrado a nivel de fila se concede mediante privilegios analíticos, que restringen los valores que un usuario puede leer para los atributos seleccionados. La vista en sí permanece inalterada, y los privilegios de objeto por sí solos nunca limitan las filas que se devuelven.

La activación genera una vista de columna en el esquema _SYS_BIC. Cualquier cliente SQL, SAP Nube de análisis, SAP BusinessObjects o un informe ODBC o JDBC pueden consultar esa vista de columna una vez que el usuario tenga los privilegios necesarios.

Resumir este post con: