En esta serie que comenzamos con este artículo, vamos a explicar conceptos básicos técnicos acerca de las bases de datos relacionales en SAP, enfocándonos especialmente en aquellos que tienen relevancia y marcan la diferencia cuando se trata de bases de datos HANA.

En este primer artículo vamos a repasar las características generales de las bases de datos relacionales en SAP.

Una base de datos relacional consiste en una colección de registros (informaciones) guardados en tablas. Estas tablas habitualmente están interrelacionadas, de donde, aparece la característica epónima.

Características de las tablas de una base de datos relacional en SAP

Las tablas de una base de datos relacional tienen algunas características importantes:

  • No hay importancia en el orden de las columnas o filas.
  • Cada fila contiene uno y solo un valor para cada columna.
  • Cada valor para una columna dada tiene el mismo tipo.
  • Las tablas tienen una clave primaria.
  • Las tablas están relacionadas por claves externas.
  • Para la recuperación de los datos se utilizan las consultas.

Objetos de una base de datos relacional en SAP

1. Los índices

Utilizando índices en las tablas de la base de datos relacional, se permite el acceso más rápido a los registros.  La utilización de los índices mejora el rendimiento de la búsqueda en tablas con millones de registros.

2. Las vistas

Las vistas se definen como uniones de tablas y tienen como propósito la realización de informes.  Una vez que incrementa el número de tablas que se necesitan para el informe, el impacto acumulado en el rendimiento aumenta también. Para mejorar el acceso a la información, habitualmente las vistas se utilizan junto con los índices. Las vistas se pueden relacionar también en función de los permisos de usuarios y los grupos.

3. Usuarios y grupos

Se puede establecer permisos por cada usuario, de modo que la información confidencial se mantenga privada y se evite que los usuarios realicen cambios no autorizados. Los usuarios pueden asignarse a grupos para facilitar la administración de permisos.

4. Procedimientos

Los procedimientos son rutinas contenidas en la base de datos que actúan sobre la información en la base de datos.

Es posible crear y nombrar procedimientos almacenados propios para ejecutar consultas específicas de la base de datos y realizar otras tareas de la base de datos (análisis y manipulación masiva de datos que necesitan mucho rendimiento).

5. Objetos Java

Dentro del Diccionario ABAP (transacción: SE11), SOLO las tablas y las vistas de la base de datos tienen los objetos de la base de datos correspondientes. Los elementos de datos / estructuras / tipos de tabla solo tienen objetos de tiempo de ejecución, no existen objetos de base de datos para ellos.

Índices en bases de datos relacionales en SAP

Los índices pueden ser de dos tipos:

Primario

Está creado automáticamente cuando la tabla se crea en la base de datos y contiene los campos clave de la tabla y un puntero a los campos no clave de la tabla.

Secundario

Es necesario si se accede con frecuencia a la tabla de manera que no se aproveche la clasificación del índice primario para el acceso.

Un índice puede considerarse una copia de una tabla de base de datos que se ha reducido a ciertos campos, que está siempre ordenado y que asegura el acceso más rápido a los registros de datos de la tabla, por ejemplo, mediante un algoritmo de búsqueda binaria.

El optimizador del sistema de base de datos decide si se debe usar un índice al acceder a los datos de una tabla concreta.

Conceptos básicos sobre BBDD SAP y HANA (Parte I) (2)

Por ejemplo, si queremos buscar todos los aviones que llegan al aeropuerto NY-1 en una tabla con todas las rutas de los aviones del mundo, será necesario un índice para facilitar el acceso a los registros. En este caso, el aeropuerto podría ser o no una clave externa.

En el siguiente artículo de la serie, mezclaremos estos conceptos con las nuevas características de las bases de datos en HANA. ¡No te lo pierdas!

Conceptos básicos sobre BBDD SAP y HANA parte I

Área de User Experience & Integración