...
- Help figure out if Fedora 4 (as developed) is meeting user requirements
- i.e. Ensure F4 platform is situated to address community needs going forward
- Summarize group's findings in a report
- Note: term 3-months, mid-Aug - mid-Oct
- Note2: it would be nice to have some tech continuity in making decisions
Approach
...
Separate out REST API from remaining Fedora Implementation
Permits other implementations (different optimizations)
Clustered Multiple Node Case (Neil)
Performance
“Things are not working the way I like it to”
“Cannot meet a specific performance requirement”
“Can it support increased ingest performance”
Process for identifying the tasks. (Chris)
Review:
What are the aspects of the need to be reviewed:
API - REST, maybe core classes
Reviewing the architecture.
Performance (lay out scenarios cross by parts of architecture)
Use Cases (Scenarios)
Functional Requirements (features, capabilities)
Non-functional Requirements (ilities - like scalability, extensibility)
Functional Architecture
Technical Architecture (products and technology)
Implementation
Trace asynchronicity (against requirement a.k.a goals)
Trace preservation-related requirements and capabilities
- Modeshape metadata and ramifications
Read or Write more important
Note - People are at different levels
Modeshape
Object persistence
Asynchronous model for persisting (more well known)
Less so for asynchronous check that functions were performed (possibly not part of repository)
Two asynchronous processes in play
Summary Actions:
...
Items for team assessment
- REST API
- Are immediate updates required?
- We should version the API independently
- This offers multiple backend implementations/optimizations
- Performance
- Read
- Writes
- Many small files
- Large files
- High throughput
- Scalable serialization to disk
- Need to measure scale of load that async serialization can meet
- Need to clarify async approaches: messaging and sequencers
- Replication of objects to another repository instance
- Full re-indexing
- Full integrity checks
- Multi-node / Clustered configurations
- High availability
- Bulk ingest
- High read loads
- Note: generally need to define what clustering provides
- ModeShape
- Assess persistence approach (i.e. bit-level object and datastream persistence)
- Preservation-worthiness
Actions
For next week
- All: bring expectations and goals (grounded in production use cases)
- Not just performance but all qualities/functions
...
- ... Goals that improve upon Fedora 3
...
- ... And/Or goals that were supported by Fedora 3 and still need to be supported by Fedora 4
...
Esmé: update architecture diagram
- Andrew: bring summary of performance tests/results to-date
Ongoing
- Compare F3 and F4 ingest rates
- Revisit basic principles: "Why repository? Why Fedora?"
...