To store the assigned data in the Armadillo service, you can use workspaces to make sure a certain state of the data is maintained on the service.
Saving the workspaces can be done during datashield.logout
or at runtime. Please be aware that if your workspace is too big to store on the server, it won't save and you'll get an error message. If this happens,
please try cleaning up the workspace as much as possible and try again. If it still doesn't work, please
contact the administrator of the server, to ask if the diskspace can be increased.
library(dsBaseClient) library(DSMolgenisArmadillo) # specify server url armadillo_url <- "https://armadillo-demo.molgenis.net/" # get token from central authentication server token <- armadillo.get_token(armadillo_url)
## [1] "We're opening a browser so you can log in with code 6SFLND"
# build the login dataframe builder <- DSI::newDSLoginBuilder() builder$append(server = "armadillo", url = armadillo_url, token = token, table = "gecko/2_1-core-1_0/nonrep", driver = "ArmadilloDriver") # create loginframe logindata <- builder$build() conns <- DSI::datashield.login(login = logindata)
## ## Logging into the collaborating servers
## [-------------------------------------------------------------------------------------] 0% / 0s Login armadillo [==================================>-----------------------------------] 50% / 0s Logged in all servers [================================================================] 100% / 4s
datashield.assign.table(conns = conns, table = "gecko/2_1-core-1_0/nonrep", symbol = "J", variables = c("recruit_age", "child_id"))
## [-------------------------------------------------------------------------------------] 0% / 0s Checking armadillo (J <- `gecko/2_1-core-1_0/nonrep`) [--------------------------------] 0% / 0s Waiting... (J <- ...) [---------------------------------------------------------------] 0% / 0s Checking armadillo (J <- `gecko/2_1-core-1_0/nonrep`) [--------------------------------] 0% / 0s Waiting... (J <- ...) [---------------------------------------------------------------] 0% / 0s Checking armadillo (J <- `gecko/2_1-core-1_0/nonrep`) [--------------------------------] 0% / 0s Waiting... (J <- ...) [---------------------------------------------------------------] 0% / 0s Checking armadillo (J <- `gecko/2_1-core-1_0/nonrep`) [--------------------------------] 0% / 0s Waiting... (J <- ...) [---------------------------------------------------------------] 0% / 0s Checking armadillo (J <- `gecko/2_1-core-1_0/nonrep`) [--------------------------------] 0% / 0s Waiting... (J <- ...) [---------------------------------------------------------------] 0% / 0s Checking armadillo (J <- `gecko/2_1-core-1_0/nonrep`) [--------------------------------] 0% / 0s Waiting... (J <- ...) [---------------------------------------------------------------] 0% / 0s Checking armadillo (J <- `gecko/2_1-core-1_0/nonrep`) [--------------------------------] 0% / 0s Waiting... (J <- ...) [---------------------------------------------------------------] 0% / 1s Checking armadillo (J <- `gecko/2_1-core-1_0/nonrep`) [--------------------------------] 0% / 1s Waiting... (J <- ...) [---------------------------------------------------------------] 0% / 1s Checking armadillo (J <- `gecko/2_1-core-1_0/nonrep`) [--------------------------------] 0% / 1s Waiting... (J <- ...) [---------------------------------------------------------------] 0% / 1s Checking armadillo (J <- `gecko/2_1-core-1_0/nonrep`) [--------------------------------] 0% / 1s Waiting... (J <- ...) [---------------------------------------------------------------] 0% / 1s Checking armadillo (J <- `gecko/2_1-core-1_0/nonrep`) [--------------------------------] 0% / 1s Finalizing assignment armadillo (J <- `gecko/2_1-core-1_0/nonrep`) [=========>---------] 50% / 1s Assigned all table (J <- ...) [========================================================] 100% / 1s
datashield.logout(conns, save = "my-workspace")
## [-------------------------------------------------------------------------------------] 0% / 0s Logout armadillo [=================================>-----------------------------------] 50% / 0s Logged out from all servers [==========================================================] 100% / 0s
conns <- DSI::datashield.login(logins = logindata, assign = FALSE, restore = "my-workspace")
## ## Logging into the collaborating servers ## [-------------------------------------------------------------------------------------] 0% / 0s Login armadillo [==================================>-----------------------------------] 50% / 0s Logged in all servers [================================================================] 100% / 5s
datashield.symbols(conns)
## $armadillo ## [1] "J"
datashield.workspace_save(conns, "my-workspace-version-2")
You can overwrite workspaces using the same name again when saving the workspace.
datashield.logout(conns)
## [-------------------------------------------------------------------------------------] 0% / 0s Logout armadillo [=================================>-----------------------------------] 50% / 0s Logged out from all servers [==========================================================] 100% / 0s
conns <- DSI::datashield.login(logins = logindata)
## ## Logging into the collaborating servers ## [-------------------------------------------------------------------------------------] 0% / 0s Login armadillo [==================================>-----------------------------------] 50% / 0s Logged in all servers [================================================================] 100% / 4s
datashield.assign.table(conns = conns, table = "gecko/2_1-core-1_0/nonrep", symbol = "H")
## [-------------------------------------------------------------------------------------] 0% / 0s Checking armadillo (H <- `gecko/2_1-core-1_0/nonrep`) [--------------------------------] 0% / 0s Waiting... (H <- ...) [---------------------------------------------------------------] 0% / 0s Checking armadillo (H <- `gecko/2_1-core-1_0/nonrep`) [--------------------------------] 0% / 0s Waiting... (H <- ...) [---------------------------------------------------------------] 0% / 0s Checking armadillo (H <- `gecko/2_1-core-1_0/nonrep`) [--------------------------------] 0% / 0s Waiting... (H <- ...) [---------------------------------------------------------------] 0% / 0s Checking armadillo (H <- `gecko/2_1-core-1_0/nonrep`) [--------------------------------] 0% / 0s Waiting... (H <- ...) [---------------------------------------------------------------] 0% / 0s Checking armadillo (H <- `gecko/2_1-core-1_0/nonrep`) [--------------------------------] 0% / 0s Waiting... (H <- ...) [---------------------------------------------------------------] 0% / 0s Checking armadillo (H <- `gecko/2_1-core-1_0/nonrep`) [--------------------------------] 0% / 0s Waiting... (H <- ...) [---------------------------------------------------------------] 0% / 0s Checking armadillo (H <- `gecko/2_1-core-1_0/nonrep`) [--------------------------------] 0% / 1s Waiting... (H <- ...) [---------------------------------------------------------------] 0% / 1s Checking armadillo (H <- `gecko/2_1-core-1_0/nonrep`) [--------------------------------] 0% / 1s Finalizing assignment armadillo (H <- `gecko/2_1-core-1_0/nonrep`) [=========>---------] 50% / 1s Assigned all table (H <- ...) [========================================================] 100% / 1s
datashield.workspace_save(conns, "my-workspace-overwritten") datashield.workspace_save(conns, "my-workspace-overwritten")
You can list the workspaces as well.
datashield.workspaces(conns$armadillo)
## name size lastAccessDate user ## 1 armadillo:my-workspace-overwritten 172672 2024-05-17T10:07:25.624+02:00 ## 2 armadillo:my-workspace 3947 2024-05-17T10:07:14.872+02:00 ## 3 armadillo:my-workspace-version-2 3883 2024-05-17T10:07:20.072+02:00
Remove workspaces.
datashield.workspace_rm(conns, "my-workspace-overwritten") datashield.workspaces(conns)
## server name..armadillo.my.workspace. name..armadillo.my.workspace.version.2. user lastAccessDate..2024.05.17T10.07.14.872.02.00. ## 1 armadillo armadillo:my-workspace armadillo:my-workspace-version-2 2024-05-17T10:07:14.872+02:00 ## 2 armadillo armadillo:my-workspace armadillo:my-workspace-version-2 2024-05-17T10:07:14.872+02:00 ## lastAccessDate..2024.05.17T10.07.20.072.02.00. size.3947L size.3883L ## 1 2024-05-17T10:07:20.072+02:00 3947 3883 ## 2 2024-05-17T10:07:20.072+02:00 3947 3883
Any scripts or data that you put into this service are public.
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.