powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / SQL запрос
9 сообщений из 9, страница 1 из 1
SQL запрос
    #38522076
AIS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Есть простая таблица для хранения данных работы датчика:
id, data, datetime

Для анализа полученных данных за период необходимо не учитывать в выборке показания, которые отличаются (+/-) от прогнозируемых более чем на 15% (т.е. явные ошибки, одиночные всплески).

Как хотя бы для начала отсечь такие значения из выборки? Или это нужно делать не при выборке, а анализировать до сохранения таких данных в БД и сохранять только удовлетворяющие критериям?

Даже не пойму с какой стороны подходить. Буду рад любым комментариям и советам. :)
...
Рейтинг: 0 / 0
SQL запрос
    #38522094
Dmitry Eliseev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Согласно вашему посту, у вас должна быть модель, на основе которой делается прогноз. Используйте её для проверки текущих показаний.
...
Рейтинг: 0 / 0
SQL запрос
    #38522135
AIS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dmitry EliseevСогласно вашему посту, у вас должна быть модель, на основе которой делается прогноз. Используйте её для проверки текущих показаний.
Это понятно, так и есть. Вопрос - как?
Советуете сохранять все подряд в БД, а потом отсекать (явные ошибочные значения) при выборке из БД, или делать это до сохранения в БД?

Пока в мыслях только один вариант - это разделить задачу на два этапа:
1. отсечь явно не нужное;
2. выборка из БД имеющихся данных.

В идеале (наверное) это должен быть 2 в 1 запрос в БД с многими аргументами, т.к. они все плавающие (нестабильные). Но думаю, что это будет "каша" и множество слабых мест.
...
Рейтинг: 0 / 0
SQL запрос
    #38522159
guest_20040621
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вам, AIS, статистику вообще не читали?

value_deviation (
period,
average_value,
deviation
)

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

> отличаются (+/-) от прогнозируемых более чем на 15%

Откуда цифра 15%?
...
Рейтинг: 0 / 0
SQL запрос
    #38522178
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AISЭто понятно, так и есть. Вопрос - как?
При такой постановке вопроса Вам вообще в БД хранить нечего, поскольку значения
соответствующие модели - вычисляются, а не соответствующие - вообще отбрасываются.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
SQL запрос
    #38522220
Злой Бобр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AIS,
Сохраняйте все подряд в БД. Дальше уже пляшите от имеющихся.
AISКак хотя бы для начала отсечь такие значения из выборки?
Код: sql
1.
2.
3.
select value
from table
where (value>a1) AND (a2<value)
...
Рейтинг: 0 / 0
SQL запрос
    #38522307
Dmitry Eliseev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Насколько я понимаю, сохранять требуется только аномальные значения, но встаёт вопрос как определить аномальность, если пока не известно какое значение аномальное или нет?

Если я правильно понимаю, то вам нужно использовать первые 50 - 100 значений для "набора статистики", не сохраняя их в базу. Для этих значений постройте таблицу распределения частот, а дальше с помощью "ящика с усами" найдёте аномальные значения.
...
Рейтинг: 0 / 0
SQL запрос
    #38522316
Кот Матроскин
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
можно сделать "грязную" таблицу и "чистую" view, в котором будут отсечены не устраивающие значения.

запрос для View будет зависеть от того, как Вы получаете прогнозируемые значения.
...
Рейтинг: 0 / 0
SQL запрос
    #38522411
AIS
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Спасибо всем за комментарии и советы.
Определился, что правильней таки собирать и хранить всё подряд без исключений, т.к. это в будущем поволит формировать любые отчеты по желанию без ограничений, а фундамент для этих отчетов таки можно строить на основе "чистых" view, как посоветовал Кот Матроскин.

Пожалуй тему можно закрывать.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / SQL запрос
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]