Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Подскажите, как лучше организовать структуру для хранения. / 6 сообщений из 6, страница 1 из 1
18.05.2007, 11:41
    #34534998
Kruchinin Pahan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите, как лучше организовать структуру для хранения.
Вобщем, смысл такой. Есть некоторый срез данных в стиле показатель - значение. Обычная таблица, вроде бы. В определенный момент времени мы меняем этот срез данных. Либо меняем значение показателя, либо сливаем несколько показателей, либо один показатель разбивается на несколько, либо показатель утрачивает актуальность. При этом, мы должны периодически обращаться к старому состоянию показателей и к динамике показателей (как они изменялись во времени, из чего пришли). То-есть выбрать родителей текущего показателя.
Сейчас решено так: на каждое изменение показателя создается очередная строчка на дату актуальности. А история сохраняется в виде: "старый код показателя, новый код показателя". Естественно, добрести от текущего состояния до первоначального можно только последовательно выполняя серию запросов.
Нет идеев, а то я туплю чего-то. ;-/

Хранить хочу в Postgre, там и спрашивал, но рекомендовали сюда.
...
Рейтинг: 0 / 0
18.05.2007, 11:51
    #34535037
Осака Вестингауз
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите, как лучше организовать структуру для хранения.
Непонятно. Практический пример можно?
...
Рейтинг: 0 / 0
18.05.2007, 13:09
    #34535437
мод
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите, как лучше организовать структуру для хранения.
Kruchinin PahanОбычная таблица, вроде бы.
Две таблицы: иерархия самих показателей и таблица значений (только для листьев) с датой актуальности
...
Рейтинг: 0 / 0
18.05.2007, 13:10
    #34535446
Kruchinin Pahan
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите, как лучше организовать структуру для хранения.
Осака ВестингаузНепонятно. Практический пример можно?
Пример штатное расписание:
1. [] Начальник участка
2. [] Мастер
3. [] Работник1
4. [] Работник2

Действие 1. Изменились существенные условия.
5. [1] Начальник участка (много всяких существенных условий).

Действие 2. Объединение двух ставок.
6. [2, 3] Мастер-работник в одном флаконе.

Действие 3. Разъединение двух ставок. /Возможно, удаление ставки и ввод новых двух, но не всегда/
7. [4] Работник 3
8. [4] Работник 4

Срез на сегодня:
5. [1] Начальник участка.
6. [2, 3] Мастер-работник в одном флаконе.
7. [4] Работник 3
8. [4] Работник 4

История изменения существенных условий:
6. [2, 3] Мастер-работник в одном флаконе. (существенные условия бла-бла-бла).
2. [] Мастер. (существенные условия бла-бла-бла).
3. [] Работник 1. (существенные условия бла-бла-бла).

Нужно структуру, откуда можно быстро выдрать "Срез на дату". Быстро определить предка /или нескольких предков/ любого заданного уровня. И т.д.

В общем виде это граф без циклов представляющий собой лес из деревьев у которых могут срастаться отдельные ветви. Во как загнул.
...
Рейтинг: 0 / 0
18.05.2007, 18:37
    #34536753
Bely
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите, как лучше организовать структуру для хранения.
Kruchinin PahanНужно структуру, откуда можно быстро выдрать "Срез на дату". Быстро определить предка /или нескольких предков/ любого заданного уровня. И т.д.

В общем виде это граф без циклов представляющий собой лес из деревьев у которых могут срастаться отдельные ветви. Во как загнул.Как часто все меняется?
Если не часто, то можно хранитьсами срезы данных (точнее сылки на нужные элементы).
т.е.
с Дата1 по Дата 2 - список элементов, которые на данный момент правильные.
с Дата2 по Дата 3 - другой список элементов

Такие срезы надо один раз построить, а потом только доставать
доставать будете со свистом.
...
Рейтинг: 0 / 0
18.05.2007, 20:13
    #34536904
Осака Вестингауз
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подскажите, как лучше организовать структуру для хранения.
По каждой сущности история обычным способом. Для разделяющихся сущностей история копируется в каждую. Для объединяющихся - объединяется к одной главной, остальные закрываются.
...
Рейтинг: 0 / 0
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / Подскажите, как лучше организовать структуру для хранения. / 6 сообщений из 6, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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