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

Duda de optimizacion

Estas en el tema de Duda de optimizacion en el foro de Mysql en Foros del Web. Hola a todos. Soy mas que nuevo en estos temas y ando algo perdido , he leido y sigo leyendo, pero os queria preguntar a ...
  #1 (permalink)  
Antiguo 08/09/2012, 13:41
 
Fecha de Ingreso: septiembre-2012
Mensajes: 3
Antigüedad: 11 años, 7 meses
Puntos: 0
Duda de optimizacion

Hola a todos.

Soy mas que nuevo en estos temas y ando algo perdido , he leido y sigo leyendo, pero os queria preguntar a ver si alguien me puede dar algun consejo.

Empiezo y digo que es lo que quiero crear.

No se si crear una tabla llamada

datosglobal : cuyos campos seran : nameplayer , equipo , goles, posicion

donde tengo que meter 500 nameplayers, osea 500 filas

o crear una tabla para cada jugador,creando asi 500 tablas.


Todo esto iria relacionado con otras 38 tablas llamada Jornadas, desde JORNADA1 A JORNADA 38 con los siguientes campos : temporada, nameplayer, casa,fuera

Lo que quiero saber que estructura seria mas optima en cuanto a acceso y busquedas.

1 tabla por cada jugador ( 500 jugadores) = 500 tablas

1 tabla global con 500 filas

un saludo y gracias y no os corteis al darme palos, se acepta todo lo que me digais, tutoriales, mas guias, mas lecturas.

GRACIAS.
  #2 (permalink)  
Antiguo 08/09/2012, 16:50
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: Duda de optimizacion

Cita:
Lo que quiero saber que estructura seria mas optima en cuanto a acceso y busquedas.
Bueno, la que estás proponiendo está mal de entrada, porque en tu contexto, 38 tablas iguales, cuya diferencia es a qué "jornada" corresponden los datos, es un error muy grave.
Lo que tienes, en todo caso, es un esquema algo más complejo pero eficiente donde existe una sola entidad "jornada", con atributos tales que te permita identificar a qué jornada corresponde.
Necesitas avanzar el estudio de los fundamentos del diseño antes de crear esquemas un poco complejos.
Diseñar una base no es crear tablas, solamente. Las tablas deben responder a las bases del modelo Entidad-Relación.
__________________
¿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 09/09/2012, 03:46
 
Fecha de Ingreso: septiembre-2012
Mensajes: 3
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: Duda de optimizacion

Gracias por contestar, captado lo del error muy grave, a mi m parecia que no estaba bien,pero no veia otra opcion,pq tengo q tener datos de 500 jugadores en cada una de las jornadas, serian 38 campos mas los campos de datos q quierro guardar.

Gracias por el tiempo prestado.

Saludos.
  #4 (permalink)  
Antiguo 09/09/2012, 06:23
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: Duda de optimizacion

Cita:
pq tengo q tener datos de 500 jugadores en cada una de las jornadas, serian 38 campos mas los campos de datos q quierro guardar.
Tampoco. Es una sola tabla con dos, tres, cuatro campos o poco más, dependiendo de la descripción y las relaciones que se necesiten establecer...
Posiblemente alguna que otra tabla relacional, pero no es como lo estás pensando.
Pero para poder darte una idea mas detallada necesitaría que os explicases algunos detalles mas acerca de los juegos, las reglas, y los modos de juego.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 09/09/2012, 10:34
 
Fecha de Ingreso: septiembre-2012
Mensajes: 3
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: Duda de optimizacion

Cita:
Iniciado por gnzsoloyo Ver Mensaje
Tampoco. Es una sola tabla con dos, tres, cuatro campos o poco más, dependiendo de la descripción y las relaciones que se necesiten establecer...
Posiblemente alguna que otra tabla relacional, pero no es como lo estás pensando.
Pero para poder darte una idea mas detallada necesitaría que os explicases algunos detalles mas acerca de los juegos, las reglas, y los modos de juego.
Bueno intentare decirte que es lo que quiero a ver si soy medianamente capaz.

Un JUGADOR debe tener estos datos :

'nombrejug','equipo','posicion','precio','precioma x','preciomin'

nombre, es fijo, los demas pueden ir variando aunque posicion y equipo casi siempre seran los mismos salvo traspasos.

una JORNADA deberia tener estos datos : 'temporda', 'nombrejug','puntos','estado'

los puntos se asiganan mediante su actuacion en el partido, y el estado es si esta sancionado, lesionado o activo.

tengo que tener las 38 jorndas de liga y los aprx 500jugadores que hay en la liga , a razon de 24jugadores por equipo.

En principio esos serian los datos, apra mas adelante poder incluir mas, pero primero me tengo que aclarar con esto que es lo basico.

Aqui empieza el dilema, pq no se como organizar esto para que este bien, pq todo lo que pienso esta mal, asi que toda ayuda es buena, aunque tengo mas que claro que debo sentar los fundamentos mucho mejor pq se ve a primera vista que no tengo asentado nada bien. Asi que sigo leyendo aunque toda ayuda como digo me vendra de perlas.


Gracias y se aceptan todos los consejos.
  #6 (permalink)  
Antiguo 12/09/2012, 08:40
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: Duda de optimizacion

Bueno, mira, por los datos que das voy a tener que hacer algunas hipótesis e inferencias para establecer cómo sería un esquema de entidades y relaciones cumpla con tus necesidades. Puede que algunas cosas te parezcan obvias, pero lo obvio es también parte del sistema, y debe ser explicitamente analizado y construido. Es inevitable por necesidades de diseño.
Cita:
- Hay una liga deportiva que realiza campeonatos (anuales o no).
- En cada campeonato participan una cantidad determinada de equipos, que deben de de la inscripción al mismo.
- Cada campeonato debe constar de una cantidad fija de jornadas, y cada equipo participa obligatoriamente de todas ellas.
- Cada equipo debe constar de una cantidad determinada de jugadores registrados.
- Cada jugador puede participar de diferentes Jornadas y debe recibir puntaje por desempeño en cada una de las que juegue.
- Cada jugador en una jornada registra en qué puesto jugó dentro de su equipo.
- Cada jugador puede haber pertenecido a diferentes equipos a lo largo de su permanencia en la Liga donde juega.
- Cada jugador tiene un valor de pase entre equipos que puede sufrir variaciones en el tiempo.
- Cada pase debe registrarse con fecha de pase y registro de valor del pase.
Un esquema de tablas para adminsitrar todas estas condiciones podría ser:
Cita:
Equipo(equipo_id, nombre, direccion, ...)
Jugador(jugador_id, nombre, apellido, fecha_nac, ...)
Liga(liga_id, denominacion, domicilio_sede, ...)
Campeonato(campeonato_id, denominación, nro_campoenato, f_inicio, f_final, ...)
Jornada(nro_jornada, campeonato_id, fecha_jornada, cumplida)
Jugador_Equipo(equipo_id, jugador_id, ingreso, egreso)
Jugador_PrecioPase(jugador_id, fecha_alta, fecha_baja, precio_pase)
Equipo_Liga(liga_id, equipo_id, fecha_ingreso, fecha_baja)
Equipo_Campeonato(campeonato_id, equipo_id, ...)
Jugador_En_Jornada(jugador_id, nro_jornada, puesto_id,
puntos_jornada, gol_f, gol_c, infracc_g, infracc_l, ...)
PuestosJugador(puesto_id, descripcion, ...)
Al menos yo empezaría con un esquema como ese, al que posiblemente haya que depurar, pero respondería todas las consultas sin mayores complicaciones. Al menos eso me parece a vuelo de pájaro.
Esta noche me fijo si el esquema, graficado, muestra alguna inconsistencia o falta.

Este esquema básico está pensado para el caso de una o más ligas deportivas. Por cuestiones de diseño funcional, jamás debes armar una base de datos donde la organización sea tácita, es decir, donde no haya una tabla que contenga los datos de la organización base.
Esto es válido aunque la base fuese diseñada para una única empresa. De todos modos se coloca la tabla "Empresa", que en realidad conserva un único registro, por extraño que te parezca.
Ciertas tablas como la de PuestosJugador, o cosas así, son lo que se denomina "tablas fijas", y su objetivo es contener datos constantes que se usarán siempre así, por la misma razón antedicha: Ventajas funcionales.
__________________
¿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; 12/09/2012 a las 09:06

Etiquetas: tabla, campos
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 00:15.