Tworzenie zbioru danych i zarządzanie nim

Zbiory danych umożliwiają przesyłanie danych geoprzestrzennych z pliku lokalnego lub z Google Cloud Storage do Google Maps Platform. Potem możesz powiązać zbiór danych z jednym lub większą liczbą stylów mapy w konsoli Cloud. Po powiązaniu zbioru danych ze stylem mapy możesz użyć interfejsu API stylu opartego na danych, aby dynamicznie dostosować styl aplikacji do map.

Możesz też przesłać dane geoprzestrzenne do zbioru danych za pomocą interfejsu API typu REST. Więcej informacji znajdziesz w artykule o interfejsie Maps Datasets API.

Skonfiguruj role

Aby tworzyć zbiory danych w projekcie Google Cloud i nimi zarządzać, musisz mieć w nim rolę właściciela lub edytującego.

Możesz też przypisać poniższe role uprawnień do konta użytkownika lub konta usługi, którego używasz do zarządzania zbiorami danych:

  • Rola Maps Platform Datasets Admin przyznaje użytkownikowi lub kontu usług uprawnienia do zapisu i odczytu zbiorów danych w projekcie. Ta rola umożliwia użytkownikowi wykonywanie wszystkich operacji na zbiorze danych.
  • Rola Maps Platform Datasets Viewer zapewnia dostęp tylko do odczytu do zbiorów danych w projekcie. Ta rola umożliwia wykonywanie operacji na liście, pobieraniu lub pobieraniu danych na zbiorze danych.

Więcej informacji znajdziesz w artykule o przyznawaniu roli uprawnień za pomocą konsoli Google Cloud.

Źródło danych zbioru danych

Po utworzeniu zbioru danych prześlij do niego dane z Google Cloud Storage lub z pliku lokalnego.
  • Podczas przesyłania danych z Cloud Storage podaj ścieżkę pliku do zasobu zawierającego dane w Cloud Storage. Ta ścieżka ma postać gs://GCS_BUCKET/FILE.

    Użytkownik wysyłający żądanie musi mieć rolę wyświetlający obiekty Cloud Storage lub dowolną inną rolę z uprawnieniem storage.objects.get. Więcej informacji o zarządzaniu dostępem do Cloud Storage znajdziesz w omówieniu kontroli dostępu.

  • Podczas przesyłania danych z pliku lokalnego podaj ścieżkę do pliku GeoJSON, KML lub CSV zawierającego dane do przesłania.

Wymagania wstępne

Podczas tworzenia zbioru danych:

  • Nazwy wyświetlane muszą być niepowtarzalne w obrębie projektu Google Cloud.
  • Wyświetlana nazwa musi mieć mniej niż 64 bajty (znaki te są reprezentowane w formacie UTF-8, dlatego w niektórych językach każdy znak może być reprezentowany przez wiele bajtów).
  • Opisy muszą mieć mniej niż 1000 bajtów.

Podczas przesyłania danych:

  • Obsługiwane typy plików to CSV, GeoJSON i KML.
  • Maksymalny obsługiwany rozmiar pliku to 350 MB.
  • Nazwy kolumn atrybutów nie mogą zaczynać się od ciągu „?_”.
  • Trójwymiarowe geometrie nie są obsługiwane. Obejmuje to sufiks „Z” w formacie WKT oraz współrzędne wysokości w formacie GeoJSON.

Sprawdzone metody przygotowywania danych

Jeśli dane źródłowe są złożone lub duże, na przykład są zwarte punkty, długie ciągi linii lub wielokąty (do tej kategorii należą często pliki źródłowe większe niż 50 MB), zastanów się, czy nie warto uprościć ich przed przesłaniem, aby uzyskać najlepszą wydajność na mapie wizualnej.

Oto kilka sprawdzonych metod przygotowywania danych:

  1. Zminimalizuj właściwości funkcji. Zachowaj tylko właściwości obiektów potrzebne do określenia stylu mapy, np. „id” i „category”. Możesz złączać dodatkowe usługi z cechą w aplikacji klienckiej za pomocą stylów opartych na danych w unikalnym kluczu identyfikatora. Przykład: Wyświetlanie danych w czasie rzeczywistym dzięki stylowi opartemu na danych.
  2. W miarę możliwości używaj prostych typów danych dotyczących obiektów właściwości (takich jak liczby całkowite), aby zminimalizować rozmiar kafelków i zwiększyć wydajność mapy.
  3. Uprość złożone geometrie przed przesłaniem pliku. Możesz to zrobić w wybranym narzędziu geoprzestrzennym, takim jak narzędzie open source Mapshaper.org, lub w BigQuery w przypadku złożonych geometrii wielokątów przy użyciu metody ST_Simplify.
  4. Przed przesłaniem pliku grupuj bardzo gęste punkty. Możesz to zrobić w dowolnie wybranym narzędziu geoprzestrzennym, takim jak funkcje klastra turf.js typu open source, lub w BigQuery przy użyciu obiektu ST_CLUSTERDBSCAN obejmującego gęstą geometrię punktów.

Dodatkowe wskazówki o sprawdzonych metodach dotyczących zbiorów danych znajdziesz w artykule Wizualizacja danych przy użyciu zbiorów danych i BigQuery.

Wymagania GeoJSON

Pakiet Maps SDK na iOS obsługuje aktualną specyfikację GeoJSON. Pakiet Maps SDK na iOS obsługuje również pliki GeoJSON, które zawierają dowolny z tych typów obiektów:

  • Obiekty geometryczne. Obiekt geometryczny to kształt przestrzenny określany jako suma punktów, linii i wielokątów z opcjonalnymi otworami.
  • Obiekty funkcji. Obiekt cech zawiera geometrię i dodatkowe pary nazwa/wartość, których znaczenie jest charakterystyczne dla aplikacji.
  • Kolekcje funkcji. Kolekcja cech to zbiór obiektów cech.

Pakiet Maps SDK na iOS nie obsługuje plików GeoJSON, które zawierają dane w systemie odniesienia współrzędnych (CRS) innym niż WGS84.

Więcej informacji na temat GeoJSON znajdziesz w artykule Zgodność z RFC 7946.

Wymagania dotyczące plików KML

Pakiet Maps SDK na iOS ma następujące wymagania:

  • Wszystkie adresy URL muszą być lokalne (lub względne) w stosunku do samego pliku.
  • Obsługiwane są geometrie punktów, linii i wielokątów.
  • Wszystkie atrybuty danych są traktowane jako ciągi znaków.
Te funkcje formatu KML nie są obsługiwane:
  • Ikony lub <styleUrl> zdefiniowane poza plikiem.
  • Linki sieciowe, np. <NetworkLink>
  • warstwy nad powierzchnią, takie jak <GroundOverlay>
  • geometrie 3D lub tagi związane z wysokością, 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 uzależnionej od ich priorytetu:

  • latitude, longitude
  • lat, long
  • x, y
  • wkt (Znany tekst)
  • address, city, state, zip
  • address
  • Pojedyncza kolumna zawierająca wszystkie dane adresowe, np. 1600 Amphitheatre Parkway Mountain View, CA 94043

Twój plik zawiera np. kolumny o nazwie x, y i wkt. Ponieważ kolumny x i y mają wyższy priorytet, co wynika z kolejności obsługiwanych nazw kolumn na liście powyżej, używane są wartości z kolumn x i y, 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 zarówno dane współrzędnych x, jak i y. Współrzędne x i y muszą znajdować się w osobnych kolumnach.
  • Wielkość liter w nazwach kolumn nie jest rozróżniana.
  • Kolejność nazw kolumn nie ma znaczenia. Jeśli na przykład plik CSV zawiera kolumny lat i long, mogą one występować w dowolnej kolejności.

Usuwanie 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 tej sekcji.

Błędy GeoJSON

Typowe błędy GeoJSON:

  • Brak pola type lub type nie jest ciągiem znaków. Przesłany plik danych GeoJSON musi zawierać pole ciągu znaków o nazwie type w każdej definicji obiektu cechy i definicji obiektu Geometry.

Błędy KML

Typowe błędy w formacie KML to:

  • Plik danych nie może zawierać żadnych nieobsługiwanych funkcji KML wymienionych powyżej. W przeciwnym razie import danych może się nie udać.

Błędy 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 geometrycznych. Kolumny geometryczne:
    • latitude, longitude
    • lat, long
    • x, y
    • wkt
    • address, city, state, zip
    • address
    • Pojedyncza kolumna zawierająca wszystkie dane adresowe, np. 1600 Amphitheatre Parkway Mountain View, CA 94043
  • Jeśli kolumny geometryczne to x i y, upewnij się, że wybrane jednostki to długość i szerokość geograficzna. Niektóre publiczne zbiory danych korzystają z różnych układów współrzędnych w nagłówkach x i y. Jeśli zostaną użyte nieprawidłowe jednostki, zbiór danych może się zaimportować, ale wyrenderowane dane mogą wskazywać punkty zbioru danych w nieoczekiwanych lokalizacjach.

Tworzenie zbioru danych

Aby utworzyć zbiór danych:

  1. W konsoli Google Cloud otwórz stronę Zbiory danych.
  2. Kliknij Utwórz zbiór danych.
  3. Wpisz nazwę zbioru danych. Nazwa musi być unikalna wśród wszystkich zbiorów danych.
  4. Opcjonalnie wpisz Opis zbioru danych.
  5. Kliknij Dalej. Pojawi się strona Importowanie danych.
  6. Wybierz źródło przesyłania danych używanych do wypełnienia zbioru danych jako Komputer, czyli plik lokalny w Twoim systemie lub zasobnik Google Cloud Storage.
    • W przypadku komputera kliknij Przeglądaj i wybierz plik w oknie wyboru plików.
    • Przy opcji Zasobnik Google Cloud Storage kliknij Przeglądaj, a następnie wybierz zasobnik i plik zawierający dane.
  7. Wybierz Format pliku.
  8. Kliknij Dalej, aby sprawdzić ustawienia.
  9. Kliknij Utwórz. Pojawi się strona Zbiory danych zawierająca nowy zbiór danych. Powinien mieć stan Przetwarzanie.
  10. Poczekaj, aż zbiór danych będzie miał stan Gotowe.

Wyświetlanie lub modyfikowanie zbioru danych

Gdy utworzysz zbiór danych, jego stan zmieni się na Ukończony. Możesz potem sprawdzić szczegóły zbioru danych.

Aby wyświetlić lub zmodyfikować zbiór danych:

  1. W konsoli Google Cloud otwórz stronę Zbiory danych.
  2. Kliknij nazwę zbioru danych. Pojawi się strona Szczegóły zbioru danych.
    1. Kliknij kartę Szczegóły, aby wyświetlić informacje o zbiorze danych. Na tej karcie możesz też edytować nazwę i opis zbioru danych.
    2. Aby wyświetlić zbiór danych na mapie, kliknij kartę Podgląd.
    3. Kliknij kartę Dane tabeli, aby wyświetlić wszystkie atrybuty zbioru danych. Są to atrybuty, których możesz używać do określania stylu zbioru danych na mapie.
    4. Kliknij przycisk Pobierz, aby pobrać dane do pliku lokalnego.
    5. Kliknij przycisk Usuń, aby usunąć zbiór danych.
    6. Kliknij przycisk Importuj plik danych, aby przesłać nowe dane do zbioru danych.

      Przesłanie nowych danych do zbioru danych powoduje utworzenie jego nowej wersji. Jeśli nowe dane zostaną przesłane:

      • Stan nowej wersji zbioru danych jest ustawiony na UKOŃCZONO.
      • Nowa wersja stanie się wersją „aktywną” i będzie używana przez aplikację.

      Jeśli podczas przesyłania wystąpił błąd:

      • Stan nowej wersji zbioru danych jest ustawiony na inny stan niż UKOŃCZONO. Jeśli na przykład istnieje poprzednia „aktywna” wersja, stan zbioru danych jest ustawiany na ODWRÓĆ.
      • Wcześniejsza „aktywna” wersja zbioru danych pozostaje wersją „aktywną” i jest używana przez Twoją aplikację.