WikiDer > Куб данных

Data cube

В контексте компьютерного программирования куб данных (или же куб данных) это многомерный ("n-D") массив ценностей. Обычно термин datacube применяется в контекстах, где эти массивы значительно больше, чем основная память хост-компьютера; примеры включают многотерабайтные / петабайтные хранилища данных и Временные ряды данных изображения.

Куб данных используется для представления данных (иногда называемых фактами) по некоторой мере, представляющей интерес. OLAP такими мерами могут быть дочерние предприятия компании, продукты, предлагаемые компанией, и время; в этой настройке фактом будет событие продажи, когда конкретный продукт был продан в определенной дочерней компании в определенное время. В временных рядах спутниковых изображений измерениями будут координаты широты и долготы и время; фактом будет пиксель в данной пространственно-временной координате, принятый спутником (после некоторой обработки, которая здесь не имеет значения). куб (и приведенные выше примеры для краткости являются трехмерными), куб данных обычно представляет собой многомерное понятие, которое может быть одномерным, двухмерным, трехмерным или многомерным. каждое измерение представляет собой отдельную меру, тогда как ячейки куба представляют интересующие факты. Иногда кубы содержат только несколько значений, а остальные пустой, то есть: undefined, иногда большинство или все координаты куба содержат значение ячейки. В первом случае такие данные называются редкий, во втором случае они называются плотный, хотя между ними нет четких границ.

История

Многомерные массивы давно известны в языках программирования. Fortran предлагает одномерные массивы и массивы массивов, что позволяет создавать многомерные массивы. APL поддерживает n-D массивы с богатым набором операций. Общим для всего этого является то, что массивы должны помещаться в основную память и доступны только во время работы поддерживающей их программы (например, программы обработки изображений).

Ряд форматов обмена данными поддерживает хранение и передачу данных, подобных кубу данных, часто адаптированных к конкретным доменам приложений. Примеры включают Многомерные выражения для статистических (в частности, деловых) данных, Иерархический формат данных для общенаучных данных, и TIFF для изображений.

В 1992 г. Питер Бауманн представила управление большими информационными кубами с пользовательскими функциями высокого уровня в сочетании с эффективной архитектурой программного обеспечения.[1] Операции Datacube включают извлечение подмножеств, обработку, объединение и общие запросы в духе языки манипулирования данными подобно SQL.

Спустя несколько лет концепция куба данных была применена для описания изменяющихся во времени бизнес-данных в виде кубов данных. Джим Грей, и другие.,[2] и по Венки Харинараян, Ананд Раджараман и Джефф Уллман[3] которые входят в число 500 самых цитируемых статей по информатике за 25-летний период.[4]

Примерно в то же время в Немецком обществе была создана рабочая группа по многомерным базам данных ("Arbeitskreis Multi-Dimensionale Datenbanken"). Gesellschaft für Informatik.[5][6]

Datacube Inc. был обработка изображений продажа компании аппаратное обеспечение и программного обеспечения заявки на Рынок ПК в 1996 году, однако без обращения к информационным кубам как таковым.

Инициатива EarthServer установила требования к сервису куба геоданных.[7]

Стандартизация

В 2018 г. ISO SQL язык баз данных был расширен функциональностью куба данных как «SQL - Часть 15: Многомерные массивы (SQL / MDA)».[8]

Служба обработки веб-материалов это язык аналитики куба геоданных, выпущенный Открытый геопространственный консорциум в 2008 году. В дополнение к обычным операциям с кубом данных, язык знает семантику пространства и времени и поддерживает как регулярные, так и нерегулярные сеточные кубы данных, на основе концепции данные о покрытии.

Промышленный стандарт для запросов к бизнес-информационным кубам, первоначально разработанный Microsoft, является Многомерные выражения.

Выполнение

Многие компьютерные языки высокого уровня обрабатывают кубы данных и другие большие массивы как отдельные объекты, отличные от их содержимого. Эти языки, из которых APL, IDL, NumPy, PDL, и Сленг являются примерами, позволяющими программисту управлять полным фильм клипов и других данных в массе с простыми выражениями, полученными из линейная алгебра и вектор математика. Некоторые языки (например, PDL) различают список изображений и куба данных, тогда как многие (например, IDL) этого не делают.

Массивные СУБД (Системы управления базами данных) предлагают модель данных, которая в целом поддерживает определение, управление, поиск и манипулирование n-мерными кубами данных. Эта категория баз данных была впервые предложена Расдаман система с 1994 года.[9]

Приложения

Многомерные массивы могут содержательно представлять пространственно-временные данные датчика, изображения и моделирования, а также статистические данные, где семантика измерений не обязательно имеет пространственную или временную природу. Как правило, любая ось может быть объединена с любой другой в куб данных.

Математика

В математике одномерный массив соответствует вектору, двумерный массив напоминает матрица; в более общем плане тензор может быть представлен как n-мерный куб данных.

Наука и техника

Для временной последовательности цветных изображений массив обычно четырехмерный, с размерами, представляющими координаты X и Y изображения, время и RGB (или другой цветовое пространство) цветовая плоскость. Например, инициатива EarthServer[10] объединяет центры обработки данных с разных континентов, предлагая трехмерные временные ряды спутниковых изображений x / y / t и четырехмерные данные о погоде x / y / z / t для поиска и обработки на стороне сервера через Открытый геопространственный консорциум WCPS Стандарт языка запросов geo datacube.

Куб данных также используется в области визуальная спектроскопия, так как изображение со спектральным разрешением представляется как трехмерный объем.

Бизнес-аналитика

В онлайн-аналитическая обработка (OLAP) кубы данных представляют собой обычную структуру бизнес-данных, подходящую для анализа с разных точек зрения с помощью таких операций, как нарезка, нарезание кубиками, поворот и агрегирование.

Смотрите также

Рекомендации

  1. ^ Бауман, Питер (апрель 1992 г.). "Поддержка языков для обработки растровых изображений в базах данных". Графическое моделирование и визуализация в науке и технологиях. Int. Мастер-класс по графическому моделированию, визуализации в науке и технологиях. Дармштадт, Германия: Springer (опубликовано в 1993 г.). С. 236–245. Дои:10.1007/978-3-642-77811-7_19.
  2. ^ Грей, Джим; Чаудхури, Сураджит; Босуорт, Адам; Обыватель, Андрей; Райхарт, Дон; Венкатрао, Мурали; Пеллоу, Фрэнк; Пирахеш, Хамид (январь 1997 г.). "Куб данных: оператор реляционной агрегации, обобщающий группировку, кросс-таблицу и промежуточные итоги". Интеллектуальный анализ данных и обнаружение знаний. 1 (1): 29–53. Дои:10.1023 / А: 1009726021843.
  3. ^ Харинараян, Венки; Раджараман, Ананд; Ульман, Джеффри Д. (1996). «Эффективная реализация кубов данных». Эффективное внедрение кубов данных. С. 205–216. CiteSeerX 10.1.1.41.1205. Дои:10.1145/233269.233333. ISBN 978-0897917940.
  4. ^ 500 самых цитируемых статей по информатике (501–600), CiteSeer. 12 июня 2009 г. Проверено 21 марта 2017 г.
  5. ^ Der GI-Arbeitskreis Multidimensionale Datenbanken stellt sich vor, Питер Бауман, Вольфганг Ленер, 1997, Datenbank Rundbrief Том 19, 1997, http://dblp.uni-trier.de/db/journals/gidr/gidr19.html#BaumannL97
  6. ^ Rückblick auf den GI-Arbeitskreis Multidimensionale Datenbanken, Питер Бауманн, 1999, Datenbank Rundbrief Том 23 :, 1999, http://dblp.uni-trier.de/db/journals/gidr/gidr23.html#Baumann99
  7. ^ "Манифест базы данных". www.earthserver.eu. Получено 2017-09-21.
  8. ^ "ISO / IEC DIS 9075-15 Информационные технологии - Языки баз данных - SQL - Часть 15: Многомерные массивы (SQL / MDA)". Получено 2018-05-27.
  9. ^ «Управление многомерными дискретными данными» (PDF). www.vldb.org. Получено 2017-09-21.
  10. ^ «EarthServer - Big Datacube Analytics на кончиках ваших пальцев». www.earthserver.eu. Получено 2017-03-31.