10-30-12 hydra technical deep dive presentation slides
DESCRIPTION
Hot Topics: The DuraSpace Community Webinar Series, “Get a Head on Your Repository with Hydra End-to-End Solutions,” curated by Tom Cramer, Chief Technology Strategist at Stanford University Libraries. Webinar 3: “Hydra Technical Deep Dive” presented by Matt Zumwalt, MediaShelfTRANSCRIPT
![Page 1: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/1.jpg)
October 30, 2012 Hot Topics: DuraSpace Community Webinar Series
Hot Topics: The DuraSpace Community Webinar Series
Series Three: “Get a Head on Your Repository with
Hydra End-to-End Solutions”
Curated by Tom Cramer
![Page 2: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/2.jpg)
October 30, 2012 Hot Topics: DuraSpace Community Webinar Series
Webinar 3: Hydra Technical Deep Dive
Presented by: Matt Zumwalt,
Technical Lead, Hydra Project, MediaShelf
![Page 3: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/3.jpg)
Techincal Framework
Matt ZumwaltDuraSpace Webinar
30 October 2012
The Hydra has hatched & put on some muscle. What does it look like?
![Page 4: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/4.jpg)
The Problem
![Page 5: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/5.jpg)
long lived, complex content
the data we create extend beyond and outlast the software used to create them
“the open data movement is more important than the open source movement”
- Ian Davis Code4Lib 2009
![Page 6: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/6.jpg)
the funny problemOur vision is to create complex, evolving, long-lived content. Meanwhile, each set of users wants to see & interact with that content in different ways relative to temporal and intellectual context.
content in open, complex, long-lived context
users in task-specific, time-specific context
![Page 7: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/7.jpg)
many lightweight views onto complex content
![Page 8: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/8.jpg)
The Solution: Framework & Community
![Page 9: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/9.jpg)
software & community aimed at supporting teams who are
creating & sustaining repository solutions
![Page 10: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/10.jpg)
Framework for Creating
hydra heads for creation & management of repository content
search interfaces
scripts / bots to operate on repository contents
![Page 11: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/11.jpg)
Pragmatic Development
becoming better developers
becoming better teams
sharing code
supporting software
![Page 12: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/12.jpg)
Robust Collaborationpublicly visible code
continuous integration
test coverage
release cycle & release managers
developer documentation
![Page 13: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/13.jpg)
The Basic Structure
![Page 14: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/14.jpg)
CRUD
CreateRetrieveUpdateDelete
![Page 15: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/15.jpg)
CRUD
Create/SubmitModifyDeleteIndex
![Page 16: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/16.jpg)
CRUD
SearchBrowse
View Details
![Page 17: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/17.jpg)
CRUD in Rails
Rails MVC
RDBMS
![Page 18: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/18.jpg)
CRUD in repositories
Manage & Arrange(CUD)
Search & View(R)
Indexing
![Page 19: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/19.jpg)
the Hydra framework
Hydra-based Models, Views &
Controllers(CUD)
Blacklight(R)
SolrizerFedora Solr
http://github.com/projecthydra/hydrangeahttps://wiki.duraspace.org/display/hydra/
![Page 20: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/20.jpg)
The Architecture
![Page 21: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/21.jpg)
the Hydra framework
Hydra-based Models, Views &
Controllers(CUD)
Blacklight(R)
SolrizerFedora Solr
http://github.com/projecthydra/hydrangeahttps://wiki.duraspace.org/display/hydra/
![Page 22: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/22.jpg)
![Page 23: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/23.jpg)
models that work
• models with intuitive syntax• xml parsing & manipulation • Ruby wrapper for Fedora APIs
http://github.com/projecthydra/active_fedorahttp://github.com/projecthydra/omhttp://github.com/projecthydra/rubydora
![Page 24: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/24.jpg)
MVC on Fedora
• models: active-fedora & om• views: (regular rails) • controllers: (regular rails)
![Page 25: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/25.jpg)
rich, faceted search
• faceted search & discovery• metadata agnostic• content-aware• supports specialized users• Rails plugin• solr-driven • strong dev community
http://projectblacklight.org
![Page 26: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/26.jpg)
putting it together
![Page 27: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/27.jpg)
indexing with solrizer
![Page 28: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/28.jpg)
a whole hydra head
![Page 29: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/29.jpg)
Key Technical Parts
![Page 30: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/30.jpg)
the technology stack presents a hierarchy of promises where
each piece relies on a set of dependencies, and provides its own
set of promises
http://is.gd/hydrastack
![Page 31: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/31.jpg)
pragmatic modeling syntax makes it easy for you to use Fedora
without Fedora using you
![Page 32: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/32.jpg)
abstraction layer on top of repository opens possibility for
putting Hydra on something other than Fedora
![Page 33: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/33.jpg)
simple, configurable solrization & faceted search with gated
discovery
![Page 34: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/34.jpg)
access controls that use Hydra rightsMetadata, not XACML
![Page 35: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/35.jpg)
![Page 36: 10-30-12 Hydra Technical Deep Dive Presentation Slides](https://reader033.vdocuments.mx/reader033/viewer/2022042813/54b3501c4a795912288b4587/html5/thumbnails/36.jpg)
now the fun begins...
http://projecthydra.orghttp://yourmediashelf.comhttp://curationexperts.com
http://is.gd/hydrastack