powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Хранение Значений Датчиков.Посоветуйте реализацию .
16 сообщений из 16, страница 1 из 1
Хранение Значений Датчиков.Посоветуйте реализацию .
    #35656371
kuznecovii
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вообщем хотелось бы посоветоваться насчет одной задачки. Вообщем есть 10 - 30 шт. датчиков, которые с периодичностью 5-20 сек. шлют пакеты которые содержат как минимум 3 параметра:
1. Id датчика.
2. Показатель (число)
3. ДатаВремя.

Вот тут и возникают сомнения насчет хранения данных. Если создать таблицу с соответствующими полями , то вывод отчета впринципе не сложен (имеется в виду запрос). Также у оператора на экране только оперативная информация т.е. вчерашние покатазтели не выводит. Но как то есть чувство что не красиво все в одной таблице, может лучше иметь две таблицы одна хранит оперативные показатели , т.е. текущей даты, а вторая хранит показатели одного датчика за один день. Но снова же не красиво , т.к. надо будет еще в реализации раз в сутки чистить оперативную таблицу и записывать показатели из оперативной в архив одной записью . Вот и сомневаюсь в вариантах , может подскажите кто имел похожие задачи с учетом большой оперативной информации с сохранинением ее на долгий период времени.
...
Рейтинг: 0 / 0
Хранение Значений Датчиков.Посоветуйте реализацию .
    #35656379
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
kuznecovii,
Запустите поиск по слову "Датчик"
...
Рейтинг: 0 / 0
Хранение Значений Датчиков.Посоветуйте реализацию .
    #35657843
kuznecovii
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо за содержательность. Ну для начала , чтобы создать данную тему , я спросил у гугла у яндекса и у sql.ru , я нашел не одну тему посвященную данной проблеме, но анализ того как лучше хранить и обрабатывать данные не нашел, я буду очень признаетелен кому нибудь за ссылку на конкретную информацию.
...
Рейтинг: 0 / 0
Хранение Значений Датчиков.Посоветуйте реализацию .
    #35659372
Dan Black
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторзаписывать показатели из оперативной в архив одной записью Почему одной записью? Это есть в условии задачи? Или Вы это сами придумали? Если есть в условии задачи, то приведите её полный текст.
...
Рейтинг: 0 / 0
Хранение Значений Датчиков.Посоветуйте реализацию .
    #35659403
eJack
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ну самой что можно тебе предложить - это хранение справочника датчиков в отдельной таблице. т.е. ID|Наименование|Место установки - и все такое.
ну и собственно и сама рабочая таблица ID|ДатчкИД|Data|Value и т.д.
...
Рейтинг: 0 / 0
Хранение Значений Датчиков.Посоветуйте реализацию .
    #35668147
Фотография AlexandrPlus
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Возможна выгрузка из одной таблицы в архивные таблицы, где в каждой, например, показания за год.
...
Рейтинг: 0 / 0
Хранение Значений Датчиков.Посоветуйте реализацию .
    #35668326
474
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dan Blackавторзаписывать показатели из оперативной в архив одной записью Почему одной записью? Это есть в условии задачи? Или Вы это сами придумали? Если есть в условии задачи, то приведите её полный текст.
Я думаю, что автор имел в виду "одним разом". То есть в начале дня перенести все записи за
прошедший день в архив.
...
Рейтинг: 0 / 0
Хранение Значений Датчиков.Посоветуйте реализацию .
    #35669871
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
kuznecoviiСпасибо за содержательность. Ну для начала , чтобы создать данную тему , я спросил у гугла у яндекса и у sql.ru , я нашел не одну тему посвященную данной проблеме, но анализ того как лучше хранить и обрабатывать данные не нашел, я буду очень признаетелен кому нибудь за ссылку на конкретную информацию.

Я же писал Вам, что запустите поиск по SQL.ru/Проектирование БД! По слову "Датчик"!
...
Рейтинг: 0 / 0
Хранение Значений Датчиков.Посоветуйте реализацию .
    #35670424
Фотография S.G.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kuznecovii Но как то есть чувство что не красиво все в одной таблице, может лучше иметь две таблицы А чем некрасива одна таблица? Очень даже красива, по-моему. Одна сущность, одно место хранения, да и извлекать последние записи (и любые) по времени - просто.
...
Рейтинг: 0 / 0
Хранение Значений Датчиков.Посоветуйте реализацию .
    #35670438
kuznecovii
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
результат буду тестить во время работы.
Пока решил все писать в одну таблицу . Если будут проблемы буду смотреть как поправить.
...
Рейтинг: 0 / 0
Хранение Значений Датчиков.Посоветуйте реализацию .
    #35671946
KOT MATPOCKuH
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
S.G.А чем некрасива одна таблица?
Объемом данных

S.G.Одна сущность, одно место хранения, да и извлекать последние записи (и любые) по времени - просто.
Просто - разработчику, проектировщику БД.
А пользователю - нет.
Если данные с датчиков нужно собирать, например, 50 раз в секунду, 24х365, с 20 датчиков, по 20 параметрам, то за год количество измерений будет равно
50х60х60х24х365х20х20 = 630 720 000 000 записей в год (сколько лет хранить будем?)!!!

Ваша БД это потянет?
Для "ускорения" выборок индексы создавать будете? - Если да, то время вставки новой записи будет уменьшаться пропорционально по экспоненте от количества строк (перестройка индексов). Если нет, то фулскан по такой таблице.... никогда не закончится :(

Кстати, пример - еще "божеский". На производстве и по-круче бывает.

АВТОРу: все же поищите топик с "Датчиком" - уже все эти вопросы обсуждались. Повторяться лень
...
Рейтинг: 0 / 0
Хранение Значений Датчиков.Посоветуйте реализацию .
    #35676234
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
КМЕсли да, то время вставки новой записи будет уменьшаться пропорционально по экспоненте от количества строк (перестройка индексов).
простите, но это не соответствует истине, вообще и никак. Это если на каждую вставку перестраивать ВЕСЬ индекс, но я такой экзотики нигде не встречал.

классические индексы - это страничные b-деревья. В них I/O разумеется зависит от глубины дерева, но никак не от количества ключей.
На практике даже на десктопном железе скорость вставки одной записи в пустую таблицу и в таблицу с 100 миллионов записей почти не отличается.
...
Рейтинг: 0 / 0
Хранение Значений Датчиков.Посоветуйте реализацию .
    #35676264
KOT MATPOCKuH
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kdvКМЕсли да, то время вставки новой записи будет уменьшаться пропорционально по экспоненте от количества строк (перестройка индексов).
простите, но это не соответствует истине, вообще и никак. Это если на каждую вставку перестраивать ВЕСЬ индекс, но я такой экзотики нигде не встречал.

классические индексы - это страничные b-деревья. В них I/O разумеется зависит от глубины дерева, но никак не от количества ключей.
На практике даже на десктопном железе скорость вставки одной записи в пустую таблицу и в таблицу с 100 миллионов записей почти не отличается.

Простите, очипятался: ...уменьшаться обратно пропорционально по экспоненте от количества строк...
Все-равно медленно будет! Для SCADA не годится
...
Рейтинг: 0 / 0
Хранение Значений Датчиков.Посоветуйте реализацию .
    #35676589
sn175
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Как вариант, не хранить все приходящие данные. Для каждого из показателей водим "зону нечувствительности", и изменения показаний в этой зоне игнорируем. Это уменьшит объем данных. Периодически, например раз в час, сохраняем все, для облегчения запросов в тех случаях, когда в течении длительного времени (скажем, несколько суток) показания датчиков не изменяются.
Данные старше определенного времени или зиповать и складывать в блобы, или обрабатывать и хранить уже обработанное значение (например, среднее за период).
...
Рейтинг: 0 / 0
Хранение Значений Датчиков.Посоветуйте реализацию .
    #35677024
expla
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В информационной модели, которая не связана с вопросами производительности, для понимания задачи должно хватать одной таблицы.

В физической модели БД решение зависит от СУБД. Если речь идёт про Оракл, для очень больших таблиц используйте секционирование.

Короче, пишите в форум по конкретной СУБД.
...
Рейтинг: 0 / 0
Хранение Значений Датчиков.Посоветуйте реализацию .
    #35700762
pirovindos
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
При такой постановке возникают сомнения в целесообразности хранения всех данных в БД. Может оказаться в что в бинарных файлах кусками их хранить эффективнее. А в БД ссылки на файлы и их атрибуты.
...
Рейтинг: 0 / 0
16 сообщений из 16, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Хранение Значений Датчиков.Посоветуйте реализацию .
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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