The Railroad Repository
Warning: Old Product
This software is no longer under active development. Railroad has been partially replaced by Tramline and other approaches. Also the upcoming release of Zope 2.11 will offer BLOB support as an option.
Railroad is a standards based repository for binary files such as digital media, along with their metadata. It is designed to be easy to integrate with content management systems and other client software.
Many CMS’s are more suitable for document-style content than they are for managing large files. Managing such binary content in a CMS can result in scalability issues and deteriorating performance. Railroad instead is dedicated to the task of managing large files and their metadata.
Railroad can be seamlessly integrated into CMS’s, leveraging the open WebDAV protocol and simple HTTP messaging. While uploads and downloads of files are fully managed by Railroad and thus routed ‘around’ the application server, authorization of who can upload or download is still under full control of the CMS using whatever authorization scheme it needs.
Railroad allows multiple clients (such as CMS’s and DAM systems) to access the resources in the repository at the same time, thus keeping large data files and their metadata centrally managed and shared.
Railroad also makes management of file data on the filesystem easier for the system administrator. Railroad takes care to categorize files of a different type into separate directories. If a system administrator determines one file type is taking up a lot of space, it is simple to move this information off onto another, larger, partition. It is also possible to run multiple repositories in one Apache instance, or on different machines but using the same database.
Technology and Standards
The Railroad Repository uses the industry-standard Apache HTTP server, with Apache’s mod_dav and mod_python, with metadata stored in a PostgreSQL database. Information about metadata in a repository can be accessed and manipulated by CMS clients, and can also be harvested using the Open Archives Initiative Protocol for Metadata Harvesting (OAI-PMH) in Dublin Core format.
See slides from Kit Blake’s presentation at EuroPython 2004 or the updated version with Railroad's Plone integration at the Plone Conference 2004:
- The Railroad Project – EuroPython 2004, Gothenburg
- The Railroad Repository – Plone Conference 2004, Vienna
The Infrae team would like to thank ETH Zürich for their vision and support during the initial development of the Railroad Repository.