Zanim zaczniesz

W tym dokumencie opisujemy wymagania wstępne, sprawdzone metody i typowe błędy występujące podczas pracy ze 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 przygotowywania 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 rozważ ich uproszczenie, aby uzyskać jak najlepszy efekt 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 za pomocą stylów opartych na danych i unikalnego klucza identyfikatora. Przykład znajdziesz w sekcji Wyświetlanie danych w czasie rzeczywistym dzięki stylowi opartemu na danych.
  2. W miarę możliwości używaj prostych typów danych (takich jak liczby całkowite), aby zminimalizować rozmiar kafelka i zwiększyć wydajność mapy.
  3. Uprość złożone geometrie przed przesłaniem pliku. Możesz to zrobić w dowolnym narzędziu geoprzestrzennym, takim jak narzędzie open source Mapshaper.org, lub w BigQuery przy użyciu ST_Simplify w przypadku złożonych geometrii wielokątów.
  4. Zgrupuj bardzo gęste punkty przed przesłaniem pliku. Możesz to zrobić w dowolnym wybranym przez siebie narzędziu geoprzestrzennym, takim jak funkcje klastrowania turf.js, lub w BigQuery za pomocą 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ą Datasets i BigQuery.

Wymagania dotyczące GeoJSON

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

  • obiekty geometrii, Obiekt geometryczny to kształt przestrzenny opisany jako złączenie punktów, linii i wielokątów z opcjonalnymi otworami.
  • obiekty funkcji, Obiekt obiektu 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 na temat GeoJSON znajdziesz w artykule Zgodność ze standardem RFC 7946.

Wymagania dotyczące KML

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

  • Wszystkie adresy URL muszą być lokalne (lub względne) wobec samego pliku.
  • Obsługiwane są geometrie punktowe, liniowe i wielokątne.
  • Wszystkie atrybuty danych są uznawane za ciągi znaków.
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, np. <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, określony przez kolejność obsługiwanych nazw kolumn na liście powyżej, wartości w kolumnach xy są używane, 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.

Postępowanie w przypadku 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 w pliku CSV:

  • W niektórych wierszach brakuje wartości kolumny geometrycznej. Wszystkie wiersze w pliku CSV muszą zawierać niepuste wartości kolumn geometrii. 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żywane będą nieprawidłowe jednostki, zbiór danych może zostać zaimportowany, ale renderowane dane mogą pokazywać punkty zbioru danych w nieoczekiwanych lokalizacjach.