Re: [PHP-ES] [MYSQL] Base de datos grande

From: Tadeo Granese ( tgranese .en. frro.utn.edu.ar)
Date: Wed Apr 28 2004 - 21:18:00 CEST


Hola

A mi me parece que Pablo tiene razon. Por lo que veo no es una tabla grande.
Tendrias que indexar los campos que mas se utilizan para la busqueda. Si tenes
problemas para poner los indices podes probar con alguna aplicacion visual. Yo
uso DBDesigner, es rapida y te permite ingenieria inversa.

-- 
Saludos Tadeo
informacion <info .en. guatemalanetworks.com> dijo:
> Hola,
> 
> Es una aplicacion donde guarda todos los juicios , tiene la complicacion que
> existen varios campos llave, por lo que tengo una id para hacer
> modificaciones o borrado de ese registro, y el resto es una combinacion de
> filtrado por diferentes campos.
> 
> el campo numero es el id, pero que no puedo usar para las comparaciones.
> 
> El campo llave real es no_juicio +oficial+fecha_ingreso+juzgado , ya que por
> ejemplo podrian repetirse numeros de juicios en diferentes juzgados y segun
> el año, por lo que siempre tiene que comprobar esos 4 campos para verificar
> el juicio.
> 
> CREATE TABLE `juicios` (
>   `fecha_ingreso` date NOT NULL default '0000-00-00',
>   `no_juicio` varchar(15) NOT NULL default '',
>   `oficial` int(2) NOT NULL default '0',
>   `demandados` text NOT NULL,
>   `actores` text NOT NULL,
>   `clase_juicio` varchar(130) NOT NULL default '',
>   `juzname_tmp` varchar(100) NOT NULL default '',
>   `depto` varchar(5) NOT NULL default '',
>   `fecha_proceso` date NOT NULL default '0000-00-00',
>   `fecha_edicion` date default NULL,
>   `numero` int(10) NOT NULL auto_increment,
>   `juzgado` int(3) NOT NULL default '0',
>   `area` int(3) NOT NULL default '0',
>   `operador` int(2) NOT NULL default '0',
>   `qc` char(1) NOT NULL default '',
>   `qf_fecha` date NOT NULL default '0000-00-00',
>   `hora_edicion` time NOT NULL default '00:00:00',
>   UNIQUE KEY `numero` (`numero`)
> ) TYPE=MyISAM;
> 
> saludos
> Christian
> 
> 
> ----- Original Message -----
> From: "Pablo E. Siciliano" <psiciliano .en. puentenet.com>
> To: "informacion" <info .en. guatemalanetworks.com>
> Cc: <php-es .en. lists.php.net>
> Sent: Wednesday, April 28, 2004 12:42 PM
> Subject: Re: [PHP-ES] [MYSQL] Base de datos grande
> 
> 
> 400.000 registros no es una tabla grande, ni siquiera para mysql (Vi
> funcionando sin problemas consultas con un par de millones de registros, en
> una maquina que no pasaba de respetable).
> 
> Lo que no me convence mucho de tu problema es eso de que generar un indice
> es un lio ... Me da la impresión de que es por ahí que le estas errando. Y
> vas a tener el mismo problema en Postgres, Oracle, Informix, MS Sql o
> absolutamente cualquier otro motor.
> 
> ¿No querías pasar las consultas que estas tratando de hacer, y un dump de la
> estructura de la tabla, para aconsejarte como hacerlo?
> 
> ----- Original Message -----
> From: "informacion" <info .en. guatemalanetworks.com>
> To: <php-es .en. lists.php.net>
> Sent: Wednesday, April 28, 2004 12:58 PM
> Subject: [PHP-ES] [MYSQL] Base de datos grande
> 
> 
> > Hola,
> >
> > La cuestion es que tengo una base de datos que tiene una tabla con 400.000
> > registros.
> >
> > Se hace bastante lenta la busqueda, no puedo usar un campo llave ya que la
> > busqueda depende de bastantes factores, estaba pensando en separar todos
> los
> > registros por año y guardalo en tablas diferentes, pero por otra parte la
> > busqueda seria un lio, ya que tendria que combinar las tablas para hacer
> una
> > busqueda general.
> >
> > Alguna idea de como manejar tantos registros, y acelerar la busqueda?
> >
> > Saludos
> > Christian
> >
> 
> -- 
> PHP Spanish Localization Talk Mailing List (http://www.php.net/)
> To unsubscribe, visit: http://www.php.net/unsub.php
> 
-- 
PHP Spanish Localization Talk Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php


This archive was generated by hypermail 2.1.7 : Fri May 14 2004 - 16:04:51 CEST