Fecha

septiembre 11, 2019

Bases de Datos Digitales

¿Para qué usamos una arquitectura de microservicios?
Generalmente son utilizadas para construir aplicaciones que son resistentes, altamente escalables, implementables de forma independiente y capaces de evolucionar rápidamente.

  • Son pequeños, independientes y poco acoplados.
  • Es una base de código separada
  • Servicios son responsables de conservar sus propios datos o estado externo.
  • Servicios se comunican entre sí mediante API bien definidas

¿Cómo manejan los datos los microservicios?

La teoría dice que cada micro servicio debe manejar sus propios datos, esto quiere decir que no compartan el mismo schema o tabla de escritura/lectura.

Al manejar cada microservicio sus propios datos, facilita el realizar cambios y permite ser ágiles al ser totalmente independientes.
Además, un repositorio compartido limita la capacidad de optimizar el almacenamiento de datos de cada microservicio.

 

Concepto de Polyglot Persistence

Dado que la premisa es que cada microservicio maneje sus propios datos, esto se puede extender a que cada microservicio utilice el motor de base de datos que mejor haga el trabajo. Aquí es cuando surge el concepto de Polyglor Persistence, el cual empuja al uso de múltiples tecnologías de almacenamiento de datos dentro de una sola aplicación.

Dada esta definición, debemos tener claros cuales son los distintos tipos de datos y modelos de bases de datos disponibles.

 

Diferenciación según tipos de datos

Datos Estructurados y No Estructurados
La primera diferenciación en datos viene de si los datos son o no estructurados, a continuación un diagrama que explica las principales diferencias.

Persistencia y Origen de Datos
Además, esta diferenciación se puede abrir aún más según la persistencia de los datos y el origen de estos.

Persistencia

  • Efímeros: Son datos que existen brevemente, como por ejemplo el caché.
  • Transitorios: Corresponden a datos que se contienen temporalmente mientras admiten escrituras de alta velocidad

Origen de Datos

  • Operacionales: Son datos que necesitan tener durabilidad, consistencia y disponibilidad altas.
  • Transaccionales: Son datos asociados a un evento, que generalmente están descritos por un verbo. Tienen dimensión de tiempo, valor numérico y referencia a objetos

También podría interesarte…

Digital Consulting

Digital Consulting

En Prodigio apoyamos a nuestros clientes con un servicio de Consultoría Especializada para definir una estrategia de...

leer más
Microservicios

Microservicios

Para la capa de negocio se propone usar una MSA, o arquitectura de microservicios, la cual posee grandes ventajas,...

leer más
%d bloggers like this: