Skip site navigation (1) Skip section navigation (2)

Re: regexp en pgsql

From: Anthony <asotolongo(at)uci(dot)cu>
To: Gino Rojas Tillemann <gino(at)masnet(dot)cl>
Cc: Juan <smalltalker(dot)marcelo(at)gmail(dot)com>, pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: regexp en pgsql
Date: 2011-06-28 19:56:57
Message-ID: 4E0A3209.6090006@uci.cu (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
On 28/06/11 15:48, Gino Rojas Tillemann wrote:
> Hola Juan, si hago eso tendría que crear 3.200 indices para esa tabla, 
> ademas no necesariamente voy a actualizar el registros 1 al 10mil 
> podría ser del 8mil al 15mil etc...
>
> ahora voy a crear la misma función en C para ver si así logro mejores 
> resultados con el procesamiento del texto.
>
> alguna otra idea?
> sld2
>
> El 28 de junio de 2011 15:41, Juan <smalltalker(dot)marcelo(at)gmail(dot)com 
> <mailto:smalltalker(dot)marcelo(at)gmail(dot)com>> escribió:
>
>     Hola gente
>     Gino por lo que veo en tu query te convendria tener un index en la
>     expresion where
>     o sea my_table tenga un index con where .
>     o mejor.
>
>     create index my_nombre_de_index on mytable( id ) where id between
>     1 and 10000 ;
>     eso generalmente acelera las cosas.
>     salvo claro esta q ya lo tengas
>     salu2
>     mdc
>
>
>     2011/6/28 Gino Rojas Tillemann <gino(at)masnet(dot)cl
>     <mailto:gino(at)masnet(dot)cl>>
>
>         Hola a todos,
>
>         hace un par de semanas estoy peleando con mi DB y las
>         expresiones regulares, cada vez que proceso 10 mil registros
>         de un universo de 32 millones el motor demora 7 minutos
>         pegados sin variación en procesar una cadena de texto por cada
>         registro; para lograr esto creé una función en plpgsql con (de
>         momento) 40 expresiones regulares (en algunos casos bastante
>         complejas) y actualizo un campo de una tabla con el resultado
>         del proceso, algo como esto:
>
>         update my_table set
>         campo_final=fn_regexp(campo1||campo2||campo3) where id between
>         1 and 10000
>
>         la función "fn_regexp" contiene la lógica de las expresiones
>         regulares y la tabla my_table es de 32 millones de registros
>
>         si alguien tiene alguna idea de como optimizar la ejecución de
>         las expresiones regulares será de gran ayuda, gracias..
>
>         haaa y por fa no me sugieran crear varios threads con otro
>         lenguaje ya que lo que busco es bajar mis actuales 7 minutos
>         de proceso
>
>
>         saludos
>
>         -- 
>         Gino Rojas Tillemann
>
>
>
>
>
> -- 
> Gino Rojas Tillemann
tienes algún criterio que te pueda servir para particionar la tabla? 
pues el particioamiento te puede ayudar.
saludos

In response to

Responses

pgsql-es-ayuda by date

Next:From: Gino Rojas TillemannDate: 2011-06-28 19:59:29
Subject: Re: regexp en pgsql
Previous:From: JuanDate: 2011-06-28 19:51:48
Subject: Re: regexp en pgsql

Privacy Policy | About PostgreSQL
Copyright © 1996-2014 The PostgreSQL Global Development Group