Соединители сообщества Data Studio: объединение временных и не временных метрик - PullRequest
0 голосов
/ 19 ноября 2018

Я создаю соединитель, который подключается к API, который предлагает конечные точки как для метрик на основе временных рядов (таких как «количество пользователей в день»), так и для статических метрик (таких как «статус проекта»).

Если я собираюсь создать один соединитель, мне нужно будет вставить статические метрики в значения временных рядов, верно?

Итак, если моя схема

[{name=day}, {name=users}, {name=status}]

тогда мои значения будут выглядеть как

['20181101', 150, '85%']
['20181102', 125, '85%']
['20181103', 134, '85%']
['20181104', 185, '85%']
['20181105', 111, '85%']
['20181106', 123, '85%']

, так как поле 'status' не зависит от времени.

Хотя это, кажется, работает, это выглядит довольно неэффективно. Что-то мне не хватает, или я должен создать отдельный соединитель для конечных точек статических метрик?

Спасибо!

1 Ответ

0 голосов
/ 19 ноября 2018

Похоже, вы пытаетесь объединить две независимые таблицы из вашего описания. Если у вас есть данные временного ряда с датами и отдельная серия статусов проекта без дат, то разделите свой соединитель, чтобы получить две разные серии.

Метод getSchema передает объект запроса, поскольку он находится за пределами вызова getConfig (). Таким образом, эта схема может быть разделена в зависимости от параметра. E.g.:

   function getSchema(request){
       switch(request.configParams.myTableOption){
           case 'tableOption1': 
               return mySchemaObject.tableOption1;
           case 'tableOption1': 
               return mySchemaObject.tableOption1;
       }
    }

Супер упрощенно, конечно, но это должно обеспечить гораздо более гибкий соединитель, который может возвращать различные типы таблиц. Вы также должны аналогичным образом разделить getData (), чтобы получить правильные данные, но тот же configParam выполняет последующие запросы для этого соединителя, так что вы также можете рассчитывать на это и там.

...