Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. It's 100% free, no registration required.

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Hi I am new to model builder in GIS. I have two shapefiles, one is a polygon shapefile of all lightning caused fire in Alaska sine 1939 (~1500 polygons) and the second is a point shapefile with all recorded lightning strike since 1986 in Alaska (~10000 points). What I want to do is create a data/attribute table that outputs the following for varying time scale (1 day through 16 weeks): 1)If the fire had a lightning strike within it on the timescale specified and latitude/longitude of strike 2)If not what is the nearest strike and its distance (point (lightning) to centroid (fire polygon)or point to nearest edge) 3)Polarity of strike 4)Multiplicity of strike The attribute table I have for the lightning data has all strike lat/long, polarity, multiplicity. This is a flow chart of the analysis I want to do:

select lightning and fire that falls in specified time (I have dates of both strikes and fire) --> determine if a strike was in the fire --> if yes then put the specified value from the lightning table into the new table along with fire ID --> If no find the nearest strike to the fire and its distance to the fire --> add specified values for this strike to same table

What would the basic outline for a model that performs this flow look like? Are there any alternate methods to achieve this with such a large data set? I know this is a lot but any help would be greatly appreciated. Thanks

share|improve this question
Do you have any particular software you want/have to use? Or are you just looking for general guidance? – RyanDalton Feb 21 '13 at 22:47

I would start by importing all the data into PostgreSQL with the Postgis extension. Using shp2pgsql would be the easiest way. Make sure you include the proper flags to generate indexes on the data. After importing the data, you'll probably have to massage the date/times from varchar to timestamp.

After you get all your data imported, you can use the geometry operators (st_within, st_centroid, ST_Distance_Spheroid) to answer your questions.

I can be more specific if you have more details about how the data is actually structured.

share|improve this answer
The question was in regards to ArcGIS Model Builder, not PostgreSQL with the Postgis extension. – Sue Deforest Feb 27 '13 at 0:53
The question did ask for alternative methods. Using shapefiles and model builder for a large dataset is slow and cumbersome. When working with a large data set, a sql database and query is orders of magnitude more efficient. – westyvw Jul 25 '13 at 15:10

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.