За последние несколько лет многие организации разработали стратегии консолидации или трансформации данных или активно занимаются этим сегодня. Эти стратегии часто обусловлены пересекающимися приоритетами, включая необходимость разбить разрозненные системы данных, обеспечить комплексный, быстрый анализ перекрестных наборов данных и эффективно работать в масштабе по мере роста объема и сложности данных.
Для содействия этой трансформации часто применяются две категории технологий в той или иной комбинации; технология озер данных и технология хранилищ данных, иногда используемые совместно. Технологии озер данных и хранилищ данных часто путают и могут использоваться взаимозаменяемо в неформальных обсуждениях, но как на концептуальном, так и на уровне реализации они служат разным целям и играют разные роли в корпоративной информационной системе. На этой странице будет предпринята попытка описать эти технологии на общем уровне, независимо от поставщика и продукта, а также объяснить стратегический подход Esri к работе с этими технологиями с точки зрения системы ArcGIS.
ArcGIS Online поддерживает подключение к хранилищам данных через входные коннекторы для ArcGIS Data Pipelines. Пользователи ArcGIS Enterprise могут подключаться к хранилищам данных через слои запросов, опубликованные из ArcGIS Pro. Пользователи ArcGIS Pro могут подключаться к поддерживаемым хранилищам данных как к слоям запросов, а также использовать картографические сервисы, опубликованные из ArcGIS Enterprise. Дополнительный модуль для ArcGIS Pro - ArcGIS Data Interoperability - также включает средства чтения и записи, работающие с системами хранилища данных.
ArcGIS Online поддерживает подключения к озёрам данных, использующим поддерживаемые поставщики объектного хранилища, и может использоваться для работы с распространёнными форматами данных озера данных, такими как parquet. Data Pipelines не поддерживает пакетные аналитические запросы в озера данных. ArcGIS Data Pipelines для ArcGIS Enterprise предоставляет аналогичные возможности, а ArcGIS Enterprise также поддерживает публикацию сервисов изображений, ссылающихся на наборы данных, хранящихся в системе озера данных. ArcGIS Pro поддерживает подключение к озерам данных с помощью подключений к многофайловым объектам к хранилищу папок и через облачные файлы подключения, которые могут подключаться к озерам данных для доступа к растровым изображениям или сохранения результатов растрового анализа .crf.
| Возможности | ArcGIS Online | ArcGIS Enterprise | ArcGIS Location Platform | ArcGIS Pro |
|---|---|---|---|---|
| Подключение к хранилищу данных | Н/Д | |||
| Подключение к озеру данных | Н/Д |
Полная поддержка Частичная поддержка
Озера данных могут существенно различаться по определению и структуре, но в целом озеро данных представляет собой централизованное хранилище для отдельных элементов данных (файлов) различных типов, которые хранятся в одной большой масштабируемой системе хранения, позволяющей индексировать, каталогизировать и выполнять аналитику по этим файлам. Данные могут быть структурированными или неструктурированными, храниться в различных форматах файлов и организовываться в соответствии с входящими потоками данных или другими системами, которые создают эти данные. Затем осуществляется доступ к данным, их визуализация и анализ с использованием инструментов и возможностей, которые поставщик озера данных предоставляет через программное обеспечение.
Например, организация может использовать озеро данных для хранения тысяч CSV-файлов, которые представляют собой отдельные почасовые треки местоположения, скорости и направления движения транспортного средства. Программное обеспечение озера данных может поддерживать запуск пакетной аналитики по этим тысячам файлов для извлечения сценариев, в которых скорость превышает определенное значение, или выявления тенденций в местах, где часто происходят остановки. Традиционные системы данных потребовали бы объединения всех этих файлов в один набор данных, к которому затем можно будет получить доступ, но озеро данных позволяет масштабировать этот процесс запросов и аналитики в рамках огромного пула данных. В одном и том же озере данных одна и та же организация может хранить другой формат данных, обобщающий профили клиентов и данные о продажах на основе формата файлового архива, чтобы предыдущую активность можно было сопоставить с актуальной транзакционной базой данных активных заказов или клиентов.
Доступ к озерам данных осуществляется в первую очередь из ArcGIS как к источнику данных для постановки аналитических вопросов, а затем результаты просматриваются в пространственном или картографическом интерфейсе. Поскольку эти системы хранения обычно содержат очень большие наборы данных в файлах с аналогичной структурой, процессы, которые работают с этими данными, часто суммируют содержимое перед запуском геопространственной аналитики или сравнения этих наборов данных с другими пространственными или непространственными слоями для ответа на конкретный аналитический вопрос. Как правило, такой анализ требует интенсивной обработки, поэтому рабочий процесс обычно включает в себя несколько шагов:
Тщательно спланируйте или определите аналитический вопрос, часто используя подмножество данных или один пример файла или набора данных. Максимально оптимизируйте этот анализ, если он будет выполняться с очень большим слоем данных, и максимально сократите выходные столбцы и данные для повышения эффективности.
Запустите аналитику, используя интерфейс, предоставляемый озером данных или внешней системой обработки, например Apache Spark. Результаты часто возвращаются в фрейм данных или набор данных в памяти в этом интерфейсе
Просмотрите обобщенные результаты аналитики в табличной форме или в виде пространственного слоя, чтобы увидеть ответы на аналитический вопрос. При необходимости сохраните результаты в другом формате или репозитории, опубликовав файл CSV, создав размещенный векторный слой ArcGIS, или отправив результаты в другой API или систему.
Озера данных также можно использовать в качестве репозитория наборов данных изображений или растровых файлов, доступ к которым осуществляется через файл облачного подключения из ArcGIS Pro или как часть набора данных мозаики. Изображения из озера данных можно добавлять в набор данных мозаики и использовать для публикации сервиса изображений в качестве источника для анализа, который выполняется с использованием растровой аналитики, просматривается в ArcGIS Pro и используется для рабочих процессов геообработки, аналитики или отображения.
Вот некоторые примеры рабочих процессов озера данных с использованием ArcGIS:
Выполнение анализа горячих точек по тысячам CSV-файлов, содержащих данные о местоположении птиц, собранные за многолетний период, с помощью ArcGIS GeoAnalytics Engine или ArcGIS GeoAnalytics в ArcGIS Pro.
Использование ученым-экологом API ArcGIS Python для определения времени и местоположения высоких уровней озона по всей стране в наборе данных, содержащем миллионы показаний статических датчиков, с помощью таких инструментов, как Обнаружение инцидентов и Создание куба пространство-время.
Хранилища данных — это еще один тип систем хранения данных, которые могут различаться по конструкции, определению и построению. В целом хранилище данных больше всего похоже на систему управления реляционными базами данных, которая позволяет хранить большие структурированные наборы данных с возможностью запросов к наборам данных, аналитики и суммирования. Хранилище данных, как правило, отличается от традиционной системы реляционных баз данных масштабом данных, которые оно может поддерживать, типом и разнообразием аналитики, которую можно выполнять, а также скоростью, с которой эти процессы могут быть выполнены.
Хранилища данных также часто создаются в более облачной конфигурации или предоставляются в модели «программное обеспечение как услуга», когда клиенты подключаются к системе, управляемой компанией, создавшей технологию хранилища данных, используя вычислительные мощности и хранилище, которые также размещаются и управляются этим поставщиком. Другим распространенным компонентом хранилищ данных является использование нереляционных моделей данных, таких как модель «звезда», модель размерных данных или другие подобные концепции.
Работа с хранилищами данных из ArcGIS может принимать несколько различных форм. Наиболее распространенный шаблон начинается с подключения ArcGIS Pro к хранилищу данных для выполнения запроса к таблице или представлению. Это создается с помощью слоя запроса, который представляет собой тип слоя в ArcGIS Pro, позволяющий запускать определенный пользователем SQL-запрос в поддерживаемой базе данных. Список поддерживаемых баз данных и облачных хранилищ данных см. в документации ArcGIS Pro.
Слой запроса возвращает результаты из базы данных в виде таблицы, которую можно отобразить на карте, если она содержит пространственный столбец, распознаваемый ArcGIS, а затем использовать для визуализации, в качестве входных данных для анализа или в качестве входных данных для создания картографической карты. Этот слой представляет собой активное соединение с хранилищем, поэтому при каждом изменении экстента карты отправляется новый запрос, который возвращает новый набор строк, потенциально отражающих обновленные исходные данные, обновленный расчет или просто новый пространственный экстент.
Если требуется веб-доступ, этот слой запроса может быть опубликован на ArcGIS Enterprise как динамический картографический сервис. Этот сервис перенесет любые символы или определения из карты ArcGIS Pro в конфигурацию сервиса. Каждый пользовательский запрос будет запускать обновлённый SQL-запрос из ArcGIS Enterprise в хранилище данных. Картографические сервисы также могут использоваться как векторные слои для визуализации и запросов на стороне клиента.
Хранилища данных оптимизированы для больших аналитических или сводных запросов, что позволяет владельцам данных отвечать на такие вопросы, как «каков был средний размер покупки в различных категориях продуктов по нескольким миллионам транзакций в наших магазинах за последние 24 часа?» Подобный запрос обычно выполняется регулярно, а результаты используются для создания операционной панели, сводки данных или диаграммы до тех пор, пока они не будут обновлены позже по расписанию. Хранилища данных также могут использоваться аналитиком данных или специалистом по работе с данными для более итеративного, исследовательского анализа, обычно для определения и последующего повторного использования сводной статистики или отчета.
По этой причине слои запросов в ArcGIS, которые подключаются к хранилищам данных, должны чаще всего запрашивать результаты такого анализа, а не определенный набор транзакционных строк, например, список всех миллионов транзакций за 24-часовой период. Хотя хранилища данных функционально могут запрашиваться построчно, они не оптимизированы для такого рода транзакционного взаимодействия и могут привести к неприятным ситуациям, например, к попытке запросить миллион строк для отображения на карте, что может привести к большому времени отклика для возврата и отображения всех запрошенных строк.
Слои запросов можно дополнительно оптимизировать, уменьшая количество запросов, выполняемых непосредственно к данным. Меньшее количество запросов снижает затраты на облачное хранилище данных, поскольку эти сервисы обычно несут расходы в зависимости от используемых вычислительных ресурсов. При публикации слоёв на основе данных в облачных хранилищах данных ArcGIS может дополнительно создавать материализованный вид. Материализованный вид можно обновить после обновления базовых данных, чтобы включить эти обновления в представление. Использование материализированных видов означает, что вычислительные ресурсы облачного хранилища данных оплачиваются только при обновлении вида, а не при каждом обращении к данным. Использование заранее вычисленных материализированных видов обычно также быстрее, чем выполнение прямого запроса к данным. Материализованные виды особенно полезны для наборов данных, которые обновляются редко, и для сложных запросов, требующих значительных вычислительных ресурсов.
Ещё одна стратегия снижения количества запросов к облачному хранилищу данных — создание снимка данных при публикации слоя запроса. Снимок копирует набор результатов запроса из облачного хранилища данных в ArcGIS Enterprise. Слой использует эту копию вместо выполнения запроса к облачному хранилищу данных, что обычно улучшает производительность слоя. Снимки не обновляются автоматически при обновлении базовых данных. В ArcGIS Enterprise вы можете обновлять снимок по требованию или планировать обновление в определённые интервалы.
Существуют и другие методы интеграции с хранилищами данных, но они менее распространены, в том числе:
Интеграции в стиле ETL, где результаты запроса или представления хранилища данных регулярно копируются в ArcGIS. Такие интеграции могут выполнять эту работу с использованием ArcGIS Data Pipelines, библиотек ArcGIS Python, ArcGIS Notebooks или дополнительного модуля ArcGIS Data Interoperability. Преимущество интеграций в стиле ETL в том, что они позволяют переносить данные из хранилищ данных в ArcGIS Online в виде размещённого векторного слоя или таблицы.
Интеграции в стиле API, где веб-приложение ArcGIS или клиентское приложение может отправить запрос в хранилище данных для возврата результатов или значений. Это возможно с помощью ArcGIS Maps SDK, где на основе результатов может быть создан векторный слой или графический слой на стороне клиента. ArcGIS Enterprise SDK также можно использовать для создания пользовательского канала данных для сервисов объектов.
В обоих сценариях проверка подлинности, частота обновления данных и элементы управления доступом являются важными обсуждениями и требованиями, которые следует учитывать.