English 中文(简体)
Table design for spatio-temporal data
原标题:

I am interested in best practices for designing relational DB tables for holding spatio-temporal data. Specifically data that will be kept in such tables are custom geometries that have certain validity period, geometry definition as well as hierarchical aspect(certain geometries will be children of other geometries).

I curious if someone can point me to a good material on this subject or could suggest specific implementation.

Thank you.

最佳回答

I d use PostGIS (http://postgis.refractions.net/) for geometry type and make a table like this:

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

PostGIS can make spatial queries, so you can query database for all geometries in a specific geometry (e.g. query for all geometries in a geometry representing a State, or a County).

To get the validity period, you should add to this query additional condition for getting only the rows where (valid_from >= now() and valid_till <= now()).

You will also need indexes on all three columns of course. On the geometry column there should be a spatial index.

All the information about the spatial queries and geometry type and geometry indexes you can find on the PostGIS site.

问题回答

暂无回答




相关问题
摘录数据

我如何将Excel板的数据输入我的Django应用? I m将PosgreSQL数据库作为数据库。

Postgres dump of only parts of tables for a dev snapshot

On production our database is a few hundred gigabytes in size. For development and testing, we need to create snapshots of this database that are functionally equivalent, but which are only 10 or 20 ...

How to join attributes in sql select statement?

I want to join few attributes in select statement as one for example select id, (name + + surname + + age) as info from users this doesn t work, how to do it? I m using postgreSQL.

What text encoding to use?

I need to setup my PostgreSQL DB s text encoding to handle non-American English characters that you d find showing up in languages such as German, Spanish, and French. What character encoding should ...

SQL LIKE condition to check for integer?

I am using a set of SQL LIKE conditions to go through the alphabet and list all items beginning with the appropriate letter, e.g. to get all books where the title starts with the letter "A": SELECT * ...

热门标签