Озера и хранилища данных

За последние несколько лет многие организации разработали стратегии консолидации или трансформации данных или активно занимаются этим сегодня. Эти стратегии часто обусловлены пересекающимися приоритетами, включая необходимость разбить разрозненные системы данных, обеспечить комплексный, быстрый анализ перекрестных наборов данных и эффективно работать в масштабе по мере роста объема и сложности данных.

Для содействия этой трансформации часто применяются две категории технологий в той или иной комбинации: технология озер данных и технология хранилищ данных, иногда используемые совместно. Технологии озер данных и хранилищ данных часто путают и могут использоваться взаимозаменяемо в неформальных обсуждениях, но как на концептуальном, так и на уровне реализации они служат разным целям и играют разные роли в корпоративной информационной системе. На этой странице будет предпринята попытка описать эти технологии на общем уровне, независимо от поставщика и продукта, а также объяснить стратегический подход Esri к работе с этими технологиями с точки зрения системы ArcGIS.

Озера данных

Озера данных могут существенно различаться по определению и структуре, но в целом озеро данных представляет собой централизованное хранилище для отдельных элементов данных (файлов) различных типов, которые хранятся в одной большой масштабируемой системе хранения, позволяющей индексировать, каталогизировать и выполнять аналитику по этим файлам. Данные могут быть структурированными или неструктурированными, храниться в различных форматах файлов и организовываться в соответствии с входящими потоками данных или другими системами, которые создают эти данные. Затем осуществляется доступ к данным, их визуализация и анализ с использованием инструментов и возможностей, которые поставщик озера данных предоставляет через программное обеспечение.

Например, организация может использовать озеро данных для хранения тысяч CSV-файлов, которые представляют собой отдельные почасовые треки местоположения, скорости и направления движения транспортного средства. Программное обеспечение озера данных может поддерживать запуск пакетной аналитики по этим тысячам файлов для извлечения сценариев, в которых скорость превышает определенное значение, или выявления тенденций в местах, где часто происходят остановки. Традиционные системы данных потребовали бы объединения всех этих файлов в один набор данных, к которому затем можно будет получить доступ, но озеро данных позволяет масштабировать этот процесс запросов и аналитики в рамках огромного пула данных. В одном и том же озере данных одна и та же организация может хранить другой формат данных, обобщающий профили клиентов и данные о продажах на основе формата файлового архива, чтобы предыдущую активность можно было сопоставить с актуальной транзакционной базой данных активных заказов или клиентов.

Работа с озерами данных в ArcGIS

Доступ к озерам данных осуществляется в первую очередь из ArcGIS как к источнику данных для постановки аналитических вопросов, а затем результаты просматриваются в пространственном или картографическом интерфейсе. Поскольку эти системы хранения обычно содержат очень большие наборы данных в файлах с аналогичной структурой, процессы, которые работают с этими данными, часто суммируют содержимое перед запуском геопространственной аналитики или сравнения этих наборов данных с другими пространственными или непространственными слоями для ответа на конкретный аналитический вопрос. Как правило, такой анализ требует интенсивной обработки, поэтому рабочий процесс обычно включает в себя несколько шагов:

  1. Тщательно спланируйте или определите аналитический вопрос, часто используя подмножество данных или один пример файла или набора данных. Максимально оптимизируйте этот анализ, если он будет выполняться с очень большим слоем данных, и максимально сократите выходные столбцы и данные для повышения эффективности.
  2. Запустите аналитику, используя интерфейс, предоставляемый озером данных или внешней системой обработки, например Apache Spark. Результаты часто возвращаются в фрейм данных или набор данных в памяти в этом интерфейсе
  3. Просмотрите обобщенные результаты аналитики в табличной форме или в виде пространственного слоя, чтобы увидеть ответы на аналитический вопрос. При необходимости сохраните результаты в другом формате или репозитории, опубликовав файл CSV, создав размещенный векторный слой ArcGIS, или отправив результаты в другой API или систему.

Озера данных также можно использовать в качестве репозитория наборов данных изображений или растровых файлов, доступ к которым осуществляется через файл облачного подключения из ArcGIS Pro или как часть набора данных мозаики. Изображения из озера данных можно добавлять в набор данных мозаики и использовать для публикации сервиса изображений в качестве источника для анализа, который выполняется с использованием растровой аналитики, просматривается в ArcGIS Pro и используется для рабочих процессов геообработки, аналитики или отображения.

Вот некоторые примеры рабочих процессов озера данных с использованием ArcGIS:

  • Выполнение анализа горячих точек по тысячам CSV-файлов, содержащих данные о местоположении птиц, собранные за многолетний период, с помощью ArcGIS GeoAnalytics Engine или ArcGIS GeoAnalytics в ArcGIS Pro.
  • Использование ученым-экологом API ArcGIS Python для определения времени и местоположения высоких уровней озона по всей стране в наборе данных, содержащем миллионы показаний статических датчиков, с помощью таких инструментов, как Обнаружение инцидентов и Создание куба пространство-время.

Хранилища данных

Хранилища данных — это еще один тип систем хранения данных, которые могут различаться по конструкции, определению и построению. В целом хранилище данных больше всего похоже на систему управления реляционными базами данных, которая позволяет хранить большие структурированные наборы данных с возможностью запросов к наборам данных, аналитики и суммирования. Хранилище данных, как правило, отличается от традиционной системы реляционных баз данных масштабом данных, которые оно может поддерживать, типом и разнообразием аналитики, которую можно выполнять, а также скоростью, с которой эти процессы могут быть выполнены.

Хранилища данных также часто создаются в более облачной конфигурации или предоставляются в модели «программное обеспечение как услуга», когда клиенты подключаются к системе, управляемой компанией, создавшей технологию хранилища данных, используя вычислительные мощности и хранилище, которые также размещаются и управляются этим поставщиком. Другим распространенным компонентом хранилищ данных является использование нереляционных моделей данных, таких как модель «звезда», модель размерных данных или другие подобные концепции.

Работа с хранилищами данных в 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 во время публикации, а затем регулярно обновляется по расписанию, установленному издателем, так что ГИС-система всегда имеет последний набор результатов, но относительно медленные запросы не отправляются непрерывно в исходное хранилище данных.

Существуют и другие методы интеграции с хранилищами данных, но они менее распространены, в том числе:

  • Интеграции в стиле ETL, при которых результаты запроса или представления хранилища данных копируются в другой формат данных или интегрируются в многопользовательскую ГИС-систему на регулярной основе в качестве представления размещенного векторного слоя или класса объектов многопользовательской базы геоданных.
  • Интеграции в стиле API, где веб-приложение ArcGIS или клиентское приложение может запрашивать конечную точку HTTP хранилища данных для возврата результатов или значений. Это возможно с помощью ArcGIS Maps SDKs, где на основе результатов может быть создан векторный слой или графический слой на стороне клиента.
  • В обоих этих сценариях проверка подлинности, частота обновления данных и элементы управления доступом являются важными обсуждениями и требованиями, которые следует учитывать.
Top