Children
Goals
- Preservation storage
- Simplicity
- Performance
Implementation Plan
- Remove Modeshape (done)
- Create 2-3 APIs to allow plugging in new backends
- Implement OCFL
Major CRUD-Related Interfaces
Gliffy Diagram |
---|
name | Major interfaces and their interactions |
---|
pagePin | 9 |
---|
|
Use Case: Simple OCFL - based implementation
Gliffy Diagram |
---|
name | Simple OCFL implementation |
---|
pagePin | 4 |
---|
|
Use Case: Horizontally-Scaled Fedora Instances Running against a single OCFL
Gliffy Diagram |
---|
name | horizontally scaled fedora |
---|
pagePin | 7 |
---|
|
Use Case: Fast reads and writes with OCFL
Gliffy Diagram |
---|
name | OCFL, SPARQL-based Metadata and Search |
---|
pagePin | 6 |
---|
|
WORK IN PROGRESS: Fedora Session to OCFL Session Management - try to understand how Fedora Transactions (managed by FedoraSession) would map to a set of OCFL Sessions.
The problem: A Fedora transaction may span multiple HTTP Requests. Assuming that we do not want to commit anything to OCFL until the Fedora Transaction is committed, how do we maintain the state of open OCFL Sessions
across requests. How also do we ensure that two requests using the same transaction ID do not stomp on each other? It seems that this is only becomes a problem if we want to support autoscaling of Fedora instances.
...
- (done)
- Implement OCFL - Fedora interaction
OCFL Representation of Fedora Resources:
...