Servers

This simple window in connection with properly configured Earthlight and Aurora environments allows you to tell Firestarter what data should be cached to the memory.

All of you have hundreds of spatial datasets that store thousands or sometimes tens of thousands of records each. These datasets are being used in multitude of maps on a daily basis. This requires huge amount of RAM on the server to store all this data. I think we can all agree that this is a valid requirement and I do not think anyone would oppose this statement. However we can also agree that when it comes to the public facing GIS the requirements for data stored and used are much lower. In most cases a single map is used for all purposes and this map is composed of around 20% of all datasets. Therefore there is no point in lifting all the datasets from the database and placing them in this server’s memory if 80% of the data will never be used. This is precisely why some time ago we introduced a feature on the Administration tab called Servers.

 

What is Earthlight Firestarter?

Firestarter is a routine which places records from database tables into server memory. It accomplishes this by reading definitions of all VectorLayers and querying the database for all records from the referenced table. Firestarter is very effective because it performs its task in a serial manner. This approach ensures there is no overload on neither the database nor network infrastructure. Firestarter can be compared to a user who creates new map and then adds each layer to this map ensuring that Earthlight finished caching the data from one layer before adding another.

Managing Earthlight Firestarter

Firestarter is a very efficient system of lifting all information from the database and placing it in the server’s memory to be used for multitude of possible Earthlight actions. There are however scenarios when memory or the amount of required data is limited.

I will describe what, at least for me, is the most common scenario when managing Firestarter can be beneficial and can improve server’s performance.

Each server can have its own individual configuration.

Because it was primarily intended to preserve memory consumption on Aurora servers, it allows you to add a map to the list of cached resources and automatically infers layers which need caching. The only thing that is required outside of the map is the gazetteer layer. In other words for a basic Aurora server with one script it is enough to have two entries in the server configuration:

  • The map that is used in the script
  • The gazetteer layer

Â