Upgrade to Pro — share decks privately, control downloads, hide ads and more …

DLF Forum Fall 2013 - Islandora Sync

Kristian
November 05, 2013

DLF Forum Fall 2013 - Islandora Sync

A discussion about the need and development of Islandora Sync, a Drupal module to synchronize Islandora objects in Fedora to Drupal Entities

Kristian

November 05, 2013
Tweet

More Decks by Kristian

Other Decks in Technology

Transcript

  1. Islandora Sync
    Bringing Drupal and Fedora closer
    2013 - DLF Forum : Austin, Texas
    Kristian Allen
    Programmer - UCLA Digital Library

    View Slide

  2. Discussion Outline
    ● UCLA Digital Library transition to Islandora
    Overview of shift to Islandora within UCLA DL
    ● Digital Library community development options
    ● Islandora Sync details
    Why the need?
    What does it do?
    ● Questions

    View Slide

  3. UCLA Digital Library Snapshot
    ● 250 Digital Collections
    ● 1.8MM+ Digital Asset Files
    ● 20MM+ Metadata database records
    ● 35TB+ Disk storage

    View Slide

  4. Growing Pains
    ● Current system
    Locally Developed:
    Java EE / Struts 1.02
    Oracle Database, Search and Persistence frameworks
    JBoss on Windows
    ● Challenges
    Domain specific knowledge needed for development
    Proprietary software limits ability to leverage the community
    Bolting on partial solutions can become problematic

    View Slide

  5. The Community to the Rescue
    ● Blacklight / Hydra
    Ruby / Rails
    ● Islandora
    PHP / Drupal
    ● Common Platforms
    Apache Solr for search and discovery
    Fedora Commons for repository and storage

    View Slide

  6. The Appeal of Drupal
    ● Instant access to “lego block” code
    Thousands of modules help reduce development time
    Lower barrier to entry to encourage participation
    ● UCLA Library move to Drupal
    CMS shift to Drupal within UCLA Library increases local expertise
    ● Trend towards Drupal on campus
    Shift from Plone to Drupal in other departments

    View Slide

  7. Islandora Development
    ● The Islandora Way != The Drupal Way
    Assets and metadata stored only in Fedora repository
    Limits which Drupal modules can be used out of the box
    ● Leveraging the Drupal community
    Harnessing the collective power of Drupal ecosystem is limited
    ● Option: Make Islandora more Drupal-ish?
    Yep, we sure can!

    View Slide

  8. Islandora Sync
    ● Joint project with Discovery Garden
    ● Goal to mask Fedora data as Drupal data
    ● Fully open source on GitHub

    View Slide

  9. Core Features
    ● Ability to map Drupal Content Types to
    Fedora Content Models
    ● Map Drupal Fields to Fedora Datastreams or
    metadata elements
    ● Replicate Fedora RELS-EXT references with
    Drupal Relation entities

    View Slide

  10. Fedora Repo
    Islandora Data
    Entry Forms
    Native Drupal
    Entities
    Islandora Sync Workflow
    Islandora
    Modules
    Drupal
    Modules
    1) User updates an
    Islandora object, saves
    data to Fedora
    2) With Islandora Sync
    enabled, hooks are
    fired to populate native
    Drupal entities with
    Fedora data
    Views
    Services
    Gallery
    Gmap
    Basic Image
    Large Image
    Book
    PDF
    Audio
    Video

    View Slide

  11. First iteration, be aware...
    ● Works for UCLA DL workflow
    The UCLA Digital Library is the gatekeeper for our Fedora instance
    Changes via processes outside of Islandora might not be sync’d
    ● One way sync
    Initial use cases placed most weight on Fedora to Drupal direction
    Hooks in place for Drupal push to Fedora
    ● Scalability
    Still need to tweak Drupal for performance for large imports

    View Slide

  12. Islandora Data Access Options
    ● Access to Solr index
    ● Access to Fedora REST API
    ● Access via Services Module via Sync
    Additional benefit of Drupal security options

    View Slide

  13. Where we hope to go
    ● Foster increased community development
    By lowering barrier, we hope to encourage increased development
    ● Continued improvement of core code
    Goal to contribute regular development to support roll into Islandora core
    ● Increased Drupal Features packages
    MODS image mapping example is available now

    View Slide

  14. References
    UCLA Digital Library
    http://digital2.library.ucla.edu
    UCLA Library GitHub
    https://github.com/UCLALibrary
    Islandora Sync GitHub repo
    https://github.com/UCLALibrary/islandora_sync
    Kristian Allen
    [email protected]
    Islandora
    http://www.islandora.ca
    Islandora VM (7x.1-2 Ubuntu 32 bit)
    http://islandora.ca/downloads
    Discovery Garden
    http://www.discoverygarden.ca

    View Slide