Productionizing Predictive Analytics using the Rendezvous Architecture — for Architects

Daniel Schulz
2 min readOct 25, 2019
Couple kissing outdoors — Lovers on a romantic date at sunset,girls stands on tiptoe to kiss her man

When taking analytical architectures into production, it is always about performance of this system. When working agile, the first Minimum Viable Product (MVP) might be of rather low accuracy; when taking more time before going live or when working “in Waterfall,” the quality of the predictions might be more accurate. In the end in both systems, I’d like to be able to deploy an improved version of my model into production. There is one well-known approach to do so: the pattern called Blue-Green Deployment.

Blue-Green Deployments for three models — exactly one model responds at any given time

We’re having two models deployed: one called “blue” the other “green.” Before it, there is a Reverse Proxy, which funnels all traffic to either deployment. So all requests in any time range end up in the same deployment. When a new model is deployed, I may switch over all requests from blue to green or vice versa.

The idea is simple, but for forecasting systems a bit too simplistic. I am not able to compare both model’s results as only one model is queried at any time. The Rendezvous Architecture augments this idea and builds upon it. Basically it adds:

  1. An optional Proxy Pattern right before the models -
    to augment secondary data & features to the instances to classify or predict
  2. A metrics sink right after the models —
    as all models will be queried in parallel; this allows us to inspect all deployed models to compare them against one another
  3. Merges all model’s responses in the end —
    can deal with models taking too long to respond or not responding at all
  4. Stores all primary & secondary input data to all models for later comparison through the Decoy Model —
    when models are versioned, we may always perform tests on elderly & newer data on some models; or given some data, may tinker with elderly & later models

I think, the Rendezvous Architecture is very helpful for building AI & Analytical Architectures. This pattern is an Event-Driven Architecture and allows for some Evolution in our architecture: like deploying newer model versions or other model architectures. Besides the famous Lambda Architecture, the Rendezvous Architecture is important to build evolving system architectures.

slideshare.net/danielschulz2005/productionizing-predictive-analytics-using-the-rendezvous-architecture-for-architects

Please find more information in the slides attached. Please let me know, what you think and whether you have any reservations pertaining Rendezvous Architecture.

--

--