Does my organization need AzureServiceFabric?


Azure Service Fabric is a technology to provide high reliable stateful/stateless/stateful persisted services. In this blog I want to relate few of the solution which helped me envisage answers for simple day to day problem at work. Microsoft is trying to promote this service currently for both private and public clouds. In Open networking summit of 2015 Azure chief Technology officer Mark Russinovich presented the roadmap of this service which encompasses future release support for Linux and Java containers.

Support for Java can open horizon of comparison between existing technologies prevailing in distributed computing field. Based on same Leader Election and Replication concept, technologies like Hadoop, HDFS, Zoo Keeper already dominate the space. Deep Diving into Azure Service Fabric pops out many similar concepts.

Similarity with existing technologies 


1.      Data locality in Hadoop = Hot data in Azure Service Fabric (ASA)


Hadoop is having this concept of Data Locality where it tries to co-locate the data with the compute nodes, so data access is faster. This is the reason for it good performance and which makes it at the heart of data computing.

Azure Service Fabric term the local data as hot data (ref: link). The intent of this is same high performance. These hot data features are provided by Reliable actors or Reliable services. Service Fabric replicates the data to other instances for data reliability.

This concept of hot data is also debatable as some say it is good to have this for higher performance and in some guidelines it is not preferred. Let me point to the link at Cloud foundry. Cloud Foundry avoids writing to local file system primarily because the disk might be taken. It always suggest you to go with Cold Data which can be stored in external storage. Again it depends on the architecture and design of replication implemented. Discussion on this might be another blog of comparison.

Organization which are new to big data analysis, which is thinking around the terms of hot and cold data might want to leverage Azure service Fabric for their requirement. Here Cold data is termed as that set of data that can be stored into external storage like database, or storage containers for future reference. Here going with Hadoop or small micro-service on ASA is a point of debate. It depends on what is the business need. If you are a c# guy your best bet is to try ASA. 

2.      Reliable Application development using Zookeeper in Hadoop or Reliable Service/Actors in ASA


Zookeeper is about building general distributed applications. It is also termed as Hadoop’ distributed coordination system. Zookeeper deals with some common terminologies in distributed computing world- Distributed Queues, Distributed Locks and leader election. At Yahoo, Zookeeper has been benchmarked at over 10000 operation per seconds.

Azure Service Fabric comes up with a similar feature which it calls as Reliable Service and Reliable Actors. Reliable Services/Actors offers reliable data structures like Reliable dictionaries and Reliable Queues. These are based on same replication concepts. One can create an application and define x number of partition, each partition may have n number of replicas which fulfil the purpose. Hot data in Service Fabric Cluster get replicated across other instances for high reliability.

Here Zookeeper is having an advantage over ServiceFabric and that is termed as HBase. Hbase which is based on ZooKeeper has proved its ability to geo replicate. Microsoft on other hand has still not mentioned anything about geo replication in Service Fabric.

Organization can really leverage the reliable data structures provided by Service Fabric. One simple implementation that I envisage is machine management where in organizations are having huge number of machines and bucketing them in different scenarios like health, test failures, suspicious activities can easily be done using reliable dictionaries. Reliable Queues on other hand can provide a good implementation of priority queues.

Conclusion


Still Service Fabric is in its infancy and this blog needs a lot of meat, but this is a start. Compared to Hadoop a huge opportunity lies in terms of feature development in ASA. Once Microsoft decides to release this in Java and Linux containers it will open more opportunities to explore. As reported this is also a back bone for some of upcoming technologies Microsoft plan to release like Cortana along with existing technologies like Skype, Intune and Azure SQL, so this will encourage developers to create real time, high reliable applications. The intent is to provide a one button solution for all the needs.

Comments

Popular posts from this blog

Firebase authentication with Ionic creator

Big Data - SWOT Analysis

LINKEDIN api call using NODE.JS OAUTH module