There are three key components in Datalore's architecture that might require to be highly available:
Datalore backend database
Below are the main considerations on making Datalore highly available.
- Datalore server
Currently, due to Datalore's architecture, it is impossible to run multiple instances of the Datalore server at the same time. Consequently, a multi-region (or multi-AZ) deployments within the public clouds are also not available.
We're well aware of this limitation and looking into possible mitigation options.
- Datalore backend database
By default, Datalore is shipped with a single-node PostgreSQL database. While it can be operated within the production environments, we recommend you to deploy a dedicated PostgreSQL cluster, configured properly according to the PostgreSQL operation manual.
Alternatively, a managed database solution like Amazon RDS could be used.
- Notebook agents
By their nature, notebook agents are not supposed to be highly available because a notebook agent is designed to exist in a single instance to enable multiple concurrent users collaborate within the same notebook.