Change tracking data model

    Just some brainstorming for a potential db model to replace recent changes

     

    table:changes
    • change_id
    • user_id
    • page_id
    • timestamp
     
    table:changes_page
    • change_id (fk)
    • ...
    table:changes_tags
    • tag_id
    • tag_change_type (tag, untag, define)
    • ...
    table:changes_comments
    • comment_id
    • comment_change_type (new, edit, delete)
    • ...
    table:changes_permission
    ...
    table:changes_resources (attachments+properties)
    ...
    table:changes_user

    ...

     

    Access patterns

    • changes site-wide
    • changes by a user
    • changes for a page (and its subpages!)
    • changes for pages 'favorited/starred/subscribed to' by a user
    • changes affecting multiple pages should be connected and groupable. This includes cascade permission changes, page moves, page deletes 
    • paging support
    • filtering support (change type, date range, language, namespace, etc)
    • aggregation support (by day)
    Tag page
    You must login to post a comment.

    Copyright © 2011 MindTouch, Inc. Powered by