|
|
|
Подскажите, как лучше организовать структуру для хранения.
|
|||
|---|---|---|---|
|
#18+
Вобщем, смысл такой. Есть некоторый срез данных в стиле показатель - значение. Обычная таблица, вроде бы. В определенный момент времени мы меняем этот срез данных. Либо меняем значение показателя, либо сливаем несколько показателей, либо один показатель разбивается на несколько, либо показатель утрачивает актуальность. При этом, мы должны периодически обращаться к старому состоянию показателей и к динамике показателей (как они изменялись во времени, из чего пришли). То-есть выбрать родителей текущего показателя. Сейчас решено так: на каждое изменение показателя создается очередная строчка на дату актуальности. А история сохраняется в виде: "старый код показателя, новый код показателя". Естественно, добрести от текущего состояния до первоначального можно только последовательно выполняя серию запросов. Нет идеев, а то я туплю чего-то. ;-/ Хранить хочу в Postgre, там и спрашивал, но рекомендовали сюда. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2007, 11:41 |
|
||
|
Подскажите, как лучше организовать структуру для хранения.
|
|||
|---|---|---|---|
|
#18+
Непонятно. Практический пример можно? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2007, 11:51 |
|
||
|
Подскажите, как лучше организовать структуру для хранения.
|
|||
|---|---|---|---|
|
#18+
Kruchinin PahanОбычная таблица, вроде бы. Две таблицы: иерархия самих показателей и таблица значений (только для листьев) с датой актуальности ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2007, 13:09 |
|
||
|
Подскажите, как лучше организовать структуру для хранения.
|
|||
|---|---|---|---|
|
#18+
Осака ВестингаузНепонятно. Практический пример можно? Пример штатное расписание: 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. (существенные условия бла-бла-бла). Нужно структуру, откуда можно быстро выдрать "Срез на дату". Быстро определить предка /или нескольких предков/ любого заданного уровня. И т.д. В общем виде это граф без циклов представляющий собой лес из деревьев у которых могут срастаться отдельные ветви. Во как загнул. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2007, 13:10 |
|
||
|
Подскажите, как лучше организовать структуру для хранения.
|
|||
|---|---|---|---|
|
#18+
Kruchinin PahanНужно структуру, откуда можно быстро выдрать "Срез на дату". Быстро определить предка /или нескольких предков/ любого заданного уровня. И т.д. В общем виде это граф без циклов представляющий собой лес из деревьев у которых могут срастаться отдельные ветви. Во как загнул.Как часто все меняется? Если не часто, то можно хранитьсами срезы данных (точнее сылки на нужные элементы). т.е. с Дата1 по Дата 2 - список элементов, которые на данный момент правильные. с Дата2 по Дата 3 - другой список элементов Такие срезы надо один раз построить, а потом только доставать доставать будете со свистом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2007, 18:37 |
|
||
|
Подскажите, как лучше организовать структуру для хранения.
|
|||
|---|---|---|---|
|
#18+
По каждой сущности история обычным способом. Для разделяющихся сущностей история копируется в каждую. Для объединяющихся - объединяется к одной главной, остальные закрываются. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2007, 20:13 |
|
||
|
|

start [/forum/topic.php?fid=32&fpage=120&tid=1544525]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
51ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
34ms |
get tp. blocked users: |
1ms |
| others: | 223ms |
| total: | 349ms |

| 0 / 0 |
