Lentitud al Abrir Bases de Datos

Post Reply
derpipu
Posts: 93
Joined: Tue Mar 28, 2006 4:09 pm
Location: Tequila, Jalisco Mexico
Contact:

Lentitud al Abrir Bases de Datos

Post by derpipu »

Hola a todos, tengo un sistema con una base de datos que tiene mas de 600, 000 registros, que la primera vez que se abre en cualquier proceso tarda hasta 7 segundos en abrirla, lo he probado midiendo cuando entra a la funcion para abrirla y que no es mas que

Code: Select all

 use algo shared new 
y veo que llega hasta ese tiempo para abrirla, pero lo curioso es que si cierro ese dialogo y obviamente cierro todas las areas abiertas, cuando lo vuelvo a abrir no tarda ni un segundo...

Uso el xHarbour que nos proporciona Antonio Linares..

Espero que alguien pueda darme una orientacion..

Saludos
Luis Fernando Rubio Rubio
User avatar
sysctrl2
Posts: 833
Joined: Mon Feb 05, 2007 7:15 pm
Contact:

Post by sysctrl2 »

de _ se conforma tu base.dbf ?

tienes campos memos ?


usas ntx o cdx ?

saludos..
Cesar Cortes Cruz
SysCtrl Software
Mexico

' Sin +- FWH es mejor "
derpipu
Posts: 93
Joined: Tue Mar 28, 2006 4:09 pm
Location: Tequila, Jalisco Mexico
Contact:

Post by derpipu »

11 campos tiene la bd, 600,000 son los registros, utilizo CDX con xHarbour, pero como te comento solo la primera vez que se abren esas dbf tarda alrededor de 7 segundos, y si la vuelvo a abrir de nuevo, lo hace casi inmediatamente...

es un caso para la araña definitivamente..

Gracias
Luis Fernando Rubio Rubio
derpipu
Posts: 93
Joined: Tue Mar 28, 2006 4:09 pm
Location: Tequila, Jalisco Mexico
Contact:

Post by derpipu »

ahh se me olvidaba no tiene campos memo..

Saludos
Luis Fernando Rubio Rubio
User avatar
Armando
Posts: 2479
Joined: Fri Oct 07, 2005 8:20 pm
Location: Toluca, México
Contact:

Post by Armando »

Luis Fernando:

Nomas por no dejar, y si antes de abrir la DBF por primera vez primero cierras todas las áreas abiertas ???

Saludos
SOI, s.a. de c.v.
estbucarm@gmail.com
http://www.soisa.mex.tl/
http://sqlcmd.blogspot.com/
Tel. (722) 174 44 45
Carpe diem quam minimum credula postero
User avatar
tosko
Posts: 28
Joined: Sat Oct 29, 2005 12:01 am
Location: Puerto Vallarta MX
Contact:

apertura de dbfs

Post by tosko »

puedes ser un poquito mas especifico con codigo para ver como haces tu proceso de apertura antes y despues...


Saludos
User avatar
lubin
Posts: 404
Joined: Fri Dec 09, 2005 12:41 am
Location: Lima, Peru
Contact:

Re: Lentitud al Abrir Bases de Datos

Post by lubin »

Hola derpipu

Una idea fuera del FWh.. que me paso a mi con unas dbf. grandess.. el motivo fue que el disco duro donde estan los datos este muy fragmentado, sobre todo si la base de datos es grandees.. pues a la primera se demora cargar el archivo . las otras veces los mantiene en cache y es mas rapida.. prueba desfragmentar el disco y probar como va.


suerte
lubin
User avatar
joseluisysturiz
Posts: 2024
Joined: Fri Jan 06, 2006 9:28 pm
Location: Guatire - Caracas - Venezuela
Contact:

Post by joseluisysturiz »

Solo por curiosidad, no sera que cuando la abres por primera ves estaras haciendo una generacion de indices...y por eso es lenta...yo lo hago asi porque el sistema aun no esta en red....como dice el colega....coloca algo de codigo a ver si asi te ayudamos mas.
Dios no está muerto...

Gracias a mi Dios ante todo!
hmpaquito
Posts: 1200
Joined: Thu Oct 30, 2008 2:37 pm

Post by hmpaquito »

probablemente tengas muchos deleted...
necesitaras un PACK
derpipu
Posts: 93
Joined: Tue Mar 28, 2006 4:09 pm
Location: Tequila, Jalisco Mexico
Contact:

Post by derpipu »

Hola a todos, les agradezco sus opiniones, les comento que el sistema tiene un proceso que dia a dia obligatoriamente regenera indices y hace un pack de las db's, ahora bien la base de datos es de 45 megas y tiene casi 600,000 registros, les adjunto el codigo con el que abro la base de datos...

Code: Select all

function net_use( pcBaseDatos, plExclusivo, pcAlias, pcRuta, plOkDbf )
  Local lContinuar := .F.
  local oError

  local nInicio := seconds()

  default pcAlias := cFileNoExt(pcBaseDatos), plExclusivo := .F., pcRuta := "", plOkDbf := .F.//, pcBaseDatos := cFileNoExt(pcBaseDatos)

  if plOkDbf
    if ! lOkDbf( pcRuta + pcBaseDatos ); return(lContinuar); endif
  endif

  if plExclusivo
      use (pcRuta + pcBaseDatos) alias (pcAlias) exclusive new
  else
      use (pcRuta + pcBaseDatos) alias (pcAlias) shared new
  endif

  if ! netErr()
    lContinuar := .T.
    (pcAlias)->(ordSetFocus(1))
  else
    MsgStop("La base de datos: " + Upper(pcBaseDatos) + ".DBF, no puede ser procesada" + CRLF +;
            "llame a su asesor de Informatica..." , oApp:cEmpresa)
  endif

//  ? seconds() - ninicio
return(lContinuar)
Lo mas chistoso es que solo la primera vez que la abro y en algunas ocasiones estoy viendo tarda esos 7 segundos y ya despues lo hace inmediato, incluso esa bd la abro con el dbu y la abre rapidisimo..

Saludos
Luis Fernando Rubio Rubio
User avatar
Ricardo Ramirez E.
Posts: 161
Joined: Wed Jan 25, 2006 10:45 am
Location: Praia - Cape Verde
Contact:

Post by Ricardo Ramirez E. »

derpipu :

Lo mas chistoso es que solo la primera vez que la abro y en algunas ocasiones estoy viendo tarda esos 7 segundos y ya despues lo hace inmediato, incluso esa bd la abro con el dbu y la abre rapidisimo..
Que bueno que lo tomes como un chiste :lol:

Pegunta...

Cuando te refieres a abrir x primera vez .. te refieres a que ejecutas la aplicacion y demora en abrir... ?

O a abrirlo directamente con el DBU ?

Te pregunto esto .. pq tengo he notado que mi antivirus hace lenta la primera ejecucion de las aplicaciones FHW+xHarbour, pero eso solo en la primera ejecucion.
Saludos
Ricardo R.
xHarbour 1.1.0 Simplex , Microsoft Visual Studio 2008, Bcc55, Fwh Build. 9.01
Carlos Mora
Posts: 988
Joined: Thu Nov 24, 2005 3:01 pm
Location: Madrid, España

Post by Carlos Mora »

La dbf esta en el mismo equipo o en un servidor? Si esta en un servidor, prueba deshabilitando los optimistics locks.

Un saludo
derpipu
Posts: 93
Joined: Tue Mar 28, 2006 4:09 pm
Location: Tequila, Jalisco Mexico
Contact:

Post by derpipu »

Hola a todos, primero que nada les agradezco sus amables comentarios, les comento que el comportamiento es igual en local y en red, entonces yo creo que va a ser mas factible lo que me comentan que posiblemente sea mi antivirus, uso el Kaspersky Internet Security, y creo que las estaciones que la usan el mismo antivirus...

Saludos

Noticia de Ultima Hora, deshabilite mi Antivirus y funciono rapidisimo... al parecer el antivirus esta al tanto de todos y cada uno de los archivos que se abren en mi equipo..

les agradezco a todos por su tiempo...

Gracias
Luis Fernando Rubio Rubio
User avatar
joseluisysturiz
Posts: 2024
Joined: Fri Jan 06, 2006 9:28 pm
Location: Guatire - Caracas - Venezuela
Contact:

Post by joseluisysturiz »

derpipu wrote:Hola a todos, primero que nada les agradezco sus amables comentarios, les comento que el comportamiento es igual en local y en red, entonces yo creo que va a ser mas factible lo que me comentan que posiblemente sea mi antivirus, uso el Kaspersky Internet Security, y creo que las estaciones que la usan el mismo antivirus...

Saludos

Noticia de Ultima Hora, deshabilite mi Antivirus y funciono rapidisimo... al parecer el antivirus esta al tanto de todos y cada uno de los archivos que se abren en mi equipo..

les agradezco a todos por su tiempo...

Gracias
Bajale el nivel de seguridad al antivirus, ya que eso mismo lo hace PANDA, y quita el FIREWALL DE WINDOWS , deja solo el del antivirus...saludos... :shock:
Dios no está muerto...

Gracias a mi Dios ante todo!
User avatar
pymsoft
Posts: 383
Joined: Tue Oct 11, 2005 1:01 pm
Location: Savona - Italia
Contact:

Post by pymsoft »

Luis,

Nosotros con Kaspersky, deshabilitamos siempre el control a nuestro programa. Eso hace que no controle nada de lo que nuestro programa hace o abre. Hay que hacerlo en cada estacion donde tengas instalado el antivirus y uses tu programa.
En exclusiones o algo asi en español lo deberias encontrar, y ahi le pones todo lo que no quieres que el antivirus controle.


Saludos
Pedro Gonzalez
Post Reply