How texttechnologylab/dockerunifieduimainterface works
DUUI is a Java framework for composing scalable UIMA analysis pipelines over text and multimodal corpora. Users supply documents, configure components and drivers, and execute analysis; readers, segmentation, communication, and output/storage support that workflow. Documented drivers cover local UIMA, Docker, remote REST, Swarm, Kubernetes, Podman, and Ray. The graph preserves these capabilities and performance monitoring/storage. Several subsystem internals are unsampled, so their connections are shown only where the README or excerpts support them; dashed edges indicate unverified integration.
Main entry points: DUUIPipelineComponent.java Analysis components · DUUIComposer.java Composer · IDUUIStorageBackend.java Storage backend API · DUUIPipelineDocumentPerformance.java Performance metrics
Components 22
Pipeline orchestration
- Composer
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/DUUIComposer.java - Pipeline description
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/DUUIPipelineDescription.java - Component config
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/driver/DUUIPipelineComponent.java
Document processing
- Document readers
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/io/reader - Segmentation
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/segmentation/DUUISegmentationStrategy.java - Document output
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/io/writer
Component execution
- Analysis components
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/driver/DUUIPipelineComponent.java - Driver interface
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/driver/IDUUIDriverInterface.java - UIMA driver
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/driver/DUUIUIMADriver.java - Docker driver
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/driver/DUUIDockerDriver.java - Remote driver
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/driver/DUUIRemoteDriver.java - Cluster drivers
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/driver - Ray driver
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/driver/DUUIRayDriver.java - Communication layer
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/IDUUICommunicationLayer.java
Monitoring and storage
- Monitoring
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/monitoring/DUUIMonitor.java - Performance metrics
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/pipeline_storage/DUUIPipelineDocumentPerformance.java - Storage backend API
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/pipeline_storage/IDUUIStorageBackend.java - SQLite backend
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/pipeline_storage/sqlite/DUUISqliteStorageBackend.java - ArangoDB backend
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/pipeline_storage/arangodb/DUUIArangoDBStorageBackend.java - MongoDB backend
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/pipeline_storage/mongodb/DUUIMongoDBStorageBackend.java - PostgreSQL backend
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/pipeline_storage/postgres/DUUIPostgresSQLStorageBackend.java
Other components
- Pipeline user
Connections 19
- Pipeline user → Pipeline description: configures
README.md - Pipeline user → Composer: runs
README.md - Composer → Driver interface: registers drivers
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/DUUIComposer.java - Analysis components → UIMA driver: runs with
README.md - Analysis components → Docker driver: runs with
README.md - Analysis components → Remote driver: runs with
README.md - Analysis components → Cluster drivers: runs with
README.md - Analysis components → Ray driver: runs with
README.md - Document readers → Segmentation: supplies documents
- Composer → Analysis components: executes pipeline
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/DUUIComposer.java - Analysis components → Communication layer: communicates through
- Composer → Document output: writes results
- Composer → Monitoring: reports status
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/DUUIComposer.java - Composer → Performance metrics: records timings
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/DUUIComposer.java - Performance metrics → Storage backend API: provides metrics
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/pipeline_storage/IDUUIStorageBackend.java - Storage backend API → SQLite backend: implemented by
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/pipeline_storage/sqlite/DUUISqliteStorageBackend.java - Storage backend API → ArangoDB backend: implemented by
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/pipeline_storage/arangodb/DUUIArangoDBStorageBackend.java - Storage backend API → MongoDB backend: implemented by
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/pipeline_storage/mongodb/DUUIMongoDBStorageBackend.java - Storage backend API → PostgreSQL backend: implemented by
src/main/java/org/texttechnologylab/DockerUnifiedUIMAInterface/pipeline_storage/postgres/DUUIPostgresSQLStorageBackend.java