Как поместить определенные запросы в каждое приложение label-ShinyR

Итак, я пытаюсь вывести определенные запросы в каждом из вариантов ввода в моем приложении ShinyR. Я пытаюсь сопоставить метки abcd2,abc3,audit_process с заданным запросом:

queryString <- sprintf("select * from sndbx_test.audit_process_group_1_11 limit 5", input$abcd2)
queryString <- sprintf("select * from sndbx_test.audit_process_group_1_11 limit 5", input$abcd3)
queryString <- sprintf("select * from sndbx_test.audit_process_group_1_11 limit 5", input$audit_process)

здесь мой код пока что дает мне ошибки:

library(shiny)
library(shiny)
library(RSQLite)
library(DBI)
library(datasets)
library(sparklyr)
library(dplyr)

# for Spark 2.1.X
Sys.setenv(SPARK_HOME="/opt/cloudera/parcels/SPARK2/lib/spark2/")
Sys.setenv(SPARK_HOME_VERSION="2.1.0")

# Import the Libraries
library("sparklyr")
library("DBI")
library(dplyr)

#Connecting to Spark
sc <- spark_connect(master ="yarn-client")


# Run whatever you want, like SQL “SHOW TABLES”
data <- dbGetQuery(sc, "use sndbx_test")
dbGetQuery(sc,"Select * from abcd2 limit 5")


#dbWriteTable(sc, "audit_process_group_1_11", sndbx_test.abc1 )

# Define UI for dataset viewer app ----
ui <- fluidPage(

  # App title ----
  titlePanel("Sample Database"),

  # Sidebar layout with a input and output definitions ----
  sidebarLayout(

    # Sidebar panel for inputs ----
    sidebarPanel(

      # Input: Selector for choosing dataset ----
      selectInput(inputId = "dataset",
                  label = "Choose a dataset:",
                  choices = c("abcd2", "abcd3", "audit_process")),

      # Input: Numeric entry for number of obs to view ----
      numericInput(inputId = "obs",
                   label = "Number of observations to view:",
                   value = 10)
    ),

    # Main panel for displaying outputs ----
    mainPanel(



      # Output: HTML table with requested number of observations ----
      tableOutput("view")

    )
  )
)

# Define server logic to summarize and view selected dataset ----
server <- function(input, output,session) {

  # Return the requested dataset ----
  datasetInput <- reactive({
    switch(input$dataset,
           "abcd2" = abcd2,
           "abcd3" = abcd3,
           "audit_process" = audit_process)
  })


  observeEvent(input$dataset, {
    queryString <- sprintf("select * from sndbx_test.audit_process_group_1_11 limit 5", input$abcd2)
    queryString <- sprintf("select * from sndbx_test.audit_process_group_1_11 limit 5", input$abcd3)
    queryString <- sprintf("select * from sndbx_test.audit_process_group_1_11 limit 5", input$audit_process)
    datasetInput(dbGetQuery(sc,queryString))
  })



  # Show the first "n" observations ----
  output$view <- renderTable({
    head(datasetInput(), n = input$obs)
  })

}

# Create Shiny app ----
shinyApp(ui = ui, server = server)

Есть идеи? Я перепробовал все, но не могу сопоставить свои запросы из DBI(spark) с метками в выпадающем списке. Похоже, легко исправить.

0 ответов

Другие вопросы по тегам