#
Upgrades and Migrations
#
Upgrades and Migrations
This page covers the procedures for upgrading Curiosity Workspace, migrating data between environments, and implementing backup and restore strategies.
#
Upgrade Procedures
Before upgrading to a new version:
- Review Release Notes: Check for breaking changes or specific upgrade instructions.
- Backup Data: Ensure a full backup of the graph and configuration is available.
- Test in Staging: Perform the upgrade in a non-production environment first.
#
General Steps
- Pull the latest container image or download the new package.
- Update the environment configuration if required.
- Restart the service and monitor logs for successful migration scripts.
#
Data Migration
Migrating data between workspaces (e.g., from Dev to Prod) involves:
- Schema Export/Import: Ensuring the target workspace has matching node and edge schemas.
- Data Export: Exporting nodes and edges using the API or export tools.
- Data Ingestion: Using a connector or import task to load data into the target environment.
#
Backup and Restore
A robust backup strategy is essential for disaster recovery.
- Backup Frequency: Daily backups are recommended for most production environments.
- What to Backup:
- Graph database storage
- Configuration files (
h5.json,retype.yml, etc.) - Front-End Source code
- Connectors Source code
- Customizations and Workspace definition (exportable)
- Environment variables and secrets
- Restore Procedure:
- Stop the workspace service.
- Restore the data files to the designated storage volume.
- Restart the service and verify data integrity.
#
Environment Promotion
Moving from development to production should be a controlled process:
- Use CI/CD pipelines to deploy configuration and code-based connectors.
- Validate the environment state after releases.