[dev] History of share changes
Chuck Hagenbuch
chuck at horde.org
Thu Aug 13 21:47:22 UTC 2009
Quoting Jan Schneider <jan at horde.org>:
> Zitat von Chuck Hagenbuch <chuck at horde.org>:
>
>> Quoting Jan Schneider <jan at horde.org>:
>>
>>>>>> If you are still worried about this after all that, create both
>>>>>> a history table and a 'current' table. The history table will
>>>>>> likely not be accessed as much as the current dataset, so your
>>>>>> 'current' table will be smaller in size, and you can optimize
>>>>>> for specific access patterns.
>>>>>
>>>>> Any more opinions about this?
>>>>
>>>> I've been thinking that we should put created and modified fields
>>>> back into most of our entity tables. That would address a lot of
>>>> the problems here for speed and also make History not necessary
>>>> for many uses. The only thing it doesn't address is prior
>>>> revisions (which history doesn't really address either) and
>>>> tracking deleted items (which could either still use history, or
>>>> use a simplified system).
>>>
>>> I don't see any problem with the history system per se. I doubt
>>> that having the date attributes with the original data will have
>>> much if any performance improvement over a separate table.
>>> Having a central place for all history data is much better
>>> maintenance-wise too, we would not only need a place to track
>>> deleted data, but we also have history that's not related to
>>> anything stored in our database, like message history.
>>
>> That's true, and all good reasons, and I made the darn History API
>> in the first place so I should be partial to it. However I'd also
>> had trouble when trying to deal *just* with an app's data, and
>> needing to pull in history also. What do you think of storing them
>> in both places? Horribly non-normalized I know.
>
> For simple information that's really required together with the
> entities, like the modification date, this might be doable. But for
> anything more complex like what's done in History now (who did what
> and when), I'd vote against duplication.
Agreed. I've been thinking just create and modify datetimes.
-chuck
More information about the dev
mailing list