Difference between Source Systems and staging/loaders?
External Solr gets loaded by a loader?
vivo_arch_v3.png
Scalable ingest
No focus on refactoring VIVO
How are loaders triggered?
How are updates managed, from the UI?
jb - Why keep "VIVO Triple Application" with its triple-store and inferencing? To provide a SPARQL endpoint? To provide an editing environment?
VIVO Product Evolution Straw
Similar to above
No focus on refactoring VIVO
jb – At first glance, it appears to be straightforward to implement GraphQL as a layer over SPARQL. This might indeed insulate developers from SPARQL complexity, but it is unlikely to improve performance.
Screen Shot 2018-12-20
Focus on VIVO refactoring
How is performance and scale addressed?
Is the frontend decoupled from the APIs?
Server-side or client-side frontends?
jb – Would the internal front-ends access the JSON APIs, or the existing controllers?
jb – For the internal front-ends, Would there be any attempt to separate display from editing? Currently they are very much intertwined.
Future VIVO Example
Focus on VIVO refactoring
Maybe config does not need to be in a triplestore
jb – Is the "New REST API" read/write or read-only?
jb – Are the Legacy Freemarker pages just for admin functions, or are they also for searching, profile display, and profile editing?
jb – Why the second search index? Is it more efficient, more flexible to populate two indexes?
VIVO 2.0 Arch
Focus on VIVO refactoring
Similar to above
jb – This appears to be a draft of "Future VIVO Example"
arhitectura-vivo
Addresses updates from UI and other sources
Can service layer become the core VIVO app w/ content sources externalized?
jb – What about policy filtering? (i.e., data is restricted from display and/or editing based on user accounts.) Currently, language filtering is applied at the SPARQL query level, but policy filtering is implemented higher in the stack. Where would policy filtering be implemented in this architecture? Or would it be dispensed with?
VIVO arch brainstorming
jb – What is the benefit of JSON-LD? Isn't it just another RDF notation?
jb – This might avoid one of the pitfalls of a graph model: the graph is one continuous structure, with no boundaries (ref: the deletion problem).
VIVO arch brainstorming-2
No focus on refactoring VIVO
Similar to Duke?
Loader model
What is the interation between webapps and content stores? API?
What does deployment look like?
Where does the VIVO ontology come into the picture?
jb – What is the virtue of having both a triple-store and an RDBMS? What are the costs?
VIVO_Architecture_ideas.png
jb – In the short run, the Data Distribution API is a good way to rapidly develop a back-end for an Angular/React/etc front-end.
ACTIONS
Collection of existing architecture diagrams / resources
Can include more brainstorming/high level component diagrams/discussions from presentations and documents as well but not sure this is the bullet for it