An Introduction to Cordra

Cordra is a digital object server that can function as a key infrastructural piece in FAIR DO (findable, accessible, interoperable and reusable digital object) implementations. Cordra manages JSON records and payloads as typed digital objects identified by handles. Cordra is neither a database nor a...

Full description

Bibliographic Details
Main Author: Robert Tupelo-Schneck
Format: Article
Language:English
Published: Pensoft Publishers 2022-10-01
Series:Research Ideas and Outcomes
Subjects:
Online Access:https://riojournal.com/article/95966/download/pdf/
_version_ 1797948384167854080
author Robert Tupelo-Schneck
author_facet Robert Tupelo-Schneck
author_sort Robert Tupelo-Schneck
collection DOAJ
description Cordra is a digital object server that can function as a key infrastructural piece in FAIR DO (findable, accessible, interoperable and reusable digital object) implementations. Cordra manages JSON records and payloads as typed digital objects identified by handles. Cordra is neither a database nor an indexer, but it integrates the two and provides a unified interface.Cordra is intended to support both quick prototyping as well as production systems.For prototyping, Cordra makes it easy to get up and running rapidly with a digital object server. A potential Cordra administrator can download Cordra and very quickly have a server which supports creation, search, and retrieval of digital objects with resolvable identifiers. The server supports Digital Object Interface Protocol (DOIP) and HTTP APIs out of the box, as well as an immediately usable prototype user interface. Cordra saves substantial development time as it comes with ready-made functionality ranging from user authentication and access control to information validation, enrichment, storing, and indexing. By default, Cordra is configured to store objects on the local file system of the machine and use embedded Apache Lucene for indexing. Simply by editing type definitions in Cordra's user interface, the administrator can start changing the behavior of the APIs and user interface in real time for experimentation, including adding custom operations.For production use, Cordra allows intensive extension and customization of the processes underlying the digital object server: how digital objects are stored and indexed, how they are validated and enriched, how users authenticate, when and to whom to give access to objects, and what custom operations can be performed. In production Cordra is run at scale, supporting high reliability and performance; among other options Cordra supports MongoDB and Amazon S3 for storage, and Elasticsearch and Apache Solr for indexing. By definition of the underlying types and operations, Cordra is intended to serve directly as the API backend for a production application.This talk will cover basic Cordra features as well as customization/configuration basics. Examples of current use will be shown, including the use of the Digital Object Interface Protocol (DOIP), for which Cordra serves as a reference implementation.Current users of Cordra include the Derivatives Service Bureau (DSB), which uses Cordra as part of its backend to manage the automated generation of International Securities Identification Numbers (ISINs) for OTC derivatives in the financial services sector; and the British Standard Institute (BSI) whose Identify service for construction product manufacturers aims to assign a Universal Persistent Identification Number (UPIN) "for every product that is specified and incorporated in a building structure". The DSB, Cordra users since 2017, has a production system with over 80 million identified digital objects which receives millions of searches each month. BSI.Identify has a system where Cordra's DOIP interface is directly accessible as the service's public API.
first_indexed 2024-04-10T21:43:32Z
format Article
id doaj.art-5a1c41f5259a46d1af89a99e841b8636
institution Directory Open Access Journal
issn 2367-7163
language English
last_indexed 2024-04-10T21:43:32Z
publishDate 2022-10-01
publisher Pensoft Publishers
record_format Article
series Research Ideas and Outcomes
spelling doaj.art-5a1c41f5259a46d1af89a99e841b86362023-01-18T21:09:08ZengPensoft PublishersResearch Ideas and Outcomes2367-71632022-10-0181210.3897/rio.8.e9596695966An Introduction to CordraRobert Tupelo-Schneck0Corporation for National Research InitiativesCordra is a digital object server that can function as a key infrastructural piece in FAIR DO (findable, accessible, interoperable and reusable digital object) implementations. Cordra manages JSON records and payloads as typed digital objects identified by handles. Cordra is neither a database nor an indexer, but it integrates the two and provides a unified interface.Cordra is intended to support both quick prototyping as well as production systems.For prototyping, Cordra makes it easy to get up and running rapidly with a digital object server. A potential Cordra administrator can download Cordra and very quickly have a server which supports creation, search, and retrieval of digital objects with resolvable identifiers. The server supports Digital Object Interface Protocol (DOIP) and HTTP APIs out of the box, as well as an immediately usable prototype user interface. Cordra saves substantial development time as it comes with ready-made functionality ranging from user authentication and access control to information validation, enrichment, storing, and indexing. By default, Cordra is configured to store objects on the local file system of the machine and use embedded Apache Lucene for indexing. Simply by editing type definitions in Cordra's user interface, the administrator can start changing the behavior of the APIs and user interface in real time for experimentation, including adding custom operations.For production use, Cordra allows intensive extension and customization of the processes underlying the digital object server: how digital objects are stored and indexed, how they are validated and enriched, how users authenticate, when and to whom to give access to objects, and what custom operations can be performed. In production Cordra is run at scale, supporting high reliability and performance; among other options Cordra supports MongoDB and Amazon S3 for storage, and Elasticsearch and Apache Solr for indexing. By definition of the underlying types and operations, Cordra is intended to serve directly as the API backend for a production application.This talk will cover basic Cordra features as well as customization/configuration basics. Examples of current use will be shown, including the use of the Digital Object Interface Protocol (DOIP), for which Cordra serves as a reference implementation.Current users of Cordra include the Derivatives Service Bureau (DSB), which uses Cordra as part of its backend to manage the automated generation of International Securities Identification Numbers (ISINs) for OTC derivatives in the financial services sector; and the British Standard Institute (BSI) whose Identify service for construction product manufacturers aims to assign a Universal Persistent Identification Number (UPIN) "for every product that is specified and incorporated in a building structure". The DSB, Cordra users since 2017, has a production system with over 80 million identified digital objects which receives millions of searches each month. BSI.Identify has a system where Cordra's DOIP interface is directly accessible as the service's public API.https://riojournal.com/article/95966/download/pdf/digital objectsdigital object serversrepositor
spellingShingle Robert Tupelo-Schneck
An Introduction to Cordra
Research Ideas and Outcomes
digital objects
digital object servers
repositor
title An Introduction to Cordra
title_full An Introduction to Cordra
title_fullStr An Introduction to Cordra
title_full_unstemmed An Introduction to Cordra
title_short An Introduction to Cordra
title_sort introduction to cordra
topic digital objects
digital object servers
repositor
url https://riojournal.com/article/95966/download/pdf/
work_keys_str_mv AT roberttupeloschneck anintroductiontocordra
AT roberttupeloschneck introductiontocordra