esta respuesta me gustó :) tenía la idea de que plpgsql era más rápido, incluso estaba creando una en C para probar la velocidad..
voy a crear la función ahora y ver que tanto puede mejorar con plperl gracias! El 28 de junio de 2011 19:05, Jaime Casanova <ja...@2ndquadrant.com>escribió: > Gino Rojas Tillemann <g...@masnet.cl> 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 > -- Gino Rojas Tillemann