Creación de una «Attibute View» de SAP HANA

Las vistas de información de SAP HANA, diferencias técnicas al margen, tienen una utilidad funcional similar a los universos de SAP BusinessObjects BI o la capa semántica de cualquier plataforma de Business Intelligence: facilitar a los usuarios el acceso a los datos, haciendo transparente la terminología técnica que los rodea y presentando sólo los datos que realmente se requieren.


Las vistas de información de SAP HANA, diferencias técnicas al margen, tienen una utilidad funcional similar a los universos de SAP BusinessObjects BI o la capa semántica de cualquier plataforma de Business Intelligence: facilitar a los usuarios el acceso a los datos, haciendo transparente la terminología técnica que los rodea y presentando sólo los datos que realmente se requieren.

De los tres tipos de vistas de información que ofrece SAP HANA, las primeras que definiremos son aquellas que nos permitirán acceder a los datos de las tablas que actúan como maestros o dimensiones, estas vistas se denominan Attribute View o Vista de Atributos.  Por ejemplo, una tabla de “Proveedores”  puede tener una gran cantidad de datos, pero quizás, para las tareas de análisis, con el código y razón social será suficiente, brindar más datos podría dificultar la comprensión o desviaría el objetivo del análisis.

Un Attribute View de SAP HANA nos permite acceder a una o más tablas y presentar ciertos atributos o campos de estas tablas como si se tratase una sola.  Para crear las vistas de información se utiliza SAP HANA Studio.

Procedimiento para crear una «Attribute View»

Podemos acceder a la ventana de definición del Attibute View, a través del panel “Quick Launch” o el botón derecho sobre un package del Content (Perspectiva Navigator).

Vías para iniciar la creación de un Attribute View

El nombre de la vista sólo puede contener letras, números y el carácter de subrayado, el nombre que se introduzca se convierte en mayúsculas.  En cuanto a la descripción, no hay ninguna restricción. En el campo paquete debemos indicar dónde lógicamente quedará vinculada nuestra vista, este paquete deberá ser creado previamente.

Ventana inicial de definición de un Attibute View

En cuanto a los tipos de vista, tenemos:

  • Standard. Basada en tablas de la base de datos.
  • Time. Para creación de una visión y datos típica de una dimensión de tiempo que incluye información del día, semana, mes, año, etc.
  • Derived. Para cuando la definición de la vista partirá de la definición de otra vista existente, ambas vistas quedan vinculadas.  Cualquier cambio en la vista de referencia se reflejará en todas las vistas que la utilicen.
  • Copy from. Similar a la de tipo Derived, con la diferencia que no existe vínculo entre las vistas, cualquier cambio en la vista de referencia no se refleja en las vistas que la utilizaron a través de esta opción.

Selecciona la tablas o tablas que utilizaremos para crear nuetra vista de atributo en SAP HANA

Seguidamente, este asistente nos mostrará nuestro Catálogo, buscaremos en el esquema que lo contiene o podremos utilizar la opción para buscar una tabla.  (Podemos seleccionar más de una tabla).

Agregando atributos a nuetras vista Attribute View

A continuación, veremos en un lienzo las tablas seleccionadas en el cual deberemos agregar los atributos que deseamos utilizar en esta vista, para ello nos ubicamos sobre un campo de la tabla, hacemos clic derecho y en el menú contextual tendremos dos opciones para este fin: “Add as Key Attribute” (para los campos o atributos clave) y “Add as Attribute” (para el resto de atributos).

Salvar y validar nuestra Vista

Luego, podremos validar y grabar (primer símbolo verde) o grabar y activar (segundo símbolo verde). En HANA, al igual que los objetos de SAP ERP o SAP BW, ante de poder utilizarlos, estos deben ser activados. 

Ventana de activación de objetos

Finalmente, podremos comprobar el funcionamiento de nuestra vista, a través de una vista previa de los datos, accediendo al «Content» (perspectiva Navigator), y luego al «package» donde hemos almacenado nuestra vista.

Comprobación del funcionamiento de nuestra vista

SQLScript para tener la lógica en la base de datos de HANA

Los desarrolladores con conocimientos en SQL (Structured Query Language) se sentirán muy cómodos con SAP HANA y especialmente con SAP HANA Studio, tanto para el diseño de datos como para el diseño de vistas de información, este conocimiento será de mucha utilidad. Pero SAP HANA tiene algo más, tiene una extensión del lenguaje estándar para acceder y manipular las estructuras de bases de datos, denominado SQLScript


Los desarrolladores con conocimientos en SQL (Structured Query Language) se sentirán muy cómodos con SAP HANA y especialmente con SAP HANA Studio, tanto para el diseño de datos como para el diseño de vistas de información, este conocimiento será de mucha utilidad.  Pero SAP HANA tiene algo más, tiene una extensión del lenguaje estándar para acceder y manipular las estructuras de bases de datos, denominado SQLScript 

Tal como lo hemos comentado en entradas anteriores, uno de los objetivos de SAP HANA es evitar el movimiento de datos entre base de datos y aplicaciones, para ello, permite que cálculos y operaciones lógicas se ejecuten en la base de datos y no en las aplicaciones, contribuyendo de este modo, a lograr menores tiempo de consulta, notorio sobre todo cuando se procesa grandes cantidades de información. 

Con las lógicas en las aplicaciones, además del tráfico que generan al recuperar los datos que van a procesar, este procesamiento se hace registro por registro, lógicas con muy pocas posibilidades de optimizar.  Por otro lado con las lógicas en la base de datos hay mayores posibilidades de tener un código estandarizado y reutilizable, facilitando las tareas de mantenimiento y desarrollo. 

SQLScript incluye una serie de operadores, funciones y sentencias, las cuales podremos utilizar en la definición de objetos tipo procedimiento que crearemos con la sentencia CREATE PROCEDURE <nombre del procedimiento> LANGUAGE SQLSCRIPT AS…

Creando tablas con SAP HANA Studio

Por el momento, quizás no sea muy usual crear o actualizar manualmente tablas en la base de datos de SAP HANA, lo usual será que estas tareas se realicen a través de procesos ETL (Extracción, Transformación y Carga), definiciones automatizadas para recuperar datos desde otras fuentes hacia HANA (por ejemplo, con SAP BusinessObjects Data Services o SLT Replication Server). Pero si se concibe la idea de desarrollar una aplicación, el primer paso será crear las tablas que se necesiten.


Por el momento, quizás no sea muy usual crear o actualizar manualmente tablas en la base de datos de SAP HANA, lo usual será que estas tareas se realicen a través de procesos ETL (Extracción, Transformación y Carga), definiciones automatizadas para recuperar datos desde otras fuentes hacia HANA (por ejemplo, con SAP BusinessObjects Data Services o SLT Replication Server).  Pero si se concibe la idea de desarrollar una aplicación, el primer paso será crear las tablas que se necesiten. 

SAP HANA Studio - Perspectiva Navigator y el Quick Launch (La apariencia se personaliza vía el menú Window)

Para la creación de tablas utilizaremos SAP HANA Studio.  En la perspectiva Navigator observaremos una estructura de árbol agrupadas en tres grandes categorías:

  • Security. (Dependiendo de tu perfil de usuario, quizás no la veas). Este nodo contiene las definiciones de roles y usuarios del sistema.
  • Catalog. Contiene los objetos de bases que han sido activados. Los objetos son organizados en esquemas.
  • Content. Contiene los objetos de la base de datos activados y no activados.

 Estos tres nodos agrupadores de objetos de base de datos pueden parecer insuficientes, si fuera necesario consultar otros tipos de objetos, una alternativa es acceder a las vistas que tiene el sistema.

Menú conxtextual del nodo Catalog en la perspectiva NavigatorPara crear una tabla, debemos utilizar el editor SQL, una vía para activar una ventana de este editor, es haciendo clic derecho sobre el nodo Catalog. Si se trata de un nuevo proyecto o aplicación quizás convendría, primero, definir un esquema:

  • create schema «PRESUPUESTO»;
  • grant select on schema » PRESUPUESTO» to _SYS_REPO with grant option;

Con la primera sentencia se crea el y esquema y con la segunda se “comunica” al sistema la existencia de la misma, si se obvia, para la definición de las tablas y especialmente al consultarlas no estarán “visibles”.

Editor SQL

Para la creación de una tabla usaremos una sentencia similar a la siguiente:

CREATE COLUMN TABLE «PRESUPUESTO».»PROYECTOS»
(
«PROY_ID» INTEGER CS_INT NOT NULL ,
«PROY_DESC» VARCHAR(60) NOT NULL ,
«PROY_ACT» VARCHAR(2)
);

El término “COLUMN” determina que esta tabla tendrá un sistema de almacenamiento y acceso basado en columnas, obviándola, estaría basado en filas. Luego, podríamos insertar datos vía las siguientes sentencias:

insert into «PRESUPUESTO».»PROYECTOS» values(1001,’Proyecto 01′,’S’);
insert into «PRESUPUESTO».»PROYECTOS» values(1002,’Proyecto 02′,’S’);

Contenido de la tabla creada

 Ejecutadas estas sentencias visualizaremos, nuestro esquema y  tabla dentro del nodo Catalog (pulsando F5),  y dentro de la tabla, nuestros datos.

También podemos crear tablas vía el menú contextual de cualquier esquema de base de datos

Conceptos básicos antes de comenzar a utilizar SAP HANA Studio

(Resumen sobre Perpesctivas, Tablas y Campos y Vistas de Información)


Perpectivas

Viendo el entorno de trabajo de Studio, observaremos varios paneles, en la terminología de SAP HANA Studio se denominan perspectivas.  Las perspectivas disponibles son las siguientes:

  • Administration Console (perspectiva por defecto).
  • Modeler. 
  • Debug
  • RCP Perspective
  • Resource
  • SVN Repository Exploring
  • Team Synchronizing

Las perpectivas más importantes son Administration Console (Permite administrar nuestro SAP HANA Appliance, entre otras cosas podremos definir usuarios y asignarles autorizaciones) y Modeler (Con esta perspectiva se realiza todo el modelado de datos, a través de sentencias SQL y ventanas de edición)

 Tablas y Campos

Los datos de SAP HANA database, se almacena en tablas, los campos de cada tabla puede cumplir uno de los dos siguientes “papeles”:

  • Atributo (Attribute). Califica el dato. Por ejemplo: Producto o Cliente.
  • Medida (Measure). Cuantifica el dato. Por ejemplo: Cantidad o Importe de ventas

Vistas de Información

Para recuperar los datos desde diferentes tablas como si se tratase de una sola, se utilizan las denominadas Information View, las cuales pueden de los siguientes tipos:

  • Vistas de atributos (Attribute Views).  Son vistas de una o más tablas que pueden ser utilizadas como un bloque básico de información para construir otro tipo de vistas. Por ejemplo, una vista denominada Organización puede contener información de la tabla sociedad, áreas y proyectos y utilizarla para diseñar vistas analíticas y calculadas. De lo que se trata, es definir una vista estándar y reutilizable para los usuarios.  .
  • Vistas analíticas (Analytic views). Estas vistas son utilizadas para mostrar una tabla de hechos (tabla que contiene los valores o importes de las medidas) vinculada con tablas y/o vistas de atributos.  Adicionalmente, a nivel de vista, se pueden definir nuevas medidas y variables.  Las vistas analíticas son usadas por algunas herramientas de reporting como fuente de datos.
  • Vistas calculadas (Calculation views). Permite combinar, tablas, vistas de atributos, vistas analíticas e inclusive otras vistas calculadas.  Al permitir combinar vistas analíticas, facilita la posibilidad del diseño de una vista con más de una tabla de hechos. Por ejemplo un caso de uso podría ser la comparación de las ventas reales vs. Las presupuestadas.

La arquitectura y posibilidades que ofrece SAP HANA, con por ejemplo, una instalación estándar de SAP NW BW son muy superiores, pero quizás para facilitar la comprensión de la utilidad de estas vistas, se podría establecer la siguiente equivalencia:

  • Las Attibute Views, son comparables a las dimensiones de SAP NW BW.
  • Las Analytic views son comparable a un infocubo de SAP NW BW o a un Infoset de SAP ERP.
  • Las Calculation views se asemejan a un Multiprovider de SAP NW BW.

¿SAP Visual Intelligence vs. SAP BusinessOjects Explorer?

SAP Visual Intelligence es una nueva herramientas para analizar la información, con apenas unos meses en circulación. SAP la define como una herramienta de tratamiento y visualización de datos. La frase original dice “is a data manipulation and visualization tool”, pero preferimos la palabra tratamiento por manipulación, por las connotaciones que puede tener la palabra manipular.


SAP Visual Intelligence es una nueva herramientas para analizar la información, con apenas unos meses en circulación.  SAP la define como una herramienta de tratamiento y visualización de datos. La frase original dice “is a data manipulation and visualization tool”, pero preferimos la palabra tratamiento por manipulación, por las connotaciones que puede tener la palabra manipular.

SAP VI 00

SAP VisI, es presentada como una herramienta de la familia SAP BusinessObjects Explorer.  Tienen muchos aspectos en común, pero tienen sustanciales diferencias.   SAP Visual Intelligence es diferente desde que se instala, este producto requiere ser instalado en cada ordenador donde se desea utilizar, un asistente guía e informa los pasos a seguir.  Otro aspecto inusual entre todos los productos de Business Intelligence y Análisis de SAP, es que desde el entorno de trabajo de SAP VisI se puede buscar actualizaciones del producto.

SAP VI - 01

Para utilizar SAP VisI sólo requieres el programa instalador, opcionalmente puede conectarte con plataformas SAP BusinessObjects BI y SAP HANA, para utilizarlas como fuentes de información o repositorios de datos o documentos.  Esta herramienta nos permite recuperar datos de ficheros  de texto (CSV), SAP HANA database, hojas de cálculo MS Excel, Universos BO (3.* y 4.0) y bases de datos vía sentencias SQL (MSQ SQL, Oracle, Sybase IQ, Teradata e IBM DB2).

SAP Visual Intelligence - Posibles fuentes de datos

Utilizando SAP HANA como fuente de datos se puede utilizar vistas analíticas, calculada y de atributos.  La conexión con HANA puede ser offline (los datos antes de visualizarlos pueden ser manipulados) o puede online (los datos directamente son representados gráficamente).  Luego los datos (datasets) y el documento SViD pueden ser publicados en SAP HANA.

¿SAP Visual Intelligence vs. SAP BO Explorer?

Desde nuestro parecer, SAP Visual Intelligence  está dirigida a usuarios de negocio que requieren independencia para procesar y analizar sus datos, no importando el origen de la información.  Para SAP VisI pensamos en usuarios de negocio con habilidades para preparar sus datos para el análisis.

Por otro lado, creemos que SAP Visual Intelligence no «amenaza» la existencia de SAP BusinessObjects Explorer, las vemos como herramientas complementarias.  Pensamos que SAP VisI puede ser usada como herramienta departamental o para ciertos usuarios de negocio analistas y BO Explorer como herramienta de exploración corporativa, en la que los usuarios de SAP VisI podrán compartir los datos que han utilizado o tratado con el resto de la organización.