Gino Rojas Tillemann <[email protected]> writes:

> 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
>

has intentado reescribir la funcion fn_regexp() en plperl? suele ser
mejor para el uso de cadenas que plpgsql

-- 
Jaime Casanova         www.2ndQuadrant.com
Professional PostgreSQL 
Soporte 24x7, desarrollo, capacitación y servicios
-
Enviado a la lista de correo pgsql-es-ayuda ([email protected])
Para cambiar tu suscripci�n:
http://www.postgresql.org/mailpref/pgsql-es-ayuda

Responder a