iRODS Primer 2

Book description

Policy-based data management enables the creation of community-specific collections. Every collection is created for a purpose. The purpose defines the set of properties that will be associated with the collection. The properties are enforced by management policies that control the execution of procedures that are applied whenever data are ingested or accessed. The procedures generate state information that defines the outcome of enforcing the management policy. The state information can be queried to validate assessment criteria and verify that the required collection properties have been conserved. The integrated Rule-Oriented Data System implements the data management framework required to support policy-based data management. Policies are turned into computer actionable Rules. Procedures are composed from a microservice-oriented architecture. The result is a highly extensible and tunable system that can enforce management policies, automate administrative tasks, and periodically validate assessment criteria. iRODS 4.0+ represents a major effort to analyze, harden, and package iRODS for sustainability, modularization, security, and testability. This has led to a fairly significant refactorization of much of the underlying codebase. iRODS has been modularized whereby existing iRODS 3.x functionality has been replaced and provided by small, interoperable plugins. The core is designed to be as immutable as possible and serve as a bus for handling the internal logic of the business of iRODS. Seven major interfaces have been exposed by the core and allow extensibility and separation of functionality into plugins.

Table of contents

  1. Acknowledgments
  2. Introduction
  3. Integrated Rule-Oriented Data System
    1. Data Grid Overview (1/2)
    2. Data Grid Overview (2/2)
  4. iRODS Architecture
    1. Virtualization in iRODS
    2. iRODS Components
    3. User Environment Variables
    4. Configuration Files
      1. ~/.odbc.ini
      2. ~/.irods/.irodsA
      3. /etc/irods/server_config.json
      4. ~/.irods/irods_environment.json
      5. Checksum Configuration
      6. Special Characters
    5. Plugin Interfaces
      1. Pluggable Microservices
      2. Composable Resources
      3. Pluggable Authentication
      4. Pluggable Network
      5. Pluggable Database
      6. Pluggable RPC API
      7. Pluggable Rule Engine
    6. Example Plugins
      1. Composable Resources
      2. Pluggable Authentication (1/3)
      3. Pluggable Authentication (2/3)
      4. Pluggable Authentication (3/3)
  5. Rule-Oriented Programming
    1. Session State Variables
    2. Persistent State Information Variables
  6. The iRODS Rule System
    1. The iRODS Rule Architecture
    2. Default iRODS Rules
    3. Session Variables Available for Default iRODS Rules
    4. Dynamic Policy Enforcement Points
      1. Flow Control
      2. Parameter Serialization
      3. Dynamic PEP Signatures
    5. Pluggable Rule Engine Architecture
      1. Rule Engine Plugin Framework
      2. Configuration (server_config.json)
    6. The iRODS Rule Language
      2. Directives
      3. Boolean and Numeric
      4. Strings
      5. Dot Expression
      6. Constant
      7. Function
      8. Rule
      9. Data Types and Pattern Matching
      10. Control Structures
      11. Recovery Chain For Control Structures
      12. Types
      13. Language Integrated General Query
      14. Path Literals
    7. Delay Execution
      1. Syntax
      2. Examples
    8. Remote Execution
      1. Syntax
      2. Examples
  7. iRODS Microservices
    1. Microservice Input/Output Arguments
    2. About Microservices and Microservice Plugins
    3. Examples
      1. The Plugin Factory
      2. The Microservice Definition
      3. Building and Installing the Example Code
      4. Testing the Microservice
  8. Exercises
    1. Short Questions
    2. Essay Questions
  9. Authors' Biographies

Product information

  • Title: iRODS Primer 2
  • Author(s): Hao Xu, Terrell Russell, Jason Coposky, Arcot Rajasekar, Reagan Moore, Antoine de Torcy, Michael Wan, Wayne Shroeder, Sheau-Yen Chen
  • Release date: March 2017
  • Publisher(s): Morgan & Claypool Publishers
  • ISBN: 9781627056373