Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

[SOLUCIONADO] crear una base de satos para usuarios y otra para datos de cada empresa?

Estas en el tema de crear una base de satos para usuarios y otra para datos de cada empresa? en el foro de Mysql en Foros del Web. Tengo una consulta soy nuevo con bases de datos y estoy realizando un proyecto en el cual pienso tener varias empresas registradas, mi idea seria ...
  #1 (permalink)  
Antiguo 28/09/2015, 09:32
 
Fecha de Ingreso: julio-2015
Mensajes: 10
Antigüedad: 8 años, 9 meses
Puntos: 0
Pregunta crear una base de satos para usuarios y otra para datos de cada empresa?

Tengo una consulta soy nuevo con bases de datos y estoy realizando un proyecto en el cual pienso tener varias empresas registradas, mi idea seria tener una base de datos con datos de todas la empresas y usuarios del sistema y después crear una base da datos especifica para cada empresa con datos de ventas y ese tipo de cosas. Creo yo que debe ser así por que la idea es que desde una misma aplicación los usuarios los usuarios puedan conectarse a su respectiva base de datos sin necesita de realizar configuraciones previas. Creen que es la mejor forma ?
  #2 (permalink)  
Antiguo 28/09/2015, 10:19
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: crear una base de satos para usuarios y otra para datos de cada empresa?

Da la impresión de que estás hablando de un portal de empresas de diversos rubros, y en ese sentido no estas dando demasiada información útil.
Desde ya, una base de usuarios unificada, y estructuras de BBDD diferenciadas sólo tienen sentido en un portal, y con empresas que posean una estructura de datos necesaria totalmente diferentes e incompatibles entre si, y especialmente siendo empresas que no pertenecen al mismo titular (individuo o sociedad). De lo contrario estarías replicando estructuras de datos, y complicando la vida de la aplicación.
Describe mejor los escenarios de esas empresas y veamos si la idea cuadra. De lo contrario hay que mirar la cosas desde otro ángulo.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 28/09/2015, 11:14
 
Fecha de Ingreso: julio-2015
Mensajes: 10
Antigüedad: 8 años, 9 meses
Puntos: 0
Respuesta: crear una base de satos para usuarios y otra para datos de cada empresa?

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Da la impresión de que estás hablando de un portal de empresas de diversos rubros, y en ese sentido no estas dando demasiada información útil.
Desde ya, una base de usuarios unificada, y estructuras de BBDD diferenciadas sólo tienen sentido en un portal, y con empresas que posean una estructura de datos necesaria totalmente diferentes e incompatibles entre si, y especialmente siendo empresas que no pertenecen al mismo titular (individuo o sociedad). De lo contrario estarías replicando estructuras de datos, y complicando la vida de la aplicación.
Describe mejor los escenarios de esas empresas y veamos si la idea cuadra. De lo contrario hay que mirar la cosas desde otro ángulo.
Si las empresas no son de la misma sociedad sin embargo los datos que van a manejar son los mismos. Por ejemplo un usuario se loguea y en la variable Session va a estar la base de datos a la cual se puede conectar.
  #4 (permalink)  
Antiguo 28/09/2015, 12:12
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: crear una base de satos para usuarios y otra para datos de cada empresa?

Ok... Que sean diferentes sociedades no es muy relevante en este momento. Lo importante es saber si los requeridos de datos son los mismos, para lo cual lo que necesitamos saber es si pertenecen al mismo rubro comercial, o a diferentes, e incluso si siendo el mismo tiene exactamente los mismos requisitos de datos.
Debes entender claramente que una base de datos se diseña en función de las necesidades de un sistema dado. NO sólo por el rubro, y que dos empresas que se dedican exactamente a lo mismo, e incluso si facturan a los mimos clientes, pueden no necesitar el mismo diseño de bases de datos, dependiendo de sus proceso internos.
Por ello la base no debería diseñarse sin un relevamiento mínimo de los requisitos de cada empresa.
¿Has verificado que en todos los casos estés trabajando siempre con el mismo esquema de procesos?
Si es así, puede manejarse todo con una única base de datos, y con identificadores propios para cada empresa.
Si por otro lado, tienen proceso diferentes, entonces no puedes hacer un esquema centralizado, y deberás crear bases para cada una.
También puedes crear esquemas replicados de las estructuras de la base, pero eso te complicará cualquier evolución posterior, ya que cualquier cambio que hagas en una deberá replicarse a su vez en todas las bases al mismo tiempo. Eso a la larga impacta en el mantenimiento del sistema.
¿Se va entendiendo el problema?

Finalmente:
Cita:
en la variable Session va a estar la base de datos
la variable de sesión no es parte del modelo de datos. Es un tema programático y dóde y como lo manejes, es irrelevante para la base.
De hecho, si gestionas los usuarios por MySQL, por ejemplo, puedes dar permisos a los usuarios para una única base, por lo que el que lo guardes o no en la sesión de la aplicación dependerá de tus necesidades allí. de todos modos, si el user no tiene permisos para acceder a ella, no la podría ver...
Pero manejar los usuarios a nivel BBD es algo que requiere bastante práctica.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Última edición por gnzsoloyo; 28/09/2015 a las 12:18
  #5 (permalink)  
Antiguo 28/09/2015, 13:01
 
Fecha de Ingreso: julio-2015
Mensajes: 10
Antigüedad: 8 años, 9 meses
Puntos: 0
Respuesta: crear una base de satos para usuarios y otra para datos de cada empresa?

me parece interesante lo que me comentas, creo que lo mejor será manejar bases de datos independientes debido a que en el momento se esta presentando una propuesta pero las empresas algunas veces piden opciones particulares.
  #6 (permalink)  
Antiguo 28/09/2015, 13:32
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: crear una base de satos para usuarios y otra para datos de cada empresa?

Me parece perfecto.
La personalización de un esquema es una alternativa. Es decir, puedes basarte en un estándar, pero que luego se adapta a las necesidades de cada empresa; en esos casos una base por empresa es una buena idea.
Lo que si te recomiendo es el uso de un gestor de proyectos como GIT para mantener documentados los cambios en cada caso. Es fácil perderse en la maraña de cosas cuando vas avanzando con cada uno.

Otra fuente que puedes explorar es esta, donde encontrarás estructuras conceptuales para casi cada rubro:
http://www.databaseanswers.org/data_...all_models.htm
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: Ninguno
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:21.