The common CARTO LDS stack is powered by these components:
PostgreSQL is the open source database powering CARTO.
CARTO LDS uses PosgreSQL for several purposes:
Both CARTO Builder and CARTO LDS PostgreSQL are always separated PostgreSQL instances that can run in the same machine, or different ones.
PostGIS is the extension which adds spatial capabilities to PostgreSQL. It allows you to run geospatial functions in PostgreSQL.. It is required for both the User Data Storage and the Metadata Storage databases.
The CARTO PostgreSQL extension can be found at https://github.com/CartoDB/cartodb-postgresql.
This extension is required by all the components of CARTO and it must be installed in the server where user databases are stored.
It provides functions (and other helpers) needed by the Builder, Maps, and SQL APIs such as:
- CARTOfying functions, which convert raw PostgreSQL tables recognized by CARTO. It adds some additional columns and triggers.
- Multiuser schema handling functions.
- Quota helpers.
- Cache helpers.
- etc.
The CARTO extension depends on PostGIS and on the pg_schema_triggers extension.
The CARTO LDS client extension can be found at https://github.com/CartoDB/dataservices-api and depends on CARTO PostgreSQL Extension extension.
This extension is required to connect to CARTO LDS PostgreSQL instance and it must be installed in the server where user databases are stored (CARTO Builder product).
The CARTO LDS server extension can be found at https://github.com/CartoDB/dataservices-api and depends on PostGIS and CARTO LDS Geocoder Extension extension.
This extension provides access to CARTO Geocoding functions, Data Observatory, and External providers.
The CARTO LDS Geocoder extension can be found at https://github.com/CartoDB/data-services.
This extension includes the functions and related objects needed to provide a geocoding service for administrative areas of level 0, administrative areas of level 1, postal codes, IP addresses and city names. It does not include the actual data used to geocode them.
Please check Loading LDS Geocoding Database to load georeferenced data.
The CARTO LDS Data Observatory extension can be found at https://github.com/CartoDB/observatory-extension.
This extension implements the row-level functions needed by the Data Observatory Service, but it does not include the actual data used by this service.
Please check Loading Data Observatory Database to load observatory data.
Currently, CARTO LDS can be integrated with HERE, Mapbox, TomTom, Google and Geocodio providers.