PediatricOpenTargets / OpenPedCan-api

2 stars 7 forks source link

Design and implement QA/PRD RDS data update workflow #41

Closed logstar closed 3 years ago

logstar commented 3 years ago

When OpenPedCan-analysis releases a new version of data, OpenPedCan-api needs to update the data in QA/PRD/DEV RDS database instances to use the newly released data.

The down time for QA and PRD RDS database instances should be minimized, in order to prevent PedOT outage. The DEV RDS instance could be used to test the data updating workflow.

The current data loading time is about 4 hours. During data loading, any request on non-testing endpoints will lead to long wait time due to missing database index, and the response may be incorrect. When new endpoints are developed, more data will be loaded, and the data loading time could exceed 8 hours.

Following are some approaches that we could discuss further. Any viable other approach can also be discussed.

cc @taylordm @chinwallaa @afarrel

logstar commented 3 years ago

Closed with the following workflow implemented.

  1. Create a new database on the same DEV/QA/PRD RDS instance.
  2. Load data into the new database.
  3. Deploy API HTTP server with the new database.