Com os conjuntos de dados, você pode fazer o upload de dados geoespaciais de um arquivo local ou do Google Cloud Storage para a Plataforma Google Maps. Em seguida, é possível associar um conjunto a um ou mais estilos de mapa no console do Cloud. Depois de associar o conjunto de dados a um estilo de mapa, use a API de estilo baseado em dados para aprimorar dinamicamente o aplicativo de mapas.
Também é possível usar uma API REST se quiser fazer o upload dos dados geoespaciais para um conjunto. Para mais informações, consulte a API Maps Datasets.
Configurar papéis
Para criar e gerenciar conjuntos de dados em um projeto do Google Cloud, você precisa ter papel de proprietário ou editor do IAM nele.
Também é possível atribuir os seguintes papéis do IAM a uma conta de usuário ou de serviço usada para gerenciar conjuntos de dados:
- O papel
Maps Platform Datasets Admin
dá à conta de usuário ou de serviço acesso de leitura/gravação aos conjuntos de dados no projeto e permite que o usuário execute todas as operações neles. - O papel
Maps Platform Datasets Viewer
dá acesso somente leitura aos conjuntos de dados no projeto e permite executar operações de listagem, recebimento ou download.
Para mais informações, acesse Conceder um papel do IAM usando o console do Google Cloud.
Origem de dados para um conjunto
Depois de criar um conjunto, faça o upload dos dados do Google Cloud Storage ou de um arquivo local para ele.Ao fazer o upload de dados do Cloud Storage, especifique o caminho do arquivo para o elemento que contém as informações no Cloud Storage. Esse caminho está no formato
gs://GCS_BUCKET/FILE
.Para fazer a solicitação, o usuário precisa ter o papel de leitor de objetos do Storage ou outra função que inclua a permissão de
storage.objects.get
. Para mais informações sobre como gerenciar o acesso ao Cloud Storage, consulte Visão geral do controle de acesso.- Ao fazer o upload de dados de um arquivo local, especifique o caminho para o arquivo GeoJSON, KML ou CSV que contém os dados para upload.
Pré-requisitos
Ao criar um conjunto de dados:
- Os nomes de exibição precisam ser exclusivos no projeto do Google Cloud.
- Esses nomes devem ter menos de 64 bytes. Como os caracteres são representados em UTF-8, em alguns idiomas, um caractere pode ser representado por vários bytes.
- As descrições precisam ter menos de 1.000 bytes.
Ao fazer o upload de dados:
- Os tipos de arquivos compatíveis são CSV, GeoJSON e KML.
- O tamanho máximo de arquivo permitido é 500 MB.
- Os nomes das colunas de atributos não podem começar com a string "?_".
- Geometrias tridimensionais não são aceitas. Isso inclui o sufixo "Z" no formato WKT e a coordenada de altitude no formato GeoJSON.
Práticas recomendadas para a preparação de dados
Se os dados de origem forem complexos ou grandes, como pontos densos, linhas de feição longas ou polígonos, (geralmente, os arquivos de origem com tamanhos maiores que 50 MB se enquadram nessa categoria), simplifique seus dados antes do upload para ter o melhor desempenho em um mapa visual.
Confira algumas práticas recomendadas para preparar seus dados:
- Minimize as propriedades do elemento. Mantenha apenas as propriedades de elemento necessárias para estilizar o mapa, por exemplo, "id" e "categoria". É possível mesclar outras propriedades a um elemento em um aplicativo cliente usando estilos orientados a dados em uma chave de identificador exclusiva. Por exemplo, consulte Conferir seus dados em tempo real com o estilo orientado a dados.
- Use tipos de dados simples para objetos de propriedade, como números inteiros, para minimizar o tamanho dos blocos e melhorar o desempenho do mapa.
- Simplifique geometrias complexas antes de fazer upload de um arquivo. Você pode fazer isso em uma ferramenta geoespacial de sua escolha, como o utilitário de código aberto Mapshaper.org ou no BigQuery usando ST_Simplify em geometrias de polígonos complexas.
- Agrupe pontos muito densos antes de fazer o upload de um arquivo. Você pode fazer isso em uma ferramenta geoespacial de sua escolha, como as funções de cluster turf.js de código aberto ou no BigQuery usando ST_CLUSTERDBSCAN em geometrias de pontos densas.
Confira outras orientações sobre práticas recomendadas para conjuntos de dados em Visualizar seus dados com conjuntos de dados e o BigQuery.
Requisitos de GeoJSON
O SDK do Maps para Android é compatível com a especificação atual do GeoJSON. O SDK do Maps para Android também aceita arquivos GeoJSON que contêm qualquer um destes tipos de objetos:
- Objetos de geometria. Esse tipo de objeto é uma forma espacial, descrita como uma união de pontos, linhas e polígonos com furos opcionais.
- Objetos de elementos. Esse tipo de objeto contém uma geometria e outros pares de nome/valor, com um significado específico do aplicativo.
- Coleções de elementos. Uma coleção de recursos é um conjunto de objetos de recursos.
O SDK Maps para Android não é compatível com arquivos GeoJSON que têm dados em um sistema de referência de coordenadas (CRS, na sigla em inglês) diferente de WGS84.
Para mais informações sobre o GeoJSON, consulte Compliance com RFC 7946 (ambos os links em inglês).
Requisitos de KML
O SDK do Maps para Android tem os seguintes requisitos:
- Todos os URLs precisam ser locais (ou relativos) ao próprio arquivo.
- Compatível com geometrias de ponto, linha e polígono.
- Todos os atributos de dados são considerados strings.
- Ícones ou
<styleUrl>
definidos fora do arquivo - Links de rede, como
<NetworkLink>
- Sobreposições de solo, por exemplo,
<GroundOverlay>
- Geometrias 3D ou qualquer tag relacionada à altitude, como
<altitudeMode>
- Especificações da câmera, por exemplo,
<LookAt>
- Estilos definidos dentro do arquivo KML
Requisitos de CSV
Para arquivos CSV, os nomes das colunas compatíveis são listados abaixo em ordem de prioridade:
latitude
,longitude
lat
,long
x
,y
wkt
(texto conhecido)address
,city
,state
,zip
address
- Uma única coluna contendo todas as informações de endereço, como
1600 Amphitheatre Parkway Mountain View, CA 94043
Por exemplo, seu arquivo inclui colunas chamadas x
, y
e wkt
.
Como x
e y
têm uma prioridade mais alta, segundo a ordem dos nomes de colunas compatíveis na lista acima, os valores nas colunas x
e y
são usados, e a coluna wkt
é ignorada.
Além disso:
- Cada nome de coluna tem que pertencer a uma única coluna, ou seja, não é possível ter uma coluna chamada
xy
que inclua dados das coordenadas x e y. Essas coordenadas precisam estar em colunas diferentes. - Os nomes das colunas não diferenciam maiúsculas de minúsculas.
- A ordem dos nomes não importa. Por exemplo, se o arquivo CSV tiver colunas
lat
elong
, elas poderão estar em qualquer ordem.
Processar erros de upload de dados
Ao fazer o upload de dados para um conjunto, você pode encontrar um dos erros comuns descritos nesta seção.
Erros de GeoJSON
Exemplo de erro comum de GeoJSON:
- Campo
type
faltando, outype
não é uma string. O arquivo de dados GeoJSON enviado precisa ter um campo de string chamadotype
em cada definição de objeto de elemento e de geometria.
Erros de KML
Exemplo de erro comum de KML:
- O arquivo de dados não pode conter nenhum dos elementos KML incompatíveis listados acima. Caso contrário, a importação pode falhar.
Erros de CSV
Exemplos de erros comuns de CSV:
- Algumas linhas não contêm valores para uma coluna de geometria. Em um arquivo CSV, todas as linhas em colunas desse tipo precisam ter valores não vazios. Confira algumas colunas de geometria:
latitude
,longitude
lat
,long
x
,y
wkt
address
,city
,state
,zip
address
- Uma única coluna contendo todas as informações de endereço, como
1600 Amphitheatre Parkway Mountain View, CA 94043
- Se
x
ey
forem suas colunas de geometria, verifique se as unidades são longitude e latitude. Alguns conjuntos de dados públicos usam sistemas de coordenadas diferentes nos cabeçalhosx
ey
. Se as unidades incorretas forem usadas, o conjunto poderá ser importado, mas os dados renderizados talvez mostrem os pontos em locais inesperados.
Criar conjunto de dados
Para criar um conjunto de dados:
- No console do Google Cloud, acesse a página Conjuntos de dados.
- Clique em Criar conjunto de dados.
- Insira um nome, que precisa ser exclusivo.
- Também é possível inserir uma descrição, o que é opcional.
- Clique em Continuar. A página Importar dados aparece.
- Selecione a Origem do upload dos dados usados para preencher o conjunto como Computador, ou seja, um arquivo local no seu sistema, ou Bucket do Google Cloud Storage.
- Em Computador, clique em Procurar e escolha o arquivo no seletor.
- Em Bucket do Google Cloud Storage, clique em Procurar e selecione o bucket e o arquivo que contêm os dados.
- Escolha o Formato do arquivo.
- Clique em Continuar para revisar as configurações.
Clique em Criar. A página Conjuntos de dados aparece com o novo conjunto. O status deve ser Processando.
Se os dados forem enviados:
- O status do conjunto de dados é definido como CONCLUÍDO.
- O conjunto de dados se torna a versão "ativa" e é a versão usada pelo app.
Se houver um erro no upload:
- O status da nova versão do conjunto de dados é definido como um status diferente de CONCLUÍDA.
Acessar ou modificar um conjunto de dados
Depois de criar um conjunto de dados, você pode acessá-lo ou modificá-lo:
- No console do Google Cloud, acesse a página Conjuntos de dados.
- Clique no nome do conjunto de dados. A página Detalhes do conjunto de dados vai aparecer.
- Selecione a guia Detalhes para encontrar informações sobre o conjunto. Nessa guia, também é possível editar o nome e a descrição dele.
- Clique na guia Visualizar para conferir seu conjunto de dados em um mapa (somente conjuntos de dados com estado CONCLUÍDO ou REVERTIDO).
- Clique na guia Dados da tabela para conferir todos os atributos do conjunto de dados (somente conjuntos de dados com estado CONCLUÍDO ou REVERTIDO). Esses são os atributos que você pode usar para estilizar o conjunto de dados no mapa.
- Clique no botão Download para armazenar as informações em um arquivo local.
- Clique no botão Excluir para remover o conjunto.
Clique no botão Import Data File para fazer upload de novos dados para o conjunto de dados.
O upload de novos dados cria uma nova versão do conjunto. Se o upload dos novos dados for concluído:
- O status da nova versão do conjunto de dados é definido como CONCLUÍDO.
- A nova versão se torna a versão "ativa" e é a versão usada pelo app.
Se houver um erro no upload:
- O status da nova versão do conjunto de dados é definido como um status diferente de CONCLUÍDA. Por exemplo, se houver uma versão "ativa" anterior, o status do conjunto de dados será definido como REVERTIDO.
- A versão "ativa" anterior do conjunto de dados continua sendo a versão "ativa" e é a versão usada pelo app.