RE: Estrategias de Optimizacion

From: "Fernando Hevia" <fhevia(at)ip-tel(dot)com(dot)ar>
To: "'David Rodriguez Sanchez'" <rodriguezsanchez(dot)david(at)gmail(dot)com>, <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: RE: Estrategias de Optimizacion
Date: 2009-02-11 18:06:37
Message-ID: 62E7751A5D2540C5984FD9E83CB82E4D@iptel.com.ar
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

> -----Mensaje original-----
>
> Hola,
>
> Necesito ideas sobre posibles estrategias que puedan mejorar
> los tiempos de respuesta. Estoy trabajando en un sistema
> empotrado y los tiempos son críticos.
>
> - El sistema debe ser capaz de insertar 1000 registros en
> menos de 1
> segundo, con una frecuencia de 1 segundo.(Datos de sensores,
> el tiempo es crítico)
> - Debe ser capaz de atender a consultas sobre estos datos de forma
> concurrente a las inserciones.(El tiempo para estas consultas no es
> crítico)
>
> He conseguido que las inserciones se hagan en un promedio de
> 630 milisegundos, de forma estable. Pero el problema es que
> al realizar consultas de forma concurrente a las inserciones,
> éstas sufren una latencia y se demoran en más de un segundo.
>
> ...
>
> En este punto es donde necesito ayuda, alguna idea que pueda
> solucionar esta latencia.
>

Lo que te sugiero es hacer asincrónicas las lecturas de las mediciones con la inserción en una base de datos relacional.
El esquema más simple que se me ocurre es guardar las mediciones en archivos planos y tener n procesos en background que vayan subiendo estos archivos en al Postgres con copy.

Si necesitas tener las mediciones inmediatamente disponibles para consulta, entonces te recomiendo te olvides de una base relacional salvo que puedas invertir en un excelente storage, algo dificilmente viable en sistemas embebidos.

Como te recomendaron en otra respuesta BerkleyDB se ajusta muy bien a tu requerimiento.

Saludos.

In response to

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Fernando Moreno 2009-02-11 19:04:01 Re: Tabla temporal
Previous Message Gunnar Wolf 2009-02-11 17:45:18 Re: Compilar o Instalar binarios,,,,