The LUX system is made up of a number of components which are hosted in AWS.
- Harvester
- Each partner generates at least one Activity Stream (AS) from their collection management system
- The Harvester monitors each of the Activity Streams for updates and has a single thread for each AS
- The Harvester is written in Go and is running on a Docker container on ECS/Fargate
- The Harvester stores the data in a data caches which is a single database running on RDS Postgres
- Data pipeline
- The Data pipeline is running on Docker cotainers on ECS/Fargate
- At each stage of the data processing, the data is saved to a data cache which is a database running on RDS Postgres
- The Data pipeline is written in Python
- Back-end database
- The Back-end database is MarkLogic
- It is running on a three node cluster in AWS
- The nodes are EC2 r5.4xlarge instances with attached EBS for storage
- The cluster utilizes the internal ALB
- Front-end & Middle-tier
- The Front-end is built using React and Javascript
- The dynamic web content is managed in a decoupled/headless Content Management System (Drupal 9) for rendering into the user interface
- The Middle-tier is built in Node.js
- Both the Front-end and the Middle-tier are running in a Docker container on ECS/Fargate
Contacts:
- Jeff Campbell (Service Owner, ITS)
- Seong-June Kim (Technical Lead, ITS)
- Robert Sanderson (Director of Cultural Heritage Metadata)