Типы данных и семантические типы

При создании соединителя сообщества для каждого поля, определяемого в схеме , требуется тип данных. Тип данных определяет примитивный тип поля, например BOOLEAN , STRING , NUMBER и т. д.

Помимо типов данных, Looker Studio также использует семантические типы. Семантические типы помогают описать тип информации, которую представляют данные. Например, поле с типом данных NUMBER может семантически представлять сумму или процент валюты, а поле с типом данных STRING может семантически представлять город. Чтобы узнать, какие семантические типы доступны, обратитесь к документации по семантическим типам.

Схема Community Connector и поля Looker Studio

Когда вы определяете схему для вашего соединителя сообщества, для каждого поля существуют различные свойства, которые определяют, как поле будет представлено и использовано в Looker Studio. Например:

  • ConceptType определяется в схеме соединителя с помощью свойства conceptType . Это свойство определяет, будет ли поле рассматриваться как измерение или метрика. Объяснение разницы между метриками и измерениями можно найти в разделе Параметры и метрики.
  • Семантический тип может быть определен в схеме соединителя или может быть автоматически определен Looker Studio на основе свойства типа данных , определенного в вашем соединителе, и значений данных, возвращаемых вашим соединителем. Подробности о том, как это работает, см. в разделе Автоматическое определение семантического типа .
  • Тип агрегирования определяет, можно ли повторно агрегировать значения метрик (измерения игнорируются). Если для свойства semantics.isReaggregatable установлено значение true по умолчанию будет использоваться агрегирование SUM , в противном случае ему будет присвоено значение Auto . Вы также можете вручную установить тип агрегации по умолчанию для агрегируемых полей, используя свойство defaultAggregationType .

Когда вы настраиваете и подключаетесь с помощью соединителя в Looker Studio, редактор полей показывает полную схему соединителя на основе того, как вы определили свойства выше. Если вы включили семантические типы, они будут отображаться так, как вы их определили. Если вы используете автоматическое определение семантического типа , поля будут отображаться в том виде, в котором они были обнаружены. Экран полей

Установка семантической информации

Существует два способа задания семантической информации. Вы можете либо установить семантику поля вручную, либо полагаться на Looker Studio для автоматического обнаружения.

Например, если у вас есть число, которое семантически представляет доллары США, Looker Studio не сможет автоматически определить этот семантический тип. Кроме того, для автоматического семантического обнаружения требуется, чтобы Looker Studio выполняла вызовы выборки данных для каждого поля вашей схемы. Если вместо этого вы укажете схему вручную, вызовы выборки данных выполняться не будут. Если вам известен семантический тип (например, валюта, процент, дата и т. д.) для ваших данных, мы рекомендуем явно указать его в схеме из соображений точности и производительности.

Установка семантических типов вручную (рекомендуется)

Если вы знаете свои семантические типы, вы можете вручную определить semantics для каждого поля схемы. Полную информацию о том, какие свойства вам доступны, можно найти на странице со ссылкой на поля . Если вы решите определить семантические типы вручную, рекомендуется определить semanticType и semanticGroup для каждого поля. Если вручную указать эти свойства, процесс автоматического определения семантического типа не запустится. Если вы вручную задали некоторые поля, но не все, то те, которые вы не указали, по умолчанию будут иметь значения Text , Number или Boolean в зависимости от dataType , указанного для поля.

Ниже приведен пример простой схемы, в которой семантические типы задаются вручную. Income задается в виде валюты, а Filing Year задается в виде даты.

data-studio/semantics.gs
var schema = [
  {
    'name': 'Income',
    'label': 'Income (in USD)',
    'dataType': 'NUMBER',
    'semantics': {
      'conceptType': 'METRIC',
      'semanticGroup': 'CURRENCY',
      'semanticType': 'CURRENCY_USD'
    }
  }, {
    'name': 'Filing Year',
    'label': 'Year in which you filed the taxes.',
    'dataType': 'STRING',
    'semantics': {
      'conceptType': 'METRIC',
      'semanticGroup': 'DATE_OR_TIME',
      'semanticType': 'YEAR'
    }
  }
];

Устранение неполадок ручных семантических типов

Если вы неправильно установите семантические типы для базовых данных, они не будут работать должным образом. Это может быть сложно проверить, но есть несколько вещей, которые вы можете сделать, чтобы помочь найти проблемы.

  1. Верните 2 или 3 строки из ваших данных вместо всех, а затем проверьте их вручную.
  2. Создайте в Looker Studio таблицу, в которой будет использоваться только то поле, которое вы пытаетесь проверить.
  3. Обратите особое внимание на поля Geo и Date , поскольку они имеют самый строгий формат.

Автоматическое определение семантического типа

Если вы не определили какие-либо семантические типы в своей схеме, Looker Studio попытается автоматически обнаружить их на основе свойства типа данных и формата значений данных, возвращаемых вашим соединителем.

Этапы процесса автоматического обнаружения следующие:

  1. Запросите схему, выполнив функцию getSchema вашего соединителя сообщества.
  2. Перебирайте пакеты полей, определенные в схеме коннектора, и отправляйте запросы getData к этим полям. Запросы getData выполняются с параметром sampleExtraction , для которого установлено значение true , что указывает на то, что запросы данных предназначены для целей семантического обнаружения.
  3. На основе типа данных поля и формата значения, возвращаемого запросом getData , определите семантический тип поля.

Параметры автоматического определения семантического типа

Когда Looker Studio выполняет функцию getData коннектора сообщества с целью семантического обнаружения, входящий запрос будет содержать свойство sampleExtraction , которому будет присвоено значение true . Данные, возвращаемые вашим соединителем, используются Looker Studio только для определения семантического типа поля. Поскольку значение не будет использоваться для каких-либо других целей, оно не требует фактических данных из внешнего источника.

Есть несколько способов улучшить определение семантического типа в вашем коде:

  • Рекомендуется: передать предопределенные значения.
    Возвращайте предопределенное значение для каждого поля, которое лучше всего представляет семантический тип поля и, как известно, правильно распознается Looker Studio. Например, если семантическим типом поля является Страна , верните такое значение, как IT для Италии. Другое преимущество этого подхода заключается в том, что он намного быстрее, поскольку не требует от вас HTTP-запросов к сторонней службе для получения данных.

  • Вернуть только n записей
    Если сторонняя служба, из которой вы извлекаете данные, поддерживает ограничения на количество строк при запросе данных, верните в Looker Studio небольшое подмножество строк вместо полного набора данных. Это ограничит объем данных, которые необходимо передать в Looker Studio для каждого запроса на семантическое определение.

  • Запросить все столбцы и кэшировать ответ
    Если возможно запросить все столбцы для стороннего сервиса, из которого вы извлекаете данные, тогда при первом запросе семантического определения, полученном от Looker Studio, извлеките все столбцы и кэшируйте результаты. Для последующих запросов семантического обнаружения значения столбцов извлекаются из кэша вместо того, чтобы отправлять дополнительные HTTP-запросы к сторонней службе.

  • Ничего не делай по-другому
    Вы можете не реализовывать какое-либо конкретное приспособление для запросов, где для sampleExtraction установлено значение true . Это приведет к замедлению процесса семантического обнаружения, поскольку Looker Studio придется получить все данные для процесса семантического обнаружения. Кроме того, это повлияет на частоту запросов к внешнему источнику данных, поскольку многие запросы семантического обнаружения будут выполняться параллельно.

Распознанные форматы для автоматического определения семантического типа

Дата и время
  • YYYY/MM/DD-HH:MM:SS
  • YYYY-MM-DD [HH:MM:SS[.uuuuuu]]
  • YYYY/MM/DD [HH:MM:SS[.uuuuuu]]
  • YYYYMMDD [HH:MM:SS[.uuuuuu]]
  • Sat, 24 May 2008 20:09:47 GMT
  • 2008-05-24T20:09:47Z
  • Время: эпоха для секунд, микро, милли и нано.
Гео