Domanda

Sono interessato alle migliori pratiche per la progettazione di tabelle DB relazionali per la detenzione di dati spazio-temporali. In particolare i dati che verranno conservati in tali tabelle sono geometrie personalizzate che hanno un certo periodo di validità, la definizione della geometria e l'aspetto gerarchico (alcune geometrie saranno bambini di altre geometrie).

Curioso se qualcuno può indicarmi un buon materiale su questo argomento o potrebbe suggerire un'implementazione specifica.

Grazie.

È stato utile?

Soluzione

Userei Postgis (http://postgis.refractions.net/) per il tipo di geometria e crea una tabella come questa:

CREATE TABLE data (
    geometry geometry,
  valid_from timestamp,
  valid_till timestamp,
  check(valid_till >= valid_from)
);

Postgis può fare query spaziali, in modo da poter eseguire query database per tutte le geometrie in una geometria specifica (EG query per tutte le geometrie in una geometria che rappresenta uno stato o una contea).

Per ottenere il periodo di validità, è necessario aggiungere a questa domanda aggiuntive condizioni per ottenere solo le righe dove (valid_from >= now() and valid_till <= now()).

Avrai anche bisogno di indici su tutte e tre le colonne ovviamente. Nella colonna geometria dovrebbe esserci un indice spaziale.

Tutte le informazioni sulle query spaziali e sul tipo di geometria e gli indici di geometria che puoi trovare sul sito Postgis.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top