За последние несколько лет многие организации разработали стратегии консолидации или трансформации данных или активно занимаются этим сегодня. Эти стратегии часто обусловлены пересекающимися приоритетами, включая необходимость разбить разрозненные системы данных, обеспечить комплексный, быстрый анализ перекрестных наборов данных и эффективно работать в масштабе по мере роста объема и сложности данных.
Для содействия этой трансформации часто применяются две категории технологий в той или иной комбинации: технология озер данных и технология хранилищ данных, иногда используемые совместно. Технологии озер данных и хранилищ данных часто путают и могут использоваться взаимозаменяемо в неформальных обсуждениях, но как на концептуальном, так и на уровне реализации они служат разным целям и играют разные роли в корпоративной информационной системе. На этой странице будет предпринята попытка описать эти технологии на общем уровне, независимо от поставщика и продукта, а также объяснить стратегический подход Esri к работе с этими технологиями с точки зрения системы ArcGIS.
Озера данных могут существенно различаться по определению и структуре, но в целом озеро данных представляет собой централизованное хранилище для отдельных элементов данных (файлов) различных типов, которые хранятся в одной большой масштабируемой системе хранения, позволяющей индексировать, каталогизировать и выполнять аналитику по этим файлам. Данные могут быть структурированными или неструктурированными, храниться в различных форматах файлов и организовываться в соответствии с входящими потоками данных или другими системами, которые создают эти данные. Затем осуществляется доступ к данным, их визуализация и анализ с использованием инструментов и возможностей, которые поставщик озера данных предоставляет через программное обеспечение.
Например, организация может использовать озеро данных для хранения тысяч CSV-файлов, которые представляют собой отдельные почасовые треки местоположения, скорости и направления движения транспортного средства. Программное обеспечение озера данных может поддерживать запуск пакетной аналитики по этим тысячам файлов для извлечения сценариев, в которых скорость превышает определенное значение, или выявления тенденций в местах, где часто происходят остановки. Традиционные системы данных потребовали бы объединения всех этих файлов в один набор данных, к которому затем можно будет получить доступ, но озеро данных позволяет масштабировать этот процесс запросов и аналитики в рамках огромного пула данных. В одном и том же озере данных одна и та же организация может хранить другой формат данных, обобщающий профили клиентов и данные о продажах на основе формата файлового архива, чтобы предыдущую активность можно было сопоставить с актуальной транзакционной базой данных активных заказов или клиентов.
Доступ к озерам данных осуществляется в первую очередь из ArcGIS как к источнику данных для постановки аналитических вопросов, а затем результаты просматриваются в пространственном или картографическом интерфейсе. Поскольку эти системы хранения обычно содержат очень большие наборы данных в файлах с аналогичной структурой, процессы, которые работают с этими данными, часто суммируют содержимое перед запуском геопространственной аналитики или сравнения этих наборов данных с другими пространственными или непространственными слоями для ответа на конкретный аналитический вопрос. Как правило, такой анализ требует интенсивной обработки, поэтому рабочий процесс обычно включает в себя несколько шагов:
Озера данных также можно использовать в качестве репозитория наборов данных изображений или растровых файлов, доступ к которым осуществляется через файл облачного подключения из ArcGIS Pro или как часть набора данных мозаики. Изображения из озера данных можно добавлять в набор данных мозаики и использовать для публикации сервиса изображений в качестве источника для анализа, который выполняется с использованием растровой аналитики, просматривается в ArcGIS Pro и используется для рабочих процессов геообработки, аналитики или отображения.
Вот некоторые примеры рабочих процессов озера данных с использованием ArcGIS:
Хранилища данных — это еще один тип систем хранения данных, которые могут различаться по конструкции, определению и построению. В целом хранилище данных больше всего похоже на систему управления реляционными базами данных, которая позволяет хранить большие структурированные наборы данных с возможностью запросов к наборам данных, аналитики и суммирования. Хранилище данных, как правило, отличается от традиционной системы реляционных баз данных масштабом данных, которые оно может поддерживать, типом и разнообразием аналитики, которую можно выполнять, а также скоростью, с которой эти процессы могут быть выполнены.
Хранилища данных также часто создаются в более облачной конфигурации или предоставляются в модели «программное обеспечение как услуга», когда клиенты подключаются к системе, управляемой компанией, создавшей технологию хранилища данных, используя вычислительные мощности и хранилище, которые также размещаются и управляются этим поставщиком. Другим распространенным компонентом хранилищ данных является использование нереляционных моделей данных, таких как модель «звезда», модель размерных данных или другие подобные концепции.
Работа с хранилищами данных из ArcGIS может принимать несколько различных форм. Наиболее распространенный шаблон начинается с подключения ArcGIS Pro к хранилищу данных для выполнения запроса к таблице, представлению или набору данных. Это создается с помощью слоя запроса, который представляет собой тип слоя в ArcGIS Pro, позволяющий запускать определенный пользователем SQL-запрос в поддерживаемой системе управления реляционными базами данных или облачном хранилище данных. Список поддерживаемых баз данных и облачных хранилищ данных см. в документации ArcGIS Pro.
Слой запроса возвращает результаты из базы данных в виде таблицы, которую можно отобразить на карте, если она содержит пространственный столбец, распознаваемый ArcGIS, а затем использовать для визуализации, в качестве входных данных для анализа или в качестве входных данных для создания картографической карты. Этот слой представляет собой активное соединение с хранилищем, поэтому при каждом изменении экстента карты отправляется новый запрос, который возвращает новый набор строк, потенциально отражающих обновленные исходные данные, обновленный расчет или просто новый пространственный экстент.
Если требуется веб-доступ, этот слой запроса можно опубликовать в динамическом картографическом сервисе на сайте ArcGIS GIS Server, который перенесет любые символы или определения из карты ArcGIS Pro в конфигурацию сервиса, но теперь каждый запрос пользователя будет инициировать обновленный SQL-запрос из ArcGIS Server в хранилище данных.
Хранилища данных оптимизированы для больших аналитических или сводных запросов, что позволяет владельцам данных отвечать на такие вопросы, как «каков был средний размер покупки в различных категориях продуктов по нескольким миллионам транзакций в наших магазинах за последние 24 часа?» Подобный запрос обычно выполняется регулярно, а результаты используются для создания операционной панели, сводки данных или диаграммы до тех пор, пока они не будут обновлены позже по расписанию. Хранилища данных также могут использоваться аналитиком данных или специалистом по работе с данными для более итеративного, исследовательского анализа, обычно для определения и последующего повторного использования сводной статистики или отчета.
По этой причине слои запросов в ArcGIS, которые подключаются к хранилищам данных, должны чаще всего запрашивать результаты такого анализа, а не определенный набор транзакционных строк (например, список всех миллионов транзакций за 24-часовой период). Хотя хранилища данных функционально могут запрашиваться построчно, они не оптимизированы для такого рода транзакционного взаимодействия и могут привести к неприятным ситуациям, например, к попытке запросить миллион строк для отображения на карте, что может привести к пятиминутному времени отклика для возврата (и отображения) всех запрошенных строк.
После публикации слоя запроса, поддерживаемого хранилищем данных, в ArcGIS Enterprise для некоторых поставщиков ArcGIS может реализовать дополнительную оптимизацию производительности. Благодаря облачным хранилищам данных ArcGIS внедрила дополнительную логику, способствующую эффективной обработке запросов и использованию вычислительных ресурсов, в частности, для баз данных AWS Redshift, Google BigQuery и Snowflake, которые могут взимать плату на основе общего потребления вычислительных ресурсов. Во время публикации ArcGIS может (дополнительно) автоматически создавать материализованное представление в исходном хранилище данных, что может повысить производительность и сэкономить общую стоимость запросов. Другой вариант — режим «снимка», в котором копия данных перемещается в ArcGIS Data Store во время публикации, а затем регулярно обновляется по расписанию, установленному издателем, так что ГИС-система всегда имеет последний набор результатов, но относительно медленные запросы не отправляются непрерывно в исходное хранилище данных.
Существуют и другие методы интеграции с хранилищами данных, но они менее распространены, в том числе: