Executive Overview
and
Demonstration
Jason Coposky
@jason_coposky
Executive Director, iRODS Consortium
Executive Overview
and
Demonstration
January 21, 2020
OpenIO Meetup
Lille, France
Our Membership
Consortium
Member
Consortium
Member
What is iRODS
Distributed - runs on a laptop, a cluster, on premises or geographically distributed
Open Source - BSD-3 Licensed, install it today and try before you buy
Metadata Driven & Data Centric - Insulate both your users and your data from your infrastructure
iRODS as the Integration Layer
iRODS Core Competencies
The underlying technology categorized into four areas
Data Virtualization
Combine various distributed storage technologies into a Unified Namespace
- Existing file systems
- Cloud storage
- On premises object storage
- Archival storage systems
iRODS provides a logical view into the complex physical representation of your data, distributed geographically, and at scale.
Projection of the Physical into the Logical
Logical Path
Physical Path(s)
Data Discovery
Attach metadata to any first class entity within the iRODS Zone
- Data Objects
- Collections
- Users
- Storage Resources
- The Namespace
iRODS provides automated and user-provided metadata which makes your data and infrastructure more discoverable, operational and valuable.
Metadata Everywhere
Workflow Automation
Integrated scripting language which is triggered by any operation within the framework
- Authentication
- Storage Access
- Database Interaction
- Network Activity
- Extensible RPC API
The iRODS rule engine provides the ability to capture real world policy as computer actionable rules which may allow, deny, or add context to operations within the system.
Dynamic Policy Enforcement
- restrict access
- log for audit and reporting
- provide additional context
- send a notification
The iRODS rule may:
Secure Collaboration
iRODS allows for collaboration across administrative boundaries after deployment
- No need for common infrastructure
- No need for shared funding
- Affords temporary collaborations
iRODS provides the ability to federate namespaces across organizations without pre-coordinated funding or effort.
iRODS Policies
- Replication
- Versioning
- Fixity Checking
- Retention
- Verification
- Logical Quotas
- Hard Links
- Metadata Access Control
- Metadata Template Enforcement
- ...
- Packaged and supported solutions
- Require configuration not code
- Derived from the majority of use cases observed in the user community
iRODS Capabilities
Automated Ingest - Landing Zone
Storage Tiering
Initial Goals
- Automatically Ingest data from a 'Landing Zone'
- Extract salient metadata - eg EXIF tags
- Tag Data Objects and Collections to make them Actionable and Discoverable
- Discover and interact with data on the command line
- Discover and interact with data via Metalnx
- Share data via Metalnx
- Interact with data via NFS and WebDAV
- Watch data vertically move through the storage tiers
- Review iRODS Audit plugin Kibana dashboard
Automated Ingest
Any data that is discovered during a scan
- Automatically registered to a storage resource
- Metadata extracted and applied to the object in the catalog
- Event possibly generated for audit trail
Users can view and access data and metadata from any client
Data Discovery with Command Line
Query using imeta, a command-line iRODS client utility:
imeta qu -d "Image Make" = Apple
iquest "%s/%s" "SELECT COLL_NAME, DATA_NAME WHERE META_DATA_ATTR_NAME = 'Image Make' AND META_DATA_ATTR_VALUE = 'Apple'"
Query using iquest, a command-line iRODS client utility:
Data Discovery with Metalnx
Automated Ingest has provided metadata for data discovery
The metadata can be directly inspected in Metalnx
The query builder can be used to identify data sets of interest via Attribute, Value, Unit matches
Queries to the system metadata may also be performed, searching on values such as file name, collection path, user, etc.
File System Presentations: DAVRods
DAVRods provides both a simple web based interface as well as the ability to mount a folder on the desktop
DAVRods is an Apache Module implemented in C using the native iRODS POSIX API
DAVRods can be used to edit data in-place, or to copy data to/from a users collections
File System Presentations: NFSRODS
NFSRODS leverages the Java iRODS Client 'Jargon' and is implemented with NFS4J
NFSRODS acts as a Mid-Tier client to iRODS
NFSRODS projects iRODS ACLs into NFS extended ACLs
NFSRODS can also be used to edit data in-place, or to copy data to/from a users collections with
Storage Tiering
A tier group was made between demoResc, openio, and archive resources:
imeta set -R demoResc irods::storage_tiering::group openio_group 0
imeta set -R openio irods::storage_tiering::group openio_group 1
imeta set -R archive irods::storage_tiering::group openio_group 2
Tiering Times were set to 30 seconds and 60 seconds:
imeta set -R demoResc irods::storage_tiering::time 30
imeta set -R openio irods::storage_tiering::time 60
No tiering time was set for 'archive' since it is terminal
Kibana Dashboard
Questions?
OpenIO Meetup - iRODS Executive Overview and Demonstration
By jason coposky
OpenIO Meetup - iRODS Executive Overview and Demonstration
An executive overview of iRODS, its technology, capabilities and deployment patterns as well as a demonstration of capabilities.
- 1,198