Zanim zaczniesz

W tym dokumencie opisujemy wymagania wstępne, sprawdzone metody i częste błędy występujące podczas pracy z zbiorami danych.

Wymagania wstępne

Podczas tworzenia zbioru danych:

  • Nazwy wyświetlane muszą być unikalne w projekcie Google Cloud.
  • Wyświetlane nazwy muszą mieć mniej niż 64 bajty (znaki te są reprezentowane w formacie UTF-8, a w niektórych językach pojedynczy znak może być reprezentowany przez kilka bajtów).
  • Opis nie może mieć więcej niż 1000 bajtów.

Podczas przesyłania danych:

  • Obsługiwane typy plików to CSV, GeoJSON i KML.
  • Maksymalny obsługiwany rozmiar pliku to 500 MB.
  • Nazwy kolumn atrybutów nie mogą zaczynać się od ciągu „?_”.
  • Geometria trójwymiarowa nie jest obsługiwana. Obejmuje to sufiks „Z” w formacie WKT oraz współrzędną wysokości w formacie GeoJSON.

Sprawdzone metody dotyczące przygotowania danych

Jeśli dane źródłowe są złożone lub duże, np. gęste punkty, długie ciągi linii lub wielokąty (do tej kategorii często należą pliki źródłowe o większym rozmiarze niż 50 MB), przed przesłaniem danych warto je uprościć, aby uzyskać jak najlepsze wyniki na mapie wizualnej.

Oto kilka sprawdzonych metod przygotowywania danych:

  1. Minimalizuj właściwości funkcji. Zachowaj tylko właściwości obiektu potrzebne do stylizacji mapy, np. „id” i „category”. Możesz dołączać dodatkowe właściwości do funkcji w aplikacji klienta, używając stylów opartych na danych z kluczem identyfikatora. Zobacz na przykład, jak wyświetlać dane w czasie rzeczywistym za pomocą stylizacji opartej na danych.
  2. Używaj prostych typów danych w przypadku obiektów właściwości, gdy tylko to możliwe, np. liczb całkowitych, aby zminimalizować rozmiar kafelka i poprawić wydajność mapy.
  3. Przed przesłaniem pliku uprość skomplikowane geometrie. Możesz to zrobić w dowolnym wybranym przez siebie narzędziu geoprzestrzennym, takim jak narzędzie open source Mapshaper.org, lub w BigQuery, używając funkcji ST_Simplify na złożonych geometriach wielokątów.
  4. Zgrupuj bardzo gęste punkty przed przesłaniem pliku. Możesz to zrobić w wybranym przez siebie narzędziu geoprzestrzennym, takim jak funkcje klastrowania turf.js typu open source, lub w BigQuery, używając funkcji ST_CLUSTERDBSCAN na geometrycznych danych punktowych o dużej gęstości.

Więcej wskazówek dotyczących zbiorów danych znajdziesz w artykule Wizualizowanie danych za pomocą zbiorów danych i BigQuery.

Wymagania dotyczące GeoJSON

Interfejs Maps Datasets API obsługuje aktualną specyfikację GeoJSON. Interfejs Maps Datasets API obsługuje też pliki GeoJSON, które zawierają dowolny z tych typów obiektów:

  • obiekty geometryczne, Obiekt geometryczny to kształt przestrzenny opisany jako złączenie punktów, linii i wielokątów z opcjonalnymi otworami.
  • Obiekty funkcji. Obiekt funkcji zawiera geometrię oraz dodatkowe pary nazwa/wartość, których znaczenie zależy od aplikacji.
  • Kolekcje funkcji. Kolekcja cech to zbiór obiektów cech.

Interfejs Maps Datasets API nie obsługuje plików GeoJSON, które zawierają dane w systemie współrzędności (CRS) innym niż WGS84.

Więcej informacji o GeoJSON znajdziesz w dokumentach zgodnych z RFC 7946.

Wymagania dotyczące KML

Interfejs Maps Datasets API musi spełniać te wymagania:

  • Wszystkie adresy URL muszą być lokalne (lub względne) względem pliku.
  • Obsługiwane są geometrie punktowe, liniowe i wielokątne.
  • Wszystkie atrybuty danych są traktowane jako ciągi tekstowe.
Te funkcje KML nie są obsługiwane:
  • Ikony lub <styleUrl> zdefiniowane poza plikiem.
  • linki sieciowe, takie jak <NetworkLink>
  • nakładki na powierzchnię, takie jak <GroundOverlay>;
  • geometrie 3D lub dowolne tagi związane z wysokośćami, np. <altitudeMode>
  • Specyfikacje aparatu, takie jak <LookAt>
  • Style zdefiniowane w pliku KML.

Wymagania dotyczące pliku CSV

W przypadku plików CSV obsługiwane nazwy kolumn są wymienione poniżej w kolejności priorytetów:

  • latitude, longitude
  • lat, long
  • x, y
  • wkt (Well-Known Text)
  • address, city, state, zip
  • address
  • Jedna kolumna zawierająca wszystkie informacje o adresie, takie jak:1600 Amphitheatre Parkway Mountain View, CA 94043

Plik zawiera np. kolumny o nazwach x, ywkt. Ponieważ atrybuty xy mają wyższy priorytet, co określa kolejność obsługiwanych nazw kolumn na liście powyżej, używane są wartości w kolumnach xy, a kolumna wkt jest ignorowana.

Ponadto:

  • Każda nazwa kolumny musi należeć do jednej kolumny. Oznacza to, że nie możesz mieć kolumny o nazwie xy, która zawiera dane o współrzędnych x i y. współrzędne x i y muszą być w oddzielnych kolumnach;
  • W nazwach kolumn wielkość liter nie ma znaczenia.
  • Kolejność nazw kolumn nie ma znaczenia. Jeśli np. plik CSV zawiera kolumny latlong, mogą one występować w dowolnej kolejności.

Obsługa błędów przesyłania danych

Podczas przesyłania danych do zbioru danych możesz napotkać jeden z częstych błędów opisanych w tym rozdziale.

Błędy GeoJSON

Typowe błędy GeoJSON:

  • Brakuje pola type lub pole type nie jest ciągiem znaków. Przesłany plik danych GeoJSON musi zawierać pole ciągu znaków o nazwie type w ramach definicji obiektu Feature i obiektu Geometry.

Błędy KML

Typowe błędy pliku KML:

  • Plik danych nie może zawierać żadnych z wymienionych powyżej funkcji KML, ponieważ może to spowodować niepowodzenie importu danych.

Błędy w pliku CSV

Typowe błędy pliku CSV:

  • W niektórych wierszach brakuje wartości w kolumnie geometrii. Wszystkie wiersze w pliku CSV muszą zawierać niepuste wartości w kolumnach geometrycznych. Kolumny geometrii obejmują:
    • latitude, longitude
    • lat, long
    • x, y
    • wkt
    • address, city, state, zip
    • address
    • Jedna kolumna zawierająca wszystkie informacje o adresie, takie jak:1600 Amphitheatre Parkway Mountain View, CA 94043
  • Jeśli kolumny geometryczne to xy, sprawdź, czy jednostki to długość i szerokość geograficzna. Niektóre publiczne zbiory danych używają różnych układów współrzędnych w ramach nagłówków xy. Jeśli użyjesz niewłaściwych jednostek, zbiór danych może zostać zaimportowany, ale wyrenderowane dane mogą zawierać punkty zbioru danych w nieoczekiwanych miejscach.