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

RE: Ayuda con inquietud

From: Edwin Quijada <listas_quijada(at)hotmail(dot)com>
To: <fasterzip(at)yahoo(dot)es>, <jaquino(at)lexuseditores(dot)com>, <jolthgs(at)gmail(dot)com>
Cc: <pgsql-es-ayuda(at)postgresql(dot)org>
Subject: RE: Ayuda con inquietud
Date: 2012-07-12 14:26:35
Message-ID: BAY155-W29B2B110350FDBFC3FB927E3D00@phx.gbl (view raw or flat)
Thread:
Lists: pgsql-es-ayuda
En este caso optaria por hacer un particionamiento de la tabla de posiciones de los GPS, digamos mensual, con un script automatico, cada dia 1 creo una nueva particion.

Date: Tue, 10 Jul 2012 01:06:10 +0100
From: fasterzip(at)yahoo(dot)es
Subject: Re: [pgsql-es-ayuda] Ayuda con inquietud
To: JAquino(at)LexusEditores(dot)com; jolthgs(at)gmail(dot)com
CC: pgsql-es-ayuda(at)postgresql(dot)org

Creo que el tema aquí es por la velocidad de acceso a los registros, ya que en esa tabla pueden haber 100 o 200 millones de registros por ser un sistema de GPS con 1000 GPS's.

        De: Javier Aquino <JAquino(at)LexusEditores(dot)com>
 Para: Jorge Toro <jolthgs(at)gmail(dot)com> 
CC: Foro Postgres
 <pgsql-es-ayuda(at)postgresql(dot)org> 
 Enviado: Lunes 9 de julio de 2012 18:57
 Asunto: Re: [pgsql-es-ayuda] Ayuda con inquietud
   



  
  


Estimado Jorge, 



Y no te ayudaría un sentencia select comun y corriente com esta ???



  SELECT *

    FROM positions p1

    JOIN (   select gps_id, max(date) date from positions group by gps_id) p2 

   USING ( gps_id, date )

;





Esta consulta te devolvería el ultimo registro de cada gps_id.



Espero te sirva.



Saludos y éxitos.



Javier.





On Mon, 2012-07-09 at 07:56 -0500, Jorge Toro wrote:

    Hola lista hoy acudo a ustedes con la siguiente inquietud. 


    

    



    Tengo un programa servidor que captura los datos enviados por unos dispositivos "gps" y los almacena en una una tabla "positions". La tabla positions tiene la siguiente estructura:


    

    



     positions 


    --------------


    id serial PK


    gps_id integer FK ( de gps.id)


    posicion point


    velocidad real                         


    altura real


    date timestamp


    grados real


    satelites integer


    

    



    

    



    Ya que los dispositivos GPS envían información de su ubicación cada minuto, me es de gran importancia almacenar de alguna forma el último dato de cada GPS que se encuentra en la tabla "position", para poder mostrar la última información enviada por cada uno de los GPS en el momento que se ingrese a una página web. 


    

    



    Mi duda sinceramente es que no se cómo realizar esta tarea de una forma eficiente. 


    

    



    He pensado en hacer una vista llamada "position_gps_actual" que me almacene el último dato de cada GPS dentro de la tabla "position" en el momento que se le ingrese un nuevo dato a esta tabla. Pero no se cómo puedo hacerlo, ya que mis comocimientos en PostgreSQL son básicos y creo que requiero de PL/SQL (En este momento le he dado solución realizando programación en el servidor para que cuando un GPS envíe información además de alamacenarla en la tabla "position" también me la almacene en una tabla que contenga cada uno de los GPS y con un UPDATE me ponga esa data en el respectivo GPS.).


    

    



    Me ayudaría mucho si me pueden ayudar aclarándome el camino que debo tomar y que debo aprender (en PostgreSQL) para lograr mi objetivo. Ya tengo poco tiempo para entregar este proyecto y este es un tema que quiero solucionar de la mejor manera.


    

    



    

    



    A todos muchas gracias y atento a sus comentarios.


    

    



    Jorge Alonso Toro

    Ing. Teleinformático.

    

    http://jolthgs.wordpress.com/

    www.devmicrosystem.com

    --------------------------------------------------------------

    Powered By Debian.

    Developer Bullix GNU/Linux.

    --------------------------------------------------------------

    -----BEGIN PGP SIGNATURE-----

    Version: GnuPG v1.4.6 (GNU/Linux)

    

    iD8DBQBIWWH6q7mzdgTzI5ARAkX5AJ9TR6hL2ocLMOUDRfhts8DlVl+jpwCeNw5x

    p4+4FNUHPDUx1lU9F8WSKCA=

    =zRhQ

    -----END PGP SIGNATURE-----

    Este correo esta protegido bajo los términos de la Licencia Atribución-Compartir Obras Derivadas Igual a 2.5 Colombia de Creative Commons. Observé la licencia visitando este sitio http://creativecommons.org/licenses/by-sa/2.5/co/. 

    








       		 	   		  

In response to

pgsql-es-ayuda by date

Next:From: Edwin QuijadaDate: 2012-07-12 14:30:39
Subject: RE: Ayuda con inquietud
Previous:From: Edwin QuijadaDate: 2012-07-12 14:22:48
Subject: RE: instalacion

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