Wednesday, January 26, 2011

Follow the SUN Model - Global Workflow

Recently I had an opportunity to do an architectural analysis for enabling the “follow the SUN” business model for an Enterprise. Since the application is based on Microsoft Sharepoint 2010, analysis include evaluating various deployment options available in SharePoint platform, different WAN optimizations solutions & constraints and also performing cost benefit exercise.

Scenario involved users accessing a web based system from different geographical locations & in different time zones, carrying various parts of the same business process.

The primary options available for this are:

  • Option #1 - Central Farm with users around the world
  • Option #2 - Central farm with regional SharePoint deployments

Each of these options carries its own merits & demerits.

Option #1

 In this option, all the layers of the application (Web & App) will be deployed in the central location including the DB layer (which holds all the databases and data pertaining to users of all regional locations). The central location is chosen where the Enterprise has its IT support hub.

This is suited in the where bandwidths & latencies between WAN connections provide a reasonable experience.

·         Minimal Total Cost of Operations
·         Optimized IT operations maintenance
·         Zero data / content latency which will enable efficient load sharing model
·         There could a impact on the page response / performance for the other regional users in the scenarios of high network latency & underperforming WAN

Option #2

In this option, the Web & App layers will be deployed in the central location with regional deployments of Data layers. To enable the users of different regional locations to carry out workflow activities, regional databases should be kept mutually synchronized.  

This is suited in the scenarios where regional users most likely to access local data & data on the day-to-day basis.

·         Optimized performance for regional editors when they access data & content  of their local regional enquiries
·         There could be latency on the availability of data & content to other regional users.
·         Increases complexity and operations cost of the overall solution
·         Requires greater organizational coordination to build effective governance of content that is authored in multiple geographic locations

Let us see what could be the best option and why

In case of option #1, sometimes it may require real-time replication which will significantly affect OLTP performance. This will also become more complicated when the volume of data is huge.

In case of option #2, even though constraints related to network & bandwidth may affect the performance when the system is accessed by the users in different geographical locations especially when they access data from remote locations, it can be solved through the various WAN optimization solutions. From the cost perspective, investment in WAN optimization solutions is less that investing in servers farms across different geographical locations.

Also, TCO will be high in option #2 than in option #1 because of the need of deployment of IT support professionals across different regions in the earlier case.

From the security perspective, regional deployments will increase complexity.

This qualitative analysis helps us to conclude that option #1 looks more suitable than option #2.

But still it is to be backed by the metrics of actual POC results.

When it comes to option #1, Data layer will become a bottleneck. Since the Data layer includes data for all the regions, a request from a particular region need to traverse way all the data of other regions. Unless a strategy is  adopted for its scalability and efficient data retrieval & updation, it will affect the performance of the entire system.

On performing a detailed analysis and evaluating various options, Data Dependant Routing emerged as the best suitable option.

We will see more on Data Dependant Routing.