Данные:
У меня есть блестящее приложение панели мониторинга, и мой набор данных составляет около 600 МБ. Каждый месяц он набухает на 100 МБ. Мои данные хранятся локально в MySQL.
MenuItems:
У меня есть 6 - 7 боковых меню на моей панели инструментов, и каждый из них имеет 10-12 различных выходов - диаграммы и таблицы. Каждая из этих вкладок имеет 3 - 6 входов, таких как selectizeInput, ползунок, диапазон дат и т.д. Для фильтрации данных.
Подмножества данных:
Так как я не могу загрузить все данные в память, для каждого элемента меню я создаю подмножество данных на основе диапазона дат, сохраняя диапазон дат всего в 2 - 3 дня от системной даты.
Например:
df1 <- reactive({df[df$date >- dateinput[1] & df$date <- dateinput[2], ]})
Приведенные выше данные для моего первого пункта меню и в зависимости от selectInput или других входов, я далее фильтрую данные. Например, если у меня есть selectInput для Gender (male and female)
, то я далее подмножество df1
:
df2 <- reactive({
if(is.null(input$Gender)){
df1
} else if(input$Gender == "Male")
{df1[df1$Gender == "Male",]}
)}
Если у меня более 1 вход, я подмножаю этот df1 дальше и передаю значения в df2. df2 становится реактивным набором данных для всех диаграмм и таблиц в этом MenuItem.
Чем больше количество элементов menuItem я создаю больше подмножеств для соответствия фильтрам и анализу.
Я сталкиваюсь с двумя проблемами:
- На старых компьютерах приложение не загружается. и
- На новых машинах приложение загружается очень медленно, иногда через 5-6 минут.
После первого набора нагрузки данных диаграммы и таблицы получают более быстрое реагирование на реактивные изменения.
Чтобы противостоять этому, я попытался переместить все общие и повторяющиеся параметры и библиотеки в global.R.
У меня есть два вопроса:
1. Существуют ли какие-либо основные гигиенические факторы, которые следует учитывать при добыче данных в R, особенно через блестящие (Mining in R очень быстро).
2. Я читал о параллельной обработке, но почти всегда все примеры говорят о распределении одного более тяжелого вычисления. Можем ли мы распространять через параллельную обработку, подмножество данных или распространение диаграмм/таблиц.
Обратите внимание: я исследователь, а не программист, но научился использовать блестящие и хост-приложения в облаке или недавно недавно.
Руководство по этому вопросу будет очень полезно для многих начинающих пользователей R, подобных мне.