… and behind the scenes
As shown below, the overall architecture consists of three major parts:
The back end, in turn, consists of three modules:
- a controller module that controls the program flow and provides a HTTP API
- a converter that encapsulates (amongst others) Metafacture to transform data
- and a persistence layer to access the Metadata Repository (currently a relational database; MySQL) and the Data Hub (currently a graph database; Neo4j).
Knowledge workers, e.g., system librarians, usually interact with the Back Office web application and may use the data hub browser to inspect or visualize the data stored by d:swarm. Administrators or advanced knowledge workers may make use of the TPU to execute data processing tasks on larger amounts of data. Both parts (Back Office + TPU) communicate with the d:swarm backend via its HTTP API. A documentation of this API is provided via Swagger. Hence it can be simply explored via the Swagger UI. This is a very convenient way to discover and test the back end’s functionality.