Nothing
## ----include = FALSE----------------------------------------------------------
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>"
)
## ----setup, echo = FALSE, message=FALSE---------------------------------------
library(rolap)
## -----------------------------------------------------------------------------
library(rolap)
mrs_db |>
get_fact_names()
## -----------------------------------------------------------------------------
db_dm <- mrs_db |>
as_dm_class(pk_facts = FALSE)
db_dm |>
dm::dm_draw(rankdir = "LR", view_type = "all")
## -----------------------------------------------------------------------------
mrs_rdb_file <- tempfile()
## -----------------------------------------------------------------------------
mrs_sqlite_file <- tempfile("mrs", fileext = ".sqlite")
## -----------------------------------------------------------------------------
mrs_sqlite_connect <- function() {
DBI::dbConnect(RSQLite::SQLite(),
dbname = mrs_sqlite_file)
}
mrs_sqlite_disconnect <- function(con) {
DBI::dbDisconnect(con)
}
## -----------------------------------------------------------------------------
mrs_db <- mrs_db |>
deploy(
name = "mrs_sqlite",
connect = mrs_sqlite_connect,
disconnect = mrs_sqlite_disconnect,
file = mrs_rdb_file
)
## -----------------------------------------------------------------------------
l_db <- mrs_db |>
as_tibble_list()
names <- sort(names(l_db))
for (name in names){
cat(sprintf("name: %s, %d rows\n", name, nrow(l_db[[name]])))
}
## -----------------------------------------------------------------------------
mrs_con <- mrs_sqlite_connect()
tables <- DBI::dbListTables(mrs_con)
for (t in tables) {
res <- DBI::dbGetQuery(mrs_con, sprintf('SELECT COUNT(*) FROM `%s`', t))
cat(sprintf("name: %s, %d rows\n", t, res[[1]]))
}
mrs_sqlite_disconnect(mrs_con)
## -----------------------------------------------------------------------------
mrs_sqlite_file_2 <- tempfile("mrs", fileext = ".sqlite")
## -----------------------------------------------------------------------------
mrs_sqlite_connect_2 <- function() {
DBI::dbConnect(RSQLite::SQLite(),
dbname = mrs_sqlite_file_2)
}
## -----------------------------------------------------------------------------
mrs_db <- mrs_db |>
deploy(
name = "mrs_sqlite_2",
connect = mrs_sqlite_connect_2
)
## -----------------------------------------------------------------------------
mrs_db |>
get_deployment_names()
## -----------------------------------------------------------------------------
ft <- mrs_ft_new |>
get_table()
ft
## -----------------------------------------------------------------------------
mrs_db_age_refresh <- mrs_ft_new |>
update_according_to(mrs_db, star = "mrs_age")
mrs_db_cause_refresh <- mrs_ft_new |>
update_according_to(mrs_db, star = "mrs_cause")
## -----------------------------------------------------------------------------
mrs_db <- mrs_db |>
incremental_refresh(mrs_db_age_refresh) |>
incremental_refresh(mrs_db_cause_refresh, existing_instances = "group")
## -----------------------------------------------------------------------------
l_db <- mrs_db |>
as_tibble_list()
names <- sort(names(l_db))
for (name in names){
cat(sprintf("name: %s, %d rows\n", name, nrow(l_db[[name]])))
}
## -----------------------------------------------------------------------------
mrs_con <- mrs_sqlite_connect()
tables <- DBI::dbListTables(mrs_con)
for (t in tables) {
res <- DBI::dbGetQuery(mrs_con, sprintf('SELECT COUNT(*) FROM `%s`', t))
cat(sprintf("name: %s, %d rows\n", t, res[[1]]))
}
mrs_sqlite_disconnect(mrs_con)
## -----------------------------------------------------------------------------
mrs_con_2 <- mrs_sqlite_connect_2()
tables <- DBI::dbListTables(mrs_con_2)
for (t in tables) {
res <- DBI::dbGetQuery(mrs_con_2, sprintf('SELECT COUNT(*) FROM `%s`', t))
cat(sprintf("name: %s, %d rows\n", t, res[[1]]))
}
mrs_sqlite_disconnect(mrs_con_2)
## -----------------------------------------------------------------------------
mrs_db_new <- load_star_database(mrs_rdb_file)
identical(mrs_db, mrs_db_new)
## ----echo = FALSE-------------------------------------------------------------
unlink(mrs_rdb_file)
unlink(mrs_sqlite_file)
unlink(mrs_sqlite_file_2)
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.