Hot answers tagged database
23
PostGIS based on PostgreSQL is a popular database for GIS.
I haven't used it much myself, but a pro is that it's open source and that many other GIS uses it so it have an active GIS community.
17
The truth is that most people use a custom variation of the A* algorithm. You will see this across the most of the "big guys"(I can't say who they are in a public forum, but I can tell you that you probably use one of them - guaranteed), where the modification of the heuristics is very dependent on the datasets that they use.
You mentioned pgrouting ...
16
We use Google AppEngine to run spatial/attribute queries and the main issue (from day one) is how to index large sets of arbitrarily sized lines/polygons. Point data isn't too difficult (see geohash, geomodel etc) but sets of randomly clustered small/large polygons was always a problem (and in some cases, still is)
I've tried several different versions of ...
15
ZIP codes are a habitually abused geography. It's understandable that people want to use them because they are so visible and well-known but they aren't well suited to any use outside the USPS. ZIP codes aren't associated with polygons, they are associated with carrier routes and the USPS doesn't like to share those. Some ZIP codes are points e.g. a ZIP ...
13
Some starting points to consider:
PostGIS in Action should be your first resource
PostGIS section of excellent 'Introduction to an Open Source Geostack' workshop
Materials from BostonGIS webpage
Also, for general introduction to PostgreSQL I quite enjoyed 'Beginning Databases with PostreSQL' book by Matthew & Stones.
12
Not sure if it is newer but pgRouting has a Shooting-Star algorithm:
Shooting-Star algorithm is the latest
of pgRouting shortest path algorithms.
Its speciality is that it routes from
link to link, not from vertex to
vertex as Dijkstra and A-Star
algorithms do. This makes it possible
to define relations between links for
example, and it ...
11
I suggest you to add Spatialite to your list. It has the benefits of being file based (as a shapefile, or an .mdb database) and supports most of the usual spatial operators and tpyes, that you can find in PostGIS too.
Spatialite is based on Sqlite, so you will manage a single file, that you can easily move and share.
11
Aside from Spatialite, you might also want to consider PostGIS. Think of it as Spatialite's big brother ;-) It's just another data source for QGIS while you can connect to it using the RODBC package in R.
10
QGIS supports
PostGIS - including a dedicated PostGIS Manager plugin for seamless work
Spatialite - there is also Spatialite Manager
MSSQL 2008 Spatial - also supported by default starting from version 1.8
Oracle Spatial - via OGR but not by default & Oracle Spatial GeoRaster plugin
ESRI File/(Personal) Geodatabase - via OGR
All database connections ...
9
SQL Server 2008 comes with geospatial capabilities in-built. Even the free Express Edition supports the full geospatial features, as far as I know.
Further reading:
SQL Server 2008 Spatial Data
MSDN: Working with Spatial Data (Database Engine)
MSDN: Working with Spatial Indexes (Database Engine)
Basic example from Stack Overflow
9
OBJECTID, OID and FID refer to an unique identifier of an object within a table. FID is the name primarily used in shapefiles (OID for plain DBF tables), and OBJECTID is at home in geodatabases (for both object classes and feature classes).
9
In a global dataset you will have cases where a point is close to the equator, or Greenwich meridian. At these points a sign change could leave your location in the same country, but at the wrong location.
An alternative approach is to geocode the locations based on the city, county, and country fields. Create a field measuring the distance from the ...
9
The real advantage to spatial databases (PostGIS, spatial extensions to MySQL or anything else) is that you can do spatial operations on spatial data. If you are just storing point coordinates, then you don't really gain much from spatial (just use two numerical columns). If you store combinations of point coordinates (where the customers are), and line ...
8
My way to find PostGIS was
http://bostongis.org/?content_name=postgis_tut01#20
there is three parts of the tutorial. I really like it.
Then I have to mention:
http://postgisonline.org
I have tried to build a way of trying spatial SQL queries online. There are a very few tutorials there:
http://postgisonline.org/tutorials
anyone can write a tutorial and ...
8
The bostongis comparison is not a really up-to-date document but it can be a good start, at least to see which aspects is a priority to you, and what you should consider as mandatory or optional to make your choices. The comparison is generic, not related to openlayers.
For your OL project, I guess you should also consider the DB availability from your ...
8
Unfortunately, some of those feature are deeply dependent of the piece of software you use.
For example, let's take the U-Turns in ArcGIS and PGRouting. In ArcGIS, it is something you can choose as an option, in PGRouting, it is nested in the code.
On way street can be processed in two way. The are set up part of the graph with a very high cost ...
8
Assuming the columns appear in time order, the first row (for example) indicates that total construction through each period went
0, 0+45 = 45, 45+135 = 180, 180+405 = 585, 585+1010 = 1595, ..., 2230+0 = 2230.
Construction was halfway through at 2230/2 = 1115. This occurred during period 4, because at the end of period 3 the total was 585, at the end of ...
8
Not sure if you will be able to work with MS Access in QGIS (plus I haven't heard about any respectable GIS-project that would use MS databases); MSSQL - is supported (but never tried it myself and never will ;-) ).
Consider possibility to use Spatialite (spatial extension of SQLite). It will be quite suitable to operate Spatialite DB in QGIS and you can ...
8
In Addtion to saving defined layer styles within project files on the network, you can create a single Spatialite enabled database.sqlite, if your workflow isn't too busy.
For myself, I've replicated a fgdb by importing a hundred shapefiles and a couple hundred datatables, with great performance. Spatialite won't allow for PostGIS or FileGDB style ...
7
This is mainly an question about algorithms. Stack Overflow may also be a good place to ask it.
In any case, the answer to your direct question is "yes, you can use a kvp store to represent spatial data." A better question, however might be "SHOULD I use a kvp store to represent spatial data?"
The answer to that question (like many others) is, "it ...
7
Take a look at Portable GIS:
provide beginners with a
ready-installed and configured stack
of open source GIS tools that would
run in windows without the need for
emulation or a live cdemulation or a live cd
i.e. You can have it up and running on a USB stick. Very handy for workplace environments.
It has on it:
PostgreSQL (version ...
7
Contraction Hierarchy is a very fast algorithm:
http://algo2.iti.kit.edu/1087.php
This algorithm is RAM friendly while executing a query (to hold a contracted graph some more RAM is necessary as well as massive preprocessing)
There are some other algorithms - including the ones that solve public transit routing:
...
7
PostgreSQL has a column limit of between 250 and 1600 "depending on column types", and supports spatial data and queries with the PostGIS extension. So I would be inclined to do two things:
First, where a column represents a category rather than free text, create a separate table with those categories, and replace the column with an integer ID and foreign ...
7
I recently dealt with the exact same issue with Statistics Canada census profile CSV files containing 2172 columns. You can import your csv into an ESRI File Geodatabase (FGDB) if you have access to ArcGIS. According to ESRI, the FGDB format can handle 65,534 fields in a feature class or table.
In my case, I was able to import my 2172 column wide CSV file ...
7
You should certainly consider the hugely popular, well established, widely supported (and free) PostGIS. It will do every thing that MySQL can do and handle spatial locations as first class objects. Thus you can carry out selections based on points with in a bounding box (or other polygon) without having to write out all the comparisons etc.
Once you start ...
7
You can achieve this by preparing all those layers in one (or more) project files. Share these projects on the network and you can load them using Layer - Embed Layers and Groups.
If you want to change anything in these layers, open the original project file and changes will appear in all projects that contain embedded layers.
6
A good start can be the PostGIS Manual edited by Paul Ramsey.
document download URL: http://www.geoconnections.org/developersCorner/devCorner_devNetwork/meetings/2002.05.30/postgis.pdf
6
sdetable (like all SDE command line tools) does not recognize/understand the Geodatabse. Because a feature dataset is a geodatabase object, you cannot use sdetable to delete it.
You'll need to stick with an ArcObjects based client to do a clean delete. The easiest way would be to use the delete geoprocessing tool.
6
I don't have any specific links for you, but I think that you should look into the tools that already exist in ArcGIS Desktop.
Have you looked into using Geoprocessing tools & models via python?
A good place to start would be to make your Geoprocessing model & then export the model to Python. You can get more information ...
6
If we are talking about Spatial Database, I would leave MySQL out: it is very much incomplete in respect with other OGC Simple Features SQL implementations like PostGIS (my favourite), Oracle Spatial, SQL Server Spatial or even Spatialite. Or ArcSde as a gateway to its supported RDBMS.
Please note, however, that you do not need to have a spatial database ...
Only top voted, non community-wiki answers of a minimum length are eligible

