Подготовка

В этом документе описаны предварительные требования, рекомендации и распространенные ошибки при работе с наборами данных.

Требования

Когда вы создаете набор данных, должны выполняться следующие условия:

  • Отображаемые названия в рамках одного проекта Google Cloud должны быть уникальными.
  • Отображаемые названия должны быть менее 64 байт. Поскольку символы кодируются в UTF-8, на некоторых языках один символ может занимать несколько байтов.
  • Описания должны быть менее 1000 байтов.

Когда вы загружаете набор данных, должны выполняться следующие условия:

  • Поддерживаемые типы файлов: CSV, GeoJSON и KML.
  • Максимальный размер файла: 500 МБ.
  • Названия столбцов атрибутов не могут начинаться со строки "?_".
  • Трехмерная геометрия не поддерживается, в частности суффикс "Z" в формате WKT и координата высоты в формате GeoJSON.

Рекомендации по подготовке данных

Если исходные данные сложные или объемные, например содержат плотные точки, длинные строки или многоугольники (часто в эту категорию попадают исходные файлы размером более 50 МБ), попробуйте упростить данные перед загрузкой, чтобы добиться наилучшей производительности на визуальной карте.

Вот несколько рекомендаций по подготовке данных:

  1. Минимизируйте количество свойств объектов. Оставьте только те свойства объектов, которые нужны для стилизации карты, например "id" и "category". Вы можете присоединить дополнительные свойства к объекту в клиентском приложении, используя стили на основе данных для ключа уникального идентификатора. Например, ознакомьтесь со статьей Как использовать стили на основе данных для просмотра данных в реальном времени.
  2. Используйте простые типы данных для объектов свойств, например целые числа, чтобы уменьшить размер фрагментов и повысить производительность карты.
  3. Упростите сложные геометрические фигуры перед загрузкой файла. Это можно сделать в любом геопространственном инструменте, например в утилите с открытым исходным кодом Mapshaper.org, или в BigQuery с помощью функции ST_Simplify для сложных многоугольников.
  4. Сгруппируйте точки, расположенные слишком близко друг к другу, прежде чем загружать файл. Это можно сделать с помощью любого инструмента для работы с геопространственными данными, например функций кластеризации turf.js с открытым исходным кодом, или в BigQuery с помощью ST_CLUSTERDBSCAN для плотных точечных геометрий.

Дополнительные рекомендации по работе с наборами данных можно найти в статье Визуализация данных с помощью наборов данных и BigQuery.

Требования к файлам GeoJSON

Maps Datasets API поддерживает текущую спецификацию GeoJSON. Также Maps Datasets API поддерживает файлы GeoJSON, содержащие объекты следующих типов:

  • Геометрические элементы – пространственные фигуры, описанные как сочетание точек, линий и многоугольников с возможными пустыми участками.
  • Объекты – геометрические объекты с дополнительными парами название/значение, которые задаются на уровне приложения.
  • Коллекции объектов – наборы объектов.

Maps Datasets API не поддерживает файлы GeoJSON с данными в любой системе координат кроме WGS84.

Подробную информацию о GeoJSON вы найдете в статье о совместимости с RFC 7946.

Требования к файлам KML

Для использования с Maps Datasets API должны соблюдаться следующие требования:

  • Все URL должны быть локальными (или относительными) для файла.
  • Поддерживаются точки, линии и многоугольники.
  • Все атрибуты данных считаются строками.
Следующие функции KML не поддерживаются:
  • Значки или <styleUrl>, определенные не в самом файле.
  • Сетевые ссылки, например <NetworkLink>.
  • Наземные наложения, например <GroundOverlay>.
  • Трехмерная геометрия или любые теги высоты, например <altitudeMode>.
  • Спецификации камеры, например <LookAt>.
  • Стили, определенные в файле KML.

Требования к файлам CSV

Поддерживаемые названия столбцов для файлов CSV в порядке приоритета:

  • latitude, longitude;
  • lat, long;
  • x, y;
  • wkt (Well-Known Text);
  • address, city, state, zip;
  • address
  • один столбец с полным адресом, например 1600 Amphitheatre Parkway Mountain View, CA 94043.

Вот как это работает. Допустим, в файле есть столбцы с названиями x, y и wkt. Поскольку у x и y более высокий приоритет, как показано в списке выше, используются значения из столбцов x и y, а столбец wkt игнорируется.

Дополнительные замечания:

  • Каждое название должно соответствовать отдельному столбцу. Другими словами, нельзя назвать столбец xy и включить в него данные о координатах x и y. Эти координаты должны быть в разных столбцах.
  • В названиях столбцов регистр не учитывается.
  • Порядок названий столбцов не имеет значения, например, если ваш файл CSV содержит столбцы lat и long, они могут стоять в любой последовательности.

Ошибки загрузки данных

При загрузке данных в набор могут возникать ошибки.

Ошибки в файлах GeoJSON

Распространенные ошибки в файлах GeoJSON:

  • Отсутствует поле type, или type не является строкой. Загруженный файл GeoJSON должен содержать поле-строку с названием type в определении каждого объекта и геометрического элемента.

Ошибки в файлах KML

Распространенные ошибки в файлах KML:

  • Файл данных не должен содержать перечисленные выше неподдерживаемые функции KML. В противном случае импорт данных может прерваться.

Ошибки в файлах CSV

Распространенные ошибки в файлах CSV:

  • В некоторых строках нет значений в столбце геометрии. Все строки в файле CSV должны содержать непустые значения для столбцов геометрии. К столбцам геометрии относятся:
    • latitude, longitude;
    • lat, long;
    • x, y;
    • wkt
    • address, city, state, zip;
    • address
    • один столбец с полным адресом, например 1600 Amphitheatre Parkway Mountain View, CA 94043.
  • Если вы используете столбцы геометрии x и y, убедитесь, что в них заданы единицы долготы и широты. В некоторых общедоступных наборах данных в столбцах x и y задается другая система координат. Если в файле используются другие единицы измерения, набор данных может быть импортирован успешно, но обработанные точки будут показываться в неправильных местах.