Written By: An IntelliGenesis Senior Software Engineer
At the November SCIF Dinner, we talked about developing software for the cloud versus developing on traditional client/server platforms and dove into the pros and cons of each platform and how it relates to the work we do with IntelliGenesis.
One of the key points that was covered related to the scaling and data processing, with the cloud having the clear advantage. Because of the way cloud-based platforms are architected, they are simple and inexpensive (relatively speaking) to expand and upgrade. Simply adding inexpensive commodity hardware to the cloud platform allows the cloud software to automatically take advantage of the extra data storage and the extra processing power (this was deliciously demonstrated at the SCIF Dinner through the use of Slim Jims and beef jerky).
The extra computing power allows cloud software to spread the job of processing data across more servers, lightening the workload of each individual server and, when it comes to processing huge amounts of data, drastically speeding up the compute times. Traditional client/server platforms cannot scale with the same ease, nor can they spread the processing tasks across multiple platforms in the efficient way that cloud platforms do.
The cloud allows efficient, inexpensive processing of massive amounts of data, something on which our work heavily relies. Client/server platforms can provide quicker response times on smaller quantities of data, but scaling those systems to handle the data throughput that we require is expensive and difficult, if even possible.