¿Qué es el multi-tenancy (arquitectura multiinquilino)?
El multi-tenancy (arquitectura multiinquilino) significa que una instancia de software atiende a varios clientes, los inquilinos, al mismo tiempo y mantiene sus datos estrictamente separados a nivel lógico. Cada inquilino ve solo sus propios datos y ajustes, aunque todos usan la misma aplicación.

Multi-tenancy: definición e importancia
Un inquilino (tenant) es una unidad delimitada dentro de un software: una empresa cliente, una sucursal o una filial. Una aplicación multiinquilino se ejecuta una sola vez, pero atiende a muchos inquilinos, cada uno con sus propios usuarios, datos y, a menudo, su propio diseño y ajustes. Casi toda solución SaaS se basa en este principio.
El modelo opuesto es la instalación individual: el software se opera por separado para cada cliente. Ofrece la máxima separación, pero conlleva un gran esfuerzo de operación y actualización. El multi-tenancy hace que el software sea escalable desde el punto de vista económico, pero exige una arquitectura cuidadosa para que ningún inquilino vea jamás datos de otro.
Cómo funciona el multi-tenancy
Existen varios modelos de arquitectura. Con un esquema compartido, todos los inquilinos están en las mismas tablas, cada fila lleva un identificador de inquilino y cada consulta filtra por él. Con un esquema por inquilino, cada uno tiene su propia área en la misma base de datos; con una base de datos por inquilino, una base de datos totalmente propia. El modelo más fuerte es una instancia independiente por inquilino.
Cuanto más lejos llega la separación, mayores son el aislamiento y el esfuerzo. El esquema compartido es el más económico, pero exige disciplina: bases de datos como PostgreSQL ofrecen row-level security, que impone filtros por fila. Las bases de datos propias facilitan las copias de seguridad, las eliminaciones y el traslado de inquilinos concretos a servidores propios.
Ejemplo práctico: software sectorial para administradores de fincas
Un proveedor de software desarrolla una plataforma para administraciones de fincas. Cada administración es un inquilino con sus propios inmuebles, arrendatarios, documentos y empleados; las plantillas, el logotipo y los roles se configuran por administración. Las mejoras y las actualizaciones de seguridad se instalan una vez y están disponibles de inmediato para todos los clientes.
Una administración exige, por sus requisitos, una base de datos propia en Alemania. Como la arquitectura estaba prevista para ello, ese inquilino puede operarse de forma aislada sin afectar a los demás. Esto muestra el valor de decidir pronto el modelo de separación: modificarlo después solo es posible con un gran esfuerzo.
Ventajas, límites y errores habituales
Las ventajas son menores costes de operación, actualizaciones centralizadas y una incorporación rápida de nuevos clientes. Los límites: un error o una caída afecta potencialmente a todos los inquilinos, los inquilinos con mucha carga pueden frenar a otros («noisy neighbor») y los deseos particulares de cada cliente solo se pueden atender de forma limitada. Errores típicos:
- Olvidar el filtro de inquilino en alguna consulta: el riesgo clásico de fugas de datos
- No separar por inquilino archivos, cachés o índices de búsqueda
- No poder respaldar, restaurar o eliminar inquilinos concretos
- Incorporar el multi-tenancy a posteriori en una aplicación de un solo cliente
- Programar de forma fija los deseos de clientes concretos en lugar de hacerlos configurables
Qué debe tener en cuenta su empresa
Decida pronto cuántos inquilinos y qué grado de separación necesita, según los requisitos de protección de datos y de los clientes. Con clientes externos, forma parte un contrato de encargo de tratamiento. Nano Concepts desarrolla plataformas SaaS y portales con una separación limpia de inquilinos, un modelo de roles y pruebas que verifican específicamente que ningún inquilino puede acceder a datos de otro.
Preguntas frecuentes sobre Arquitectura multiinquilino (multi-tenancy)
Un inquilino es una unidad de usuarios delimitada dentro de una aplicación compartida, por ejemplo una empresa cliente, una sucursal o una filial. Cada inquilino tiene sus propios datos, usuarios y ajustes y no ve nada de los demás.
Multiusuario significa que varias personas trabajan a la vez con el software. Multiinquilino va más allá: varias organizaciones independientes usan la misma aplicación y sus datos están estrictamente separados. A su vez, cada inquilino tiene muchos usuarios.
Puede cumplirla si la separación se implementa con fiabilidad técnica, se registran los accesos y existen contratos como el de encargo de tratamiento. La arquitectura por sí sola no garantiza el cumplimiento del RGPD; es un requisito previo.
Cuando el mismo software debe operarse para muchos clientes o sedes, por ejemplo en productos SaaS, soluciones sectoriales o estructuras de grupo con filiales. Para una aplicación que solo usa internamente una empresa, suele ser innecesario.
Servicios que encajan

Desarrollo SaaS
Su software como producto por suscripción: multi-tenant, con registro en autoservicio, facturación automática y una operación estable en la UE.
Más información
Desarrollo de plataformas online
Marketplaces y plataformas de intermediación, reservas y comunidad, con cuentas de usuario, búsqueda, pago y área de administración.
Más información
Desarrollo de software
Software desde el requisito hasta la operación: web, móvil e interfaces con un único proveedor.
Más informaciónTérminos relacionados
Relevante para estos sectores
Artículos relacionados de la revista

Documento de requisitos de software (Lastenheft): estructura, ejemplo y checklist
Un buen documento de requisitos hace comparables los presupuestos y posibles los precios cerrados. Cómo se estructura, cómo formular requisitos verificables y cómo saber si el suyo está completo.
Seguir leyendo
Scrum en proyectos de software: roles, proceso y velocity
Scrum hace visible el progreso, siempre que el Product Owner pueda decidir, la Definition of Done se aplique y la velocity sirva como herramienta interna de planificación. Una guía para quienes encargan software a medida.
Seguir leyendo
Desarrollar un MVP: probar hipótesis en vez de alargar listas de funciones
Un MVP no es una versión 1.0 recortada, sino un experimento con una pregunta clara. Cómo elegir el tipo de MVP, recortar el alcance, fijar métricas y aprender antes de gastar presupuesto en funciones que nadie usa.
Seguir leyendo