A Brief iRODS Overview

November 2015

What is iRODS?

           Overview

iRODS is open source data management software.

It...

      ...makes data findable.

 

      ...maintains data integrity.

 

      ...manages backup replicas.

 

      ...makes data shareable.

  Storage Virtualization

 

 

 

  Data Discovery

 

 

 

  Workflow Automation

 

 

 

  Secure Collaboration

          The Four Pillars

← all your storage in a single namespace

← system and user-generated metadata

← event-driven and scheduled cron  policies

 federation

Storage Virtualization: iRODS is Middleware

User Application

"Logical" Layer

Storage Environment

"Physical" Layer

storagecluster.example.org:/managed

s3.amazonaws.com:/example/bitbucket

Storage Virtualization: iRODS Clients

• Web-based and Standalone GUIs

  - iRODS Cloud Browser, MetaLnx, Kanki, Cyberduck

 

• Portals, External Systems

  - iPlant Discovery Environment, Islandora, Fedora Commons

 

• WebDAV for drag-and-drop access built in to the OS

• APIs: Python, REST, Qt, Java, C++

• Command Line Interface

"Logical" Layer

"Physical" Layer

storagecluster.example.org:/managed/Vault/home/alice/training_jpgs/clown_fish.jpg

/tempZone/home/alice/training_jpgs/clown_fish.jpg

s3.amazonaws.com:/example/bitbucket/Vault/home/alice/training_jpgs/clown_fish.jpg

Storage Virtualization: Objects and Collections

Storage Virtualization: iRODS is Distributed

Storage Virtualization: Composable Resources

replResc

demoResc

s3Resc

archiveResc

cacheResc

Data Discovery

Attribute: filename      | Value: seal.jpg

Attribute: animal         | Value: seal

Attribute: photo_color | Value: gray and brown

Attribute: file_size        | Value: 362833                | Units: bytes

acPostProcForPut {
    if ($filePath like "*.jpg" || $filePath like "*.jpeg" || $filePath like "*.bmp" || $filePath like "*.tif" || $filePath like "*.tiff" || $filePath like "*.rif" || $filePath like "*.gif" || $filePath like "*.png" || $filePath like "*.svg" || $filePath like "*.xpm") { 
    msiget_image_meta($filePath, *meta);
    msiString2KeyValPair(*meta, *meta_kvp);
    msiAssociateKeyValuePairsToObj(*meta_kvp, $objPath, "-d"); 
    } # if 
} # acPostProcForPut 

Policy Enforcement Points = Triggers

Microservices = Actions

Workflow Automation: Rules

Secure Collaboration: Federation

Some History

iRODS is free, open source software owned by a foundation called the iRODS Consortium.

  • Goal is to sustain iRODS as free open source software by:

    ▹ Building good software.  ▹ Growing the iRODS community.  ▹ Demonstrating value.

 

  • Funds a team of 10+ developers, application engineers, documentation, support staff

The iRODS Consortium and Sustainability

Contract Customers

and more ...

The Team

Building Good Software: Plugins

• Microservices

• Storage Resources

• Authentication

• Network

• API

• Rule Engine (iRODS 4.2)

• Transport (iRODS 4.3)

Modular, maintainable code

Static Analysis and Continuous Integration

https://jenkins.irods.org

Initial Trial

  • Google Group
  • Blog posts, social media
  • Cloud images
  • Documentation
  • Training workshops
  • iRODS Hub: The iRODS App Store

Proof of Concept to Pilot

  • Occasional 1-on-1 Support
  • iRODS Consortium Members
  • iRODS Partners
  • iRODS Consortium Service Contracts

Production

  • iRODS Consortium Membership

Building Community and Demonstrating Value

https://irods.org/documentation/

Getting Plugged In with iRODS...

Thank You!

Thank you!

 

 

 

irods.org

 

 

Dan Bedard

danb@renci.org

1-919-445-0632

iRODS Overview

By iRODS Consortium

iRODS Overview

An Introduction to iRODS. Covers virtualization, data discovery (metadata), workflow automation (rules), and secure collaboration (federation). Discussion topics include time-based rules and scaling.

  • 2,188