Following up on my previous post with ArcGIS and the Near Table, I created an SQL query in Manifold 8 to do both the near distances and group them by the number of points within specific distances (I grouped them every 50 km.). The entire process took 47 seconds (or about 9 times faster than ArcGIS 10.1).
But, to keep things on the same playing field, I just computed the NEAR part of the query, and it ran in 40 seconds. So, Manifold 8 was way faster than ArcGIS 10.1, but 3x slower than ArcGIS Pro.
I then wrote the following query in the Radian engine:
SELECT count(*) AS CNT,
first(floor(GeomDistance([L Table].[Geom (I)],
[P Table].[Geom (I)], 1)/50000)*50000+50000) AS DistZone,
[UNIQUE_ID]
INTO bobo
FROM [P Table]
RIGHT JOIN [L Table]
ON GeomWithin([L Table].[Geom (I)],[P Table].[Geom (I)], 500000,1)
GROUP BY [UNIQUE_ID]
THREADS 4
this query took 30 seconds (or about 20% faster than Manifold 8).
Once again, to level the playing field, I created a query to just run the NEAR aspect:
SELECT GeomDistance([L Table].[Geom (I)], [P Table].[Geom (I)], 1) AS DistZone, [UNIQUE_ID]
INTO bobo2
FROM [P Table]
RIGHT JOIN [L Table] ON GeomWithin([L Table].[Geom (I)],[P Table].[Geom (I)], 500000,1)
THREADS 4
BATCH 64
this ran in 20 seconds. In this case, ArcGIS Pro run slightly faster than Manifold 9 – but remember, I am still working with an alpha/beta release of Radian, and not all of the optimizations have been turned on. I can’t wait to see what the next beta will reveal.
Again, the simplicity of SQL in conjunction with the parallel nature of the Radian engine provides some very interesting opportunities for working with complex processes and large amounts of data.
Comments