I am looking for a simple software architecture that is able to evaluate user data using different versions of algorithms.
According to my concept, the user is able to upload tabular data via a Web UI. These are stored in a PostgreSQL server. Another user role "developer" uploads (trusted) R-scripts or Python-scripts via the Web UI as well. The "Data Processing" module accesses the database and is able to execute and analyze the user's data with different versions of the developer's uploaded algorithm.
Here is a small mock up for illustration:
According to my research it is possible to transfer the user data via RESTful API to a RStudio server. Now I also want to integrate and execute the algorithms, which are available as single .r files, sequentially.
Do established or recommendable methods exist to implement this exchange of data and algorithms elegantly?
Are there any experiences regarding the dynamic inclusion of .r/.py files?