Open matusdrobuliak66 opened 5 months ago
There was no consensus on a clear preference for any of the proposed solutions above. Below some notes from the discussion
Data Migration from Source to Destination Database
When migrating data between databases, especially PostgreSQL tables with identifiers and relationships, it’s important to go beyond just viewing it as a transfer of data rows. The semantics of the data (i.e., the meaning of the entities and their relationships) must also be considered. Still, some of the key challenges can already be identified, particularly around merging data that exists in both the source and destination databases:
Integer Identifiers:
name_1456123456asdfa45
) would be preferable.Merging Existing Resources (e.g., Users, Products):
Maintaining Dependencies (e.g., Groups):
A Semantic Approach to Migration
Considering the database's structure and meaning, a more strategic approach is to break the migration into stages based on different contexts. This allows for grouping related tables and migrating them together, either manually or automatically.
Platform Configurations:
Users:
Services:
Studies (Projects + Data):
Migration Process Requirements
Data Integrity Checks:
Checkpoints for Rollback:
Features
Even thought his process will be mostly carried out once and in the backend, it might have a big value if the ability to import/export studies should be available as a standalone feature for users
Based on the working group https://github.com/ITISFoundation/osparc-ops-environments/issues/672 we decided we will investigate these 3 options:
(1) Importing from target deployment
Using an ad-hoc GUI the user can import thier projects from another deployment.
Prerequisits:
Chnages to oSPARC:
PROS:
CONS:
(2) Archiving
Generate an archive containing project data and data stored in all nodes.
Prerequisits:
Changes to oSPARC:
PROS:
CONS:
(3) Migration
The idea here is to migrate one deployment to another.
PROS:
CONS: