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

criterio para niveles virtuales?

Estas en el tema de criterio para niveles virtuales? en el foro de Bases de Datos General en Foros del Web. Hola a todos. Veréis, tengo una duda relacionado con Bases de datos. Tengo entendido que en los SGBD existen tres niveles, que son: Nivel Fisico ...
  #1 (permalink)  
Antiguo 14/05/2011, 10:09
 
Fecha de Ingreso: marzo-2010
Mensajes: 191
Antigüedad: 14 años, 8 meses
Puntos: 3
Pregunta criterio para niveles virtuales?

Hola a todos.

Veréis, tengo una duda relacionado con Bases de datos. Tengo entendido que en los SGBD existen tres niveles, que son:
  • Nivel Fisico
  • Nivel Logico
  • Nivel Virtual

El Fisico sería la parte más física relacionado con la base de datos (pagina, extension, fichero, etc...)
El Lógico sería la base de datos en sí, donde se almacenan las tablas, campos, etc...

Pero.... y el nivel virtual? Tengo entendido que es como una especie de pasarela entre el nivel físico y el lógico para que haya una buena optimización a la hora de mostrar los datos, ya que te los página.

Y para ello, hay unos cuantos tipos de niveles virtuales y que son:
  • Nivel virtual de tablas
  • Nivel virtual de fragmentación
  • Nivel virtual de agrupación
  • Nivel virtual de objetos grandes
  • Nivel virtual de indices

Ahora bien, si yo tengo una base de datos con sus tablas, etc... que criterio se debería de seguir para poner las tablas en según que otro nivel virtual?

Imaginad el siguiente supuesto.

Tabla A --> millones de filas y ocupa un espacio de 2 GB
Tabla B --> 10.000 filas aprox i ocupa un espacio de 700 KB

Ahora bien, la clave foranea de B es clave primaria de A, es decir, cuando hago consultas con la tabla A, coge el ID de la tabla B.

Como es lógico, el nivel virtual a utilizar en la tabla A es el nivel de fragmentación, para que la base de datos fragmente la tabla en cuantas páginas necesite.

Ahora bien, cual seria el nivel virtual de la Tabla B, teniendo en cuenta que la utiliza la tabla A?. Tendría sentido poner esta tabla en el nivel virtual de tablas, debido que ocupa poco espacio. Pero como es una tabla que utiliza mucho la Tabla A, no tendría sentido que también estuviera en el nivel virtual de fragmentación para que tuviese un acceso rápido a los datos?

No se si se me entiende mucho, por eso agradecería que si no se me entiende, me lo comentéis a ver si pudiera explicarme mejor.

La verdad que los niveles virtuales es un concepto que no termino de entender, más que nada por la compartición de datos y porque se trata de un nivel abstracto...

Muchas gracias por la ayuda.

Un saludo

Última edición por Fernando_net; 14/05/2011 a las 10:12 Razón: corrección

Etiquetas: niveles, virtuales, bases-de-datos
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 11:04.