task #5732

Updated by Andreas Kohlbecker over 4 years ago

Evaluate CartoDB    as alternative to GeoServer + EDIT Map Services 


 *At the TDWG 2017 conference Andreas K, Andreas M & Walter discussed the possibility to use CartoDB as a replacement for the EDIT Map services with Javier de la Torre.:* 

 ## Dataflow between cdm and cartodb  

 Possibilities of integrating CartoDB with the cdmlib at the data level: 

 1. CartoDB is using postgis as database engine. This offers the option to use the [Foreign Data Wrappers (FDW)]( which are available for a couple of database engines. MySQL, Postgress, MS SQL and JSBC are supported among others). Using a    FDW carto can in principle directly access the data in the cdmdb even if this is running on a remote machine.  
     * updated priodically or on request time? 
 2. According to Javier it is possible to directly request CartoDB to fill polygons & set markers. with a specific colour. CartoDB creates map tiles in response to a request which contains a sql query and a CartoCss file.    I the following I try to reproduce Javiers suggestion as far as my memory goes: As preparation you need to import a the named area and distribution status terms into cartodb for the specific project. Then it is possible to send a sql query to cartodb which specifically selects the areas and status. The css for the styling of the base map must also be sumbitted in the request. 

 Pros&Cons of the above strategies: 

 * .... 

 ## General considerations 

 ### CartoCss 

 It is NOT recommended to retrieve the cartoCSS dynamically from the system. Better copy paste, download the css from cartodb to a file. This locally stored css will then be submitted to the carto server with each request. This way the whole system will be more stable and will have a more predictable response time.  

 This means that users will use carto to design, style their map but the cartocss will finally be transferred to a file.  

 ### CartoDB response time 

 The expected response time for one request to cartodb should be <= 100ms 

 ## Open questions 

 * how big is the effort to install a cartodb instance 
 * effort to maintain cartodb? 
     * periodically updates?