So, like everyone, when I came accross the requirement to incorportate maps into my Drupal site, I googled for solutions and that pretty much led me straight to the Openlayers/Geofield solution. Not even sure there is another acceptable out-of-the-box module out there.

Anyway, the module works wonders, it delivers perfectly but I have some questions/issues regarding performance.

What I need to represent in my map, are user entities. The users have a "Location" field, which is a geofield autocomplete. The site (largely due to migrationg) numbers 10.000 users currently. Granted, not all of them will actually be active, but in the worse case scenario, trying to load all 10k users results in very high waiting time in the Data Overlay step meaning the production of 10k projection items for the map to display.

Since the location field was not migrated, I initially filtered by having the field NOT NULL. This will skip querying for useless entities. But as I said, having 10.000 "active" users, who have edited their data and filled in that field might cause a system overhaul when people try to view the map.

Question 1: Could the fact that I was querying for users with Location values of NULL have resulted in higher waiting time? I mean, 10.000 users with actual data may get processed faster than 9.000 users with NULL set as location?

Question 2: Are there any general suggestions to somehow improve the map's performance? Reminding that the delay occurs in the projections' production process.

1 Answer 1


I haven't used mapping yet because of the performance contraints of showing more than a few hundred points on an openlayer map.

Leaflet Marketcluster promises to solve this problem:

All Leaflet maps will now be using clustering out of the box.

  • Openlayers incorporates clustering by default. The system strain occured on the server side while trying to process 10.000 entities with Location fields. The display layer was pretty flawless with clustering and all.
    – user5005
    Commented Mar 19, 2013 at 11:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.