Bases de datos

¿Qué es el software de almacén de datos?

asegure su información en un almacén de datos con esquema de base de datos

El software de almacenamiento de datos gestiona y almacena datos de muchas fuentes, lo que facilita su análisis y visualización para apoyar la prise de décision empresariales.

¿Qué es el software de almacén de datos?

Un almacén de datos es esencialmente una base de datos estructurada para facilitar las búsquedas. Las bases de datos transaccionales se utilizan para aplicaciones como la entrada de pedidos, por lo que están diseñadas para gestionar grandes volúmenes de inserciones de nuevos pedidos y tienen pocos índices que mantener. Los almacenes de datos suelen tener elaborados esquemas en estrella que se organizan en una única tabla de hechos con todos los atributos relacionados con un área temática, rodeada de muchas tablas de dimensiones que corresponden a consultas populares y están indexadas para dar soporte a esas consultas. Una arquitectura de almacén de datos más moderna, las bases de datos columnares, almacenan las tablas como columnas individuales. Este es el caso del motor de almacenamiento de datos utilizado por Actian Data Platform.

¿Por qué utilizar software de almacén de datos?

Antes de que se popularizaran los almacenes de datos, las empresas simplemente descargaban los datos de las bases de datos operativas cada noche, creaban una copia de la base de datos, añadían índices adicionales y ejecutaban informes. La razón principal era mantener la base de datos operativa libre para procesar transacciones de misión crítica, como tomar pedidos de clientes sin tener que compartir recursos con usuarios internos. A continuación se ofrecen más ejemplos de por qué las empresas emplean almacenes de datos:

  • Un almacén de datos puede estructurarse para apoyar la prise de décision empresariales, como informar de dónde compran los clientes determinados productos. Estos datos pueden ayudar a decidir qué distribución debe almacenar determinados productos.
  • Un almacén de datos puede utilizarse como repositorio de datos de múltiples unidades de negocio y aplicaciones para crear un eje central de datos empresariales. Un almacén de datos de empresa puede utilizarse para rellenar cuadros de mando que muestren a los directivos el rendimiento de la empresa en relación con los indicadores clave de rendimiento (KPI).
  • Un almacén de datos distribuido puede utilizarse en una división geográfica de una empresa con análisis locales con una latencia de red mínima.
  • Un lago de datos puede utilizarse como extensión de un almacén de datos para consultas ad hoc.
  • Sin un almacén de datos y herramientas informatique décisionnelle (BI) fáciles de usar, los analistas de negocio tendrían que depender de los ocupados equipos de TI, lo que provocaría retrasos y la posible pérdida de oportunidades de mercado.
  • Un almacén de datos de ventas al por menor puede utilizarse para realizar análisis de la cesta de la compra con el fin de optimizar los niveles de existencias y la colocación de los productos.
  • Los almacenes de datos sanitarios pueden utilizarse para analizar datos de ensayos clínicos y encontrar correlaciones entre síntomas y tratamientos.
  • Las organizaciones de servicios informáticos pueden utilizar un almacén de datos para buscar las causas raíz de los incidentes y solucionar problemas a largo plazo en su software o servicio.
  • Un almacén de datos puede utilizarse para rellenar herramientas de apoyo a la toma de decisiones, como los cubos, que contienen rebanadas y dados de datos preagregados para un análisis rápido.

¿Cómo funciona el software de almacén de datos?

El núcleo de la mayoría de los sistemas de software de almacén de datos es una instancia del sistema de gestión de bases de datos relacionales (RDBMS) que gestiona el movimiento de datos entre la memoria y el almacenamiento secundario de archivos. La instancia de base de datos se conecta a las aplicaciones cliente para poder procesar las consultas enviadas y otras peticiones. Las consultas se analizan, los planes de consulta se crean y ejecutan, y los conjuntos de resultados se devuelven a la sesión solicitante. En el caso de las operaciones de actualización, la instancia de base de datos realiza la gestión de transacciones, lo que permite confirmar o revertir múltiples operaciones SQL INSERT, UPDATE y DELETE.

  • Gestión de sesiones: Gestiona la conexión con las aplicaciones cliente que pueden ser gestionadas como un pool por un balanceador de carga. La instancia de base de datos también es responsable de mantener la cohérence de los datos, de modo que cualquier consulta de usuario que agregue o agrupe resultados siempre será coherente con el instante en que comenzó la consulta, por lo que sus tabulaciones siempre suman.
  • Mantenimiento de la integridad de la base de datos: Crítico, por lo que el almacén de datos debe asegurarse de que cualquier operación de escritura en memoria siempre vuelve al almacenamiento secundario. Todos los almacenes de datos tienen registros de transacciones para garantizar que se mantiene la integridad de la base de datos. Supongamos que se produce un fallo inesperado del servidor al reiniciarse. En ese caso, la instancia de la base de datos utiliza el registro de transacciones para realizar una reversión al último punto de control antes de volver a un punto consistente.
  • Alta disponibilidad: Asegurada por tener múltiples copias de los datos en almacenamiento y múltiples instancias para tomar el relevo cuando una tarea de trabajador falla. En caso de que una instancia deje de responder o se bloquee, los gestores de interrupciones que faltan esperan un tiempo determinado antes de pasar a una instancia en espera.

Mantener cohérence los datos en varios servidores de un almacén de datos en clúster requiere un gestor de bloqueos distribuido que garantice que, cuando se realice una actualización de datos, sólo un servidor sea el propietario del bloque de datos que se está modificando y las demás sesiones que deseen realizar un cambio esperen su turno.

Arquitectura de almacenes de datos

Cada proveedor de soluciones de almacenamiento de datos diferencia sus soluciones de múltiples maneras para satisfacer las necesidades de sus clientes y mantener una ventaja competitiva. Puede ejecutar un almacén de datos en un servidor Windows o Linux in situ o en la nube.

  • Almacenes de datos in situ: Tienen la ventaja de que no hay que pagar a un proveedor por los recursos de processeur, E/S y almacenamiento que consumen. El inconveniente de las soluciones in situ es que hay que gestionarlas; cuando se quedan sin capacidad, hay que comprar un servidor más grande e interne equipos de TI para operarlas y optimizarlas.
  • Almacenes de datos basados en la nube: Tienen ventajas, como la flexibilidad de pagar solo por lo que usas, la elasticidad infinita para crecer con tus necesidades sin comprar hardware por adelantado, y puedes dejar las tareas de gestión de TI al proveedor de servicios en la nube.

Los almacenes de datos pueden diseñarse para funcionar en un sistema de multiprocesamiento simétrico (SMP) con capacidad limitada o como procesamiento paralelo masivo (MPP) en un conjunto de servidores agrupados para soportar consultas paralelas de mayor envergadura o poblaciones de usuarios más numerosas.

El almacenamiento secundario de un almacén de datos puede ser tan simple como un conjunto de archivos o volúmenes de disco físico. Un enfoque más sofisticado consiste en utilizar software de virtualización para abstraer el almacenamiento más allá de las capacidades de los dispositivos físicos. Una abstracción aún mayor desvincula la relación entre servidores y dispositivos de almacenamiento en el ámbito de los almacenes de datos basados en la nube. La ventaja de utilizar una arquitectura de este tipo es que se puede escalar el almacenamiento independientemente de ressources de calcul para que la arquitectura del servidor se adapte al perfil de almacenamiento o a la aplicación de cálculo.

En algunos casos, los almacenes de datos aprovechan la contenedorización y los microservicios en la nube para ofrecer una arquitectura informática sin servidores, de modo que se pueda facturar en función de las consultas ejecutadas y no de los servidores virtuales cuya licencia se haya adquirido.

Una distinción muy importante entre las tecnologías de almacén de datos es si utilizan un almacenamiento de tablas basado en filas o en columnas. Los enfoques basados en columnas tienen claras ventajas de rendimiento sobre los almacenes basados en filas, ya que la consulta solo afecta a las columnas que le interesan, son autoindexables para reducir los costes de administración y los objetos de columna más pequeños pueden aprovechar las cachés más rápidas del procesador. Actian Data Platform utiliza una arquitectura avanzada basada en columnas en la nube y en las instalaciones.

Principales conclusiones

A continuación se sugieren algunas consideraciones a tener en cuenta a la hora de elegir un almacén de datos:

  • ¿Proporciona una alta integridad de los datos?
  • ¿Es seguro?
  • ¿Hay alguna forma de conseguir alta disponibilidad?
  • ¿Se ha demostrado su rapidez con las pruebas de referencia estándar del sector?
  • ¿Utiliza SQL estándar para no tener que reciclar a los usuarios?
  • ¿Es una arquitectura MPP para escalar a medida que crecen las cargas de trabajo?
  • ¿Funcionará en la nube para que pueda evitar los gastos de capital inicial y los costes de adquisición?
  • ¿Funcionará en múltiples servicios en la nube para que pueda poner mi motor de análisis donde estén mis datos?
  • ¿Puedo utilizar el mismo software de almacén de datos in situ para mis datos regulados?
  • ¿Guarda los datos del almacén de datos en un almacén de columnas?
  • ¿Es rentable administrarlo y ponerlo a punto?