¿Cuál debería elegir: una base de datos por inquilino o una base de datos para todos los inquilinos en un modelo SaaS?

Definitivamente una base de datos para todos los inquilinos. Muchas personas siguen el mismo esquema por inquilino, ya que sienten que les da un mejor aislamiento, y por qué no. Y a muy pequeña escala (menos de 100 inquilinos) no es un gran problema.

El problema con los esquemas viene más tarde cuando superas los 100 inquilinos o posiblemente hasta los 1,000. Una vez que comience a llegar a esa escala, cosas como copias de seguridad y migraciones pueden convertirse en grandes dolores. Incluso agregar índices en todos sus esquemas, que generalmente es un proceso rápido, ahora se convierten en migraciones grandes y complicadas. Puede leer más sobre esto de uno de los autores de una biblioteca para el enfoque basado en esquemas aquí.

Si desea garantizar el alquiler, pero vaya con una base de datos para todos sus inquilinos, eche un vistazo a esta biblioteca que le ayuda.

Un dba ha sugerido un db por tennant, otro multi-tennant por db. Confundido todavía?

Un solo db por inquilino es un buen patrón para un número BAJO (25 o menos) de inquilinos. Es fácil trabajar en cada base de datos y comprender quién la está utilizando para qué fines. Los problemas operativos (copia de seguridad, restauración, actualización, traslado de inquilinos a un servidor diferente, …) son bien entendidos y fáciles de manejar para el dba, hay varios de ellos, eso es todo.

No tanto por cientos o miles de inquilinos. La sobrecarga administrativa se vuelve demasiado grande.

Así que ambos tienen razón, solo en un número diferente de inquilinos.

Inicialmente, puede ser más fácil tener una base de datos con múltiples inquilinos, pero con el tiempo, a medida que aumente la cantidad de inquilinos, comenzará a enfrentar todo tipo de problemas de escalabilidad.

Recomendaría buscar una base de datos por inquilino, ya que es más fácil separar los datos de cada inquilino y si encuentra algún problema, será más fácil hacer copias de seguridad y restaurar.

More Interesting

¿Debería incluir pausas al calcular la rotación?

Computación en la nube: ¿Cuál sería un software ligero / producto SaaS sugerido para ayudar a administrar el gasto de AWS y / o Azure?

¿Dónde puedo obtener una lista completa de categorías 'AAS' (como IaaS, PaaS, SaaS, DaaS, etc.)?

Hasta que apareció RoR, ¿era MVC popular? Si no, ¿cuál era el camino a seguir en ese entonces?

¿Qué aplicación de gestión de proyectos SaaS es mejor para proyectos pequeños?

Para una aplicación web SaaS, ¿cuál es la mejor opción para administrar clientes, facturas y facturación recurrente? ERP, marcos o una solución casera?

¿Qué aplicaciones pueden rastrear el uso de Office 365?

¿Es mejor estudiar programación (es decir, Python) versus Salesforce para conseguir un trabajo más rápido en este mercado competitivo?

¿Cuál es su experiencia en el soporte de outsourcing para un producto SaaS?

¿Cuál debería elegir: una base de datos por inquilino o una base de datos para todos los inquilinos en un modelo SaaS?

¿Existe un equivalente al modelo SPI (SaaS, PaaS, IaaS) de nubes públicas para nubes privadas?

¿Qué modelos de ROI y precios empresariales de computación en la nube (IaaS, PaaS, SaaS) están disponibles en el dominio público?

¿Debo trabajar para Zenefits o Asana? ¿Cuál crees que sería un mejor lugar para trabajar en términos de aprendizaje / crecimiento profesional / reconocimiento de nombre para futuras empresas, etc.?

Cómo medir la eficacia de los anuncios pagados para SaaS

Cómo proporcionar servicios de consultoría basados ​​en mi experiencia en el espacio empresarial de TI, SaaS y seguridad