Как хранить исторические данные сервера?

Я искал совет о том, как хранить данные в базе данных для целей анализа исторических данных. Если я могу получить состояние объекта в определенный момент времени, каков наилучший способ сохранить его, чтобы я мог исторически добывать эти данные, предсказывая, какое состояние, вероятно, будет основано на том, каким оно было в прошлом?

В качестве более конкретного примера я могу получить состояние "вверх / вниз" сервера и его текущую нагрузку. Я могу получить это по периодическому графику. Я хотел бы сохранить эти данные так, чтобы я мог легко запросить состояние вверх / вниз или загрузку для определенного периода времени, или получить всю историю этого сервера. У меня нет большого опыта в разработке баз данных.

2 ответа

Решение

Вот почему Ральф Кимбалл (и другие) изобрел хранилище данных.

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

Шаг 1. Найдите хороший учебник по дизайну схемы звезды. При необходимости купите книгу или две. Каждый момент, который вы потратите на изучение того, как выполнять моделирование данных схемы звезды, стоит того.

Шаг 2. Создайте схему-прототип как можно дешевле и быстрее. Загрузите данные, чтобы вы могли написать несколько запросов и посмотреть, как все работает. Делать ошибки. Исправьте их.

Шаг 3. После того, как вы заставите что-то работать, запишите хороший дизайн.

Шаг 4. Создайте свой "для реального" витрина данных.

Шаг 5. Создайте свои "производственные" грузы.

Шаг 6. Запрос.

Вот почему существует новая версия стандарта SQL:2011.

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

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

Другие вопросы по тегам