2017-02-19 19 views
1

Я заинтересован в хранении научных данных из графика (графика), например, x по y в хранилище данных, где x и y являются действительными числами.Моделирование данных диаграммы в звездной схеме

Каждая диаграмма будет сгенерирована для фиксированного набора описательных размеров (например, времени, даты, местоположения, оборудования), которые могут быть смоделированы в традиционной схеме звезда/снежинка.

Примером может служить угол между ответом детектора, где угол является независимой переменной, а отклик - зависимым. Угол здесь может быть любым реальным числом от 0 до 360 градусов.

В настоящее время мы думаем, что мы используем реальное значение как измерение, потенциально предварительно создавая таблицу углов-углов со значениями от 0 до 360 в подходящем масштабе (например, 3dp) и округляя измеренные результаты там, где это необходимо, хотя это приводит к потере точности.

Мне интересно, есть ли более эффективные способы хранения этих данных для последующего использования в кубе OLAP? Тип запроса, который я хотел бы сделать, - сравнить данные диаграммы в разные моменты времени, чтобы искать изменения или посмотреть средний ответ в заданном диапазоне (скажем, 0-15 градусов) в разных местах или на другое оборудование ,

+0

Вы хотите просмотреть данные уровня детализации или сводные данные? Похоже, вы хотите проанализировать подробные данные - кубы не очень хороши в этом. Знаете ли вы, сколько записей вы ожидаете? Сколько других атрибутов существует против угла? На самом деле это не похоже на размерное моделирование. Как хранятся данные и какие проблемы у вас есть? –

+0

Я действительно хочу, чтобы оба были доступны, цель состоит в том, чтобы посмотреть на средние значения, а затем быть в состоянии рассказать о деталях, чтобы узнать, почему вещи находятся вне досягаемости. В настоящее время я храню различные параметры от оборудования (около 20, но может распространяться до нескольких сотен), созданных в виде диаграмм против времени выборки (в 0,25 с), однако они также могут варьироваться в зависимости от угла. У нас есть несколько подобных частей оборудования, каждый из которых имеет от 2 до 3 режимов работы. Оборудование создает диаграммы в XML. – adam

+0

Я надеялся разместить данные в форме, где я мог бы использовать инструмент OLAP на полке (сообщество Pentaho), чтобы пользователи могли манипулировать данными, а не писать собственный код. В настоящее время это больше доказательство принципа, у меня есть простой куб с 7 миллионами записей. – adam

ответ

0

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

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

Затем вы можете добавить дополнительные размеры, как вы говорите, для категоризации цифр. В вашем примере углов вы также можете иметь «угловой диапазон» в виде столбца, показывающего 0-15,16-30 и т. Д.

Возможно, вам придется иметь более сложный/общий дизайн, если у вас больше угла и отклика с общим размером «X Axis type», включая диапазон, но с дополнительным столбцом «X Axis», который является «углом», «ответом» и т. д.

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

+0

Привет, Rich, спасибо за ответ и комментарии. Я рассматривал подход строки на точку как альтернативу для устранения дублирующих ключевых проблем с моей схемой прототипов (у меня есть составной ключ каждого размера для каждого факта, в том числе «x_value_dimension». Duplicate x values, например 0-> 360 -> 0 привело к нарушениям). Я думал, что этот подход, однако, затруднит повторную визуализацию оригинальных графиков для диагностики. Добавление дополнительного измерения, как вы полагаете, для группировки (возможно, каждое целое число будет более гибким) решило бы эту проблему на практике. – adam

+0

Для более общей (интересной?) Проблемы я могу потенциально заимствовать у float и иметь значения группировки величин и экспонентов, так как для подобных «типов оси x» мы обычно ожидаем аналогичный масштаб, и мы, вероятно, будем иметь данные bin вероятно, только бинание данных в 1sf (например, 0,1 или 0,05). – adam

+0

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