OHDSI / Atlas

ATLAS is an open source software tool for researchers to conduct scientific analyses on standardized observational data
http://atlas-demo.ohdsi.org/
Apache License 2.0
258 stars 126 forks source link

Enhancement: UI switchable element for connection strings #2913

Open DrTTrousers opened 4 months ago

DrTTrousers commented 4 months ago

Expected behavior

Each connection in atlas is configured as a connection string, alongside fields for schema, results writeable, vocabulary. Some data lake providers allow connections to be conducted with different computation warehouses. In effect, Data storage and Data compute are separated.

In ATLAS, this compute flexibility should be available via a drop down (like the switch for data source, pictured below) allowing switch of execution warehouse appropriate for the scale of job to generated image

Taking Snowflake as an example, small, medium and large warehouses are specified by a variable in connection string url: snowflakeacc.com/?warehouse=snowflake_warehouse&db=somedata..... Flexibility in connection string does not exist, however does appear to be possible given the separated out username and password fields. image

Configuration page should have a field "warehouse" or "wildcard" or "Extra connection variables" which if populated with a comma separated or quoted series of strings, will introduce the user selected item from the list (on generation pages for Cohorts et al) near the Generate buttons that allows the user to change this variable.

A default can still be set for testing connections, SOP as first item in the wildcard list. Reccomendation for this would be alongside the source daemons box. image

Applications outside of my current snowflake example: Other dbms that allows use of connection string variables to alter sessions, would be able to implement such switches in the same field.

Actual behavior

At current, this variable must be included in the connection string - resulting in duplication on the order of connections*Warehouse number of connections to have each data set available with different warehouses.

Steps to reproduce behavior

Not a bug, but an enhancement request