Typy danych i semantyki

Gdy tworzysz społecznościowe oprogramowanie sprzęgające, każde pole zdefiniowane w schemacie wymaga podania typu danych. Typ danych określa typ podstawowy pola, np. BOOLEAN, STRING, NUMBER itp.

Looker Studio korzysta nie tylko z typów danych, ale też z typów semantycznych. Typy semantyczne pomagają opisać rodzaj informacji, które przedstawiają dane. Na przykład pole z typem danych NUMBER może semantycznie reprezentować kwotę lub wartość procentową waluty, a pole z typem danych STRING może semantycznie reprezentować miasto. Aby sprawdzić, jakie typy semantyczne są dostępne, zapoznaj się z dokumentacją typów semantycznych

Schemat oprogramowania sprzęgającego społeczności i pola Looker Studio

Gdy definiujesz schemat dla społecznościowego oprogramowania sprzęgającego, każde pole ma różne właściwości, które określają sposób reprezentowania i używania tego pola w Looker Studio. Na przykład:

  • Element conceptType jest zdefiniowany w schemacie oprogramowania sprzęgającego za pomocą właściwości conceptType. Ta właściwość określa, czy pole jest traktowane jako wymiar, czy dane. Wyjaśnienie różnic między danymi a wymiarami znajdziesz w sekcji Wymiary i dane.
  • Typ semantyczny może być zdefiniowany w schemacie oprogramowania sprzęgającego lub zostać automatycznie wykryty przez Looker Studio na podstawie właściwości typ danych zdefiniowanej w oprogramowaniu sprzęgającym oraz wartości danych zwróconych przez oprogramowanie sprzęgające. Szczegółowe informacje o tym, jak to działa, znajdziesz w artykule Automatyczne wykrywanie typów semantycznych.
  • Typ agregacji określa, czy wartości danych (wymiary są ignorowane) można ponownie zagregować. Ustawienie właściwości semantics.isReaggregatable na true domyślnie powoduje agregację SUM. W przeciwnym razie ma wartość Auto. Możesz też ręcznie ustawić domyślny typ agregacji dla pól możliwych do ponownego zagregowania za pomocą właściwości defaultAggregationType.

Po skonfigurowaniu i połączeniu za pomocą oprogramowania sprzęgającego w Looker Studio edytor pól wyświetla pełny schemat oprogramowania sprzęgającego na podstawie zdefiniowanych powyżej właściwości. Jeśli uwzględnisz typy semantyczne, będą się one wyświetlać zgodnie z definicją. Jeśli używasz automatycznego wykrywania typów semantycznych, pola będą się wyświetlać w takiej postaci, w jakiej zostały wykryte.Ekran pól

Konfigurowanie informacji semantycznych

Informacje semantyczne można ustawić na 2 sposoby. Możesz ustawić semantykę pola ręcznie lub polegać na automatycznym wykrywaniu przez Looker Studio.

Jeśli np. masz liczbę, która semantycznie reprezentuje dolary amerykańskie, Looker Studio nie będzie w stanie automatycznie wykryć tego typu semantycznego. Dodatkowo automatyczne wykrywanie semantyczne wymaga, by Looker Studio wywoływał pobieranie danych dla każdego pola schematu. Jeśli zamiast tego określisz schemat ręcznie, nie zostaną zrealizowane żadne wywołania pobierania danych. Jeśli znasz typ semantyczny danych (np. waluta, wartość procentowa, data itp.), zalecamy wyraźne określenie go w schemacie, aby zwiększyć dokładność i wydajność.

Ręczne ustawianie typów semantycznych (zalecane)

Jeśli znasz swoje typy semantyczne, możesz ręcznie zdefiniować element semantics dla każdego pola schematu. Szczegółowe informacje o dostępnych właściwościach znajdziesz na stronie z informacjami o polach. Jeśli zdecydujesz się zdefiniować ręczne typy semantyczne, zalecamy zdefiniowanie w przypadku każdego pola właściwości semanticType i semanticGroup. Jeśli ręcznie podasz te właściwości, automatyczny proces wykrywania typów semantycznych nie będzie działać. Jeśli ręcznie ustawisz tylko niektóre pola, te, które nie zostały określone jako domyślne, to Text, Number lub Boolean w zależności od wartości dataType określonej w polu.

Poniżej znajdziesz przykład prostego schematu, który ręcznie ustawia typy semantyczne. Wartość Income jest ustawiona jako Waluta, a Filing Year to data.

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'
    }
  }
];

Rozwiązywanie problemów z ręcznymi typami semantycznymi

Jeśli nieprawidłowo ustawisz typy semantyczne danych bazowych, nie będą one działać prawidłowo. To może być trudne do przetestowania, ale jest kilka rzeczy, które możesz zrobić, by znaleźć problemy.

  1. Wyświetl 2 lub 3 wiersze ze swoich danych zamiast wszystkich i sprawdź je ręcznie.
  2. Utwórz w Looker Studio tabelę korzystającą tylko z pola, które próbujesz sprawdzić.
  3. Zwróć szczególną uwagę na pola Geo i Date, ponieważ mają one najbardziej rygorystyczny format.

Automatyczne wykrywanie typów semantycznych

Jeśli w schemacie nie masz zdefiniowanych żadnych typów semantycznych, Looker Studio spróbuje wykryć je automatycznie na podstawie właściwości typ danych i formatu wartości danych zwracanych przez oprogramowanie sprzęgające.

Proces automatycznego wykrywania wygląda następująco:

  1. Wyślij żądanie schematu, wykonując funkcję getSchema swojego społecznościowego oprogramowania sprzęgającego.
  2. Powtarzaj grupy pól zdefiniowanych w schemacie oprogramowania sprzęgającego i getData żąda tych pól. Żądania getData są wykonywane z parametrem sampleExtraction ustawionym na true, aby wskazać, że żądania danych są używane do wykrywania semantycznego.
  3. Na podstawie typu danych pola i formatu wartości zwróconej w żądaniu getData określ typ semantyczny pola.

Opcje obsługi automatycznego wykrywania typów semantycznych

Gdy Looker Studio wykonuje funkcję getData społecznościowego oprogramowania sprzęgającego na potrzeby wykrywania semantycznego, przychodzące żądanie będzie zawierać właściwość sampleExtraction z ustawieniem true. Looker Studio używa danych zwróconych przez oprogramowanie sprzęgające tylko do identyfikowania semantycznego typu pola. Ta wartość nie będzie używana do żadnych innych celów, więc nie wymaga rzeczywistych danych ze źródła zewnętrznego.

Istnieje kilka sposobów na ulepszenie wykrywania typów semantycznych w kodzie:

  • Zalecane: przekaż wstępnie zdefiniowane wartości
    Zwraca wstępnie zdefiniowaną wartość każdego pola, która najlepiej odpowiada typowi semantycznemu danego pola i jest znany z prawidłowego wykrywania przez Looker Studio. Jeśli np. typ semantyczny pola to Country, zwracana jest wartość taka jak IT dla Włoch. Inną zaletą tego podejścia jest to, że jest ono znacznie szybsze, ponieważ nie wymaga wysyłania żądań HTTP do usługi zewnętrznej w celu pobrania danych.

  • Zwraca tylko n rekordów
    Jeśli usługa innej firmy, z której pobierasz dane, obsługuje limity wierszy w przypadku żądania danych, zamiast pełnego zbioru danych zwraca do Looker Studio tylko niewielki podzbiór wierszy. Ograniczy to ilość danych, które trzeba przekazać do Looker Studio w przypadku każdego żądania wykrywania semantycznego.

  • Żądanie wszystkich kolumn i buforowanie odpowiedzi
    Jeśli możesz zażądać wszystkich kolumn usługi zewnętrznej, z której pobierasz dane, przy pierwszym żądaniu wykrywania semantycznym otrzymanym z Looker Studio zostaną pobrane wszystkie kolumny i zapisane w pamięci podręcznej. Kolejne żądania wykrywania semantycznego pobierają wartości kolumn z pamięci podręcznej, zamiast wysyłać dodatkowe żądania HTTP do usługi zewnętrznej.

  • Nic innego nie rób
    W przypadku żądań, w których parametr sampleExtraction ma wartość true, możesz nie implementować żadnego konkretnego dostosowania. Spowoduje to spowolnienie procesu wykrywania semantycznego, ponieważ Looker Studio będzie musiał pobrać wszystkie dane na potrzeby tego procesu. Dodatkowo wpłynie to na częstotliwość żądań wysyłanych do zewnętrznego źródła danych, ponieważ wiele semantycznych żądań wykrywania będzie wykonywanych równolegle.

Rozpoznawane formaty do automatycznego wykrywania typów semantycznych

Data i godzina
  • 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
  • Czas: epoka dla sekund, mikro, milisekund i nano.
dane geograficzne.