dmwm / WMCore

Core workflow management components for CMS.
Apache License 2.0
46 stars 107 forks source link

Data driven architecture with WMPayload service #12171

Open vkuznet opened 4 days ago

vkuznet commented 4 days ago

Impact of the new feature Reduce operational overhead of WM services.

Is your feature request related to a problem? Please describe. Current WM architecture is based on set of distributed data-services talking to different databases and overlapping data. The new system can eliminate many components of WMAgent and replace them with central high-availability service to hold and serve WM data from a single location. This can lead to reduction of operation cost, maintenances various components, and overall improvements for WM services.

Describe the solution you'd like I propose to adopt data (event) driven architecture with central WMPayload service. The full proposal is available in this google document. It consists of the following:

The benefits of the new architecture can be summarized as following:

Describe alternatives you've considered Many iterations of existing architectures.

Additional context There is a very simple but fully function prototype WMPayload service which satisfies to desired functionality and requirements. The initial prototype shows the following performance using JSON data-format:

operation document req/sec bytes/operation memory allocations
write single doc auto-gen 0.5ms 12KB 197
write single doc ReqMgr2 0.8ms 60KB 666
read single doc auto-gen 0.2ms 12KB 124
read single doc ReqMgr2 0.5ms 38KB 201
read all docs ReqMgr2 75ms 102MB 238

Tests were performed under macOS (Apple M2 8 core) and used either auto-generated JSON docs or documents taken from ReqMgr2 service. In total there were 1500 documents in MongoDB indexes by uuid.