Cinder DB Archiving

Registered by Boris Pavlovic

In Nova (Grizzly) we added new feature DB Archiving.

The problem:
We actually don't delete rows from db, we mark it only as deleted (we have special column).
So the DB is growing and growing, so this causes problem with performance.

The solution:
Create shadow tables and copy "deleted" rows from main to shadow table.

Steps to implement:
1) sync utils for work with shadow table (create, check methods)
2) add db migration, that will create all shadow tables
3) write tests for shadowing (for example checking that all shadow tables are up-to-date)
4) add utils to work with shadowing (periodic task, manager method)

Blueprint information

Status:
Complete
Approver:
John Griffith
Priority:
Medium
Drafter:
Boris Pavlovic
Direction:
Approved
Assignee:
Ivan Kolodyazhny
Definition:
Obsolete
Series goal:
None
Implementation:
Not started
Milestone target:
None
Completed by
Sean McGinnis

Related branches

Sprints

Whiteboard

(smcginnis): Marking obsolete as this has been sitting out there for a long time. If this is still needed, please submit a new bp.

2015-07-24 <thingee>: Per Ivan, removing this from Liberty since this needs to be rethought cross project.

We should rethink current db-archiving strategy so this work will be done only in Ice House --boris-42

Gerrit topic: https://review.openstack.org/#q,topic:bp/db-archiving,n,z

Addressed by: https://review.openstack.org/131182
    WIP! Allow archiving deleted rows to shadow tables, for performance.

Addressed by: https://review.openstack.org/135916
    Cinder DB Archiving

Gerrit topic: https://review.openstack.org/#q,topic:bug/1427402,n,z

Addressed by: https://review.openstack.org/160534
    Add 'Development Impact' section for DB Archiving

(?)

Work Items

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.