Autor Tema: El servidor esta tardando mucho.  (Leído 666 veces)

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado datobinario

  • Novato
  • *
  • Mensajes: 10
  • Puntuación: 0
  • Sexo: Masculino
    • Ver Perfil
    • @datobinario
El servidor esta tardando mucho.
« : 25 de marzo de 2010, 09:36:16 am »
Saludos,
Resulta que tengo dos tablas:
Indice(codigo, nombre, bio)
datos(codigo, ab, jj, c, h, 2b, etc, etc, etc)
los campos código de cada tabla estan relacionados.
El problema es que cuando ejecuto mi consulta, el servidor se tarda hasta 30 seg en responder, eso es demasiado.
mi consulta es:
SELECT INDICE.NOMBRE, AB, JJ, C, H 2B, ETC, ETC, ETC FROM INDICE, DATOS WHERE INDICE.CODIGO=DATOS.CODIGO;
la tabla indice tiene unas 5000 lineas, y la tabla datos unas 14000 lineas.
la verdad no se porque se tarda tanto en estas consultas, y solo pasa cuando utilizo relaciones tipo indice.ejemplo y cosas así.

PD: Debo destacar que cuando cree las tablas no relacione los códigos.
Quien no pregunta, simplemente tiene miedo de aprender...

Desconectado homergarcia

  • Usuario Junior
  • **
  • Mensajes: 77
  • Puntuación: 0
  • Sexo: Masculino
    • Ver Perfil
    • SERVINTEC
Re: El servidor esta tardando mucho.
« Respuesta #1 : 25 de marzo de 2010, 01:43:37 pm »
Hola debes de relacionar los códigos entre las tablas y además es recomendable que le crees sus respectivos indices a las tablas de este modo garantizas mayor rapidez a la hora ejecutar consultas sobre las mismas.

Suerte.

Desconectado datobinario

  • Novato
  • *
  • Mensajes: 10
  • Puntuación: 0
  • Sexo: Masculino
    • Ver Perfil
    • @datobinario
Re: El servidor esta tardando mucho.
« Respuesta #2 : 25 de marzo de 2010, 01:51:40 pm »
Hola debes de relacionar los códigos entre las tablas y además es recomendable que le crees sus respectivos indices a las tablas de este modo garantizas mayor rapidez a la hora ejecutar consultas sobre las mismas.
Suerte.
como relaciono los codigos? de hecho ellos están relacionados, en indice.codigo, no hay repeticiones..
no entiendo lo de los indices...
Quien no pregunta, simplemente tiene miedo de aprender...

Desconectado ashrey

  • Fanático
  • ****
  • Mensajes: 431
  • Puntuación: 7
  • Sexo: Masculino
  • Wombat Team
    • Ver Perfil
    • Blog de ABerroteran
Re: El servidor esta tardando mucho.
« Respuesta #3 : 25 de marzo de 2010, 03:17:20 pm »
Primero que base de datos usas? donde está el servidor?

El indice es una especie de mapa que ayuda a acelerar las búsquedas en las bases de datos, con un administrador GUI es muy fácil de crear

Desconectado homergarcia

  • Usuario Junior
  • **
  • Mensajes: 77
  • Puntuación: 0
  • Sexo: Masculino
    • Ver Perfil
    • SERVINTEC
Re: El servidor esta tardando mucho.
« Respuesta #4 : 25 de marzo de 2010, 04:26:14 pm »
Hola si entiendo que no esten repetidos pero es bueno que crees los constraint o claves foraneas entre las tablas de modo que la integridad referencial se garantize en el servidor de bd, independientemente del servidor esto es necesario para una base de datos.

En relación a los indices como menciona ashrey es fácil la creación de los indices a través de una herramienta gráfica, igual si lo prefieres hacer por código consulta un manual de sql standar.

Espero esto aclare un poco tu duda.

Saludos

Desconectado kadore

  • Novato
  • *
  • Mensajes: 22
  • Puntuación: 0
  • Sexo: Masculino
  • Kadore
    • Ver Perfil
    • Web Personal
Re: El servidor esta tardando mucho.
« Respuesta #5 : 26 de marzo de 2010, 09:25:03 am »
Una Opinion .....

Saludos amigos.

Creo que si tienes toda la estructura de tu código bien desarrollada tomando en cuenta todo aquello para optimizar la velocidad de respuesta y haciéndole el manteamiento respetivo diario a tu base de datos debería correr bien la aplicación, quiero aprovechar este post para publicar lo siguiente ya que la velocidad de respuesta de un server también depende del tipo de conexión del un usuario en la red.

La Desventaja de las Medias del Gobierno Nacional para el control de la Red.


A la expectativa, sin mucha información sobre eso, lo más probable de ser cierto, es que la calidad de la conexión en Venezuela va a decaer en calidad, velocidad, y se verán afectados todos los servicios que sean utilizados en el país, sin excepción.

Hoy en día sin el punto único de conexión es una realidad, nuestros servidores están en Estados Unidos con conexiones de entre 100 y 1000 mbps, sin embargo, cualquier usuario en Venezuela solo logra aprovechar un promedio de 10 mbps en el mejor de los casos dado que la conexión en Venezuela no es aun de tan alta calidad, si a eso le sumamos un punto único, o un filtro activo, solo va a enlentecer la conexión, sin agregar a esto que pudiesen o no filtrar contenidos lo que haría simplemente desaparecer los accesos a contenidos en la web.

De momento espero que no ocurra y por el contrario, que se agreguen nuevos puntos para balancear la entrada y salida de datos en Venezuela y mejore la calidad.

Palabras de un Proveedor de Hosting para Venezuela.

Desconectado datobinario

  • Novato
  • *
  • Mensajes: 10
  • Puntuación: 0
  • Sexo: Masculino
    • Ver Perfil
    • @datobinario
Re: El servidor esta tardando mucho.
« Respuesta #6 : 26 de marzo de 2010, 10:06:26 am »
Mi base de datos es MySQL, si pudieran mostrarme alguna herramienta que me facilite el proceso que me recomiendan estaría agradecido.

Otra cosa, mi servidor esta en mi PC, allí hago las pruebas y luego es que me subo a la WEB, así que lo que dice el pana kadore, esta lejos, muy lejos de ser mi problema, ya he hecho pruebas en la WEB, y la velocidad de respuesta no varia, ni mas ni menos lenta.

probablemente seo eso que dicen de que mis tablas no están referenciadas, el problema es que nunca antes hice un trabajo con tablas tan largas, y nunca fue necesario referenciar, entonces estoy en pañales con el tema...

Saludos, Gracias por su colaboración.
Quien no pregunta, simplemente tiene miedo de aprender...

Desconectado ashrey

  • Fanático
  • ****
  • Mensajes: 431
  • Puntuación: 7
  • Sexo: Masculino
  • Wombat Team
    • Ver Perfil
    • Blog de ABerroteran
Re: El servidor esta tardando mucho.
« Respuesta #7 : 26 de marzo de 2010, 11:24:34 am »
Pues bájate el archifamoso PHPMyAdmin ( personalmente no me gusta) o el SQLBuddy, ambos son gestores gráfico de bases de datos que corren en PHP (vía Browser). De ahí puedes crear fácilmente los indices

Desconectado datobinario

  • Novato
  • *
  • Mensajes: 10
  • Puntuación: 0
  • Sexo: Masculino
    • Ver Perfil
    • @datobinario
Re: El servidor esta tardando mucho.
« Respuesta #8 : 26 de marzo de 2010, 12:22:25 pm »
OK, voy a aplicar sus recomendaciones, y les cuento como me Fue, gracias a todos por colaborar...
Quien no pregunta, simplemente tiene miedo de aprender...

Desconectado cyberjunior

  • Usuario Junior
  • **
  • Mensajes: 53
  • Puntuación: 1
    • Ver Perfil
Re: El servidor esta tardando mucho.
« Respuesta #9 : 27 de marzo de 2010, 08:32:24 am »
Buen Día.-

1.- Crea los indices a las tablas que estas usando
2.- Particularmente uso JOIN para hacer consultas de varias tablas, en alguna parte leí que los JOINS eran mas rápidos, por ejemplo
"SELECT INDICE.NOMBRE, AB, JJ, C, H 2B, ETC, ETC, ETC FROM INDICE JOIN DATOS ON  INDICE.CODIGO=DATOS.CODIGO;"

3.- Me parece que tus tablas son tablas maestras, de ser así considera tener una tabla de relación en donde (valga la redundancia) relaciones las filas de una tabla con la otra, de esta forma al querer consultar simplemente consultas las tabla de relación la cual es una sola y a partir de los resultados obtenidos obtienes el detalle de dichas filas que se encuentren en las otras dos tablas.

Saludos.-
Lic. Luis Vásquez

Desconectado datobinario

  • Novato
  • *
  • Mensajes: 10
  • Puntuación: 0
  • Sexo: Masculino
    • Ver Perfil
    • @datobinario
Re: El servidor esta tardando mucho.
« Respuesta #10 : 29 de marzo de 2010, 09:49:44 am »
Buen Día.-

1.- Crea los indices a las tablas que estas usando
2.- Particularmente uso JOIN para hacer consultas de varias tablas, en alguna parte leí que los JOINS eran mas rápidos, por ejemplo
"SELECT INDICE.NOMBRE, AB, JJ, C, H 2B, ETC, ETC, ETC FROM INDICE JOIN DATOS ON  INDICE.CODIGO=DATOS.CODIGO;"

3.- Me parece que tus tablas son tablas maestras, de ser así considera tener una tabla de relación en donde (valga la redundancia) relaciones las filas de una tabla con la otra, de esta forma al querer consultar simplemente consultas las tabla de relación la cual es una sola y a partir de los resultados obtenidos obtienes el detalle de dichas filas que se encuentren en las otras dos tablas.

Saludos.-

Hermano muy agradecido, solo basto ajustar la consulta a tu sugerencia "INDICE JOIN DATOS ON  INDICE.CODIGO=DATOS.CODIGO" y los resultados son impresionantes, Gracias de verdad.
Sin embargo estoy estudiando sobre las otras sugerencias, para mejorar aun mas.
Repito, usar el join es realmente mas rápido, tomen eso en cuenta para futuros trabajos.
Quien no pregunta, simplemente tiene miedo de aprender...

PHP de Venezuela

Re: El servidor esta tardando mucho.
« Respuesta #10 : 29 de marzo de 2010, 09:49:44 am »

 

PHP de Venezuela on Facebook