#Data as a Service: REST #APIs Transforming the Cloud era
History of Cloud Computing
Cloud computing is a kind of Internet-based computing that offers pooled computer processing resources and data to computers and other devices on demand. It is often referred to as “the cloud” delivery of on-demand computer resources, everything from applications to data centers, through the Internet, normally, on a pay-for-use basis (Armbrust et al., 2010). The term “time sharing” is the foundation of cloud computing in the 1950s; back then mainframe computers were huge occupying plenty of room and due to the cost of purchasing and sustaining mainframes, organizations could not meet the expense of buying them for each user. The solution, therefore, was “time sharing” in which multiple users shared the entrance to data and CPU time. In 1969, J.C.R Licklider established the ARPANET (Advanced Research Projects Agency Network); his idea was for global interconnection and access to programs and data at any site from any place (Mohamed, 2009). This network became the basis of the internet.
In the 1970s, IBM launched an operating system known as VM which permitted admins to possess multiple virtual systems or “Virtual Machines on a single physical node (Mohamed, 2009). The VM operating system took the “time sharing” to the next level, and most of the primary function of virtualization software can be drawn to the VM operating system. The 1990s telecommunications companies began offering virtualized private network connections (Mohamed, 2009). It allowed more users to the same physical infrastructure through shared access. The change enabled traffic shift as necessary to enable better system balance and more mechanism over bandwidth usage. In the interim, PC-based system virtualisation began in solemn, and as the internet became more manageable, online virtualisation logically fell into place. Cloud computing came in around 1997. In 2002, however, Amazon created Amazon Wed Service (AWS) providing a cutting-edge system of cloud services from storage to computation (Mohamed, 2009). Amazon also introduced the Elastic Compute Cloud (EC2) as a commercial Wed service which allowed companies rent computers on which they were able to run their computer applications. 2009, Google and Microsoft joined, the Google App Engine brought low-cost computing and storage services, and Microsoft trailed suit with Windows Azure (Mohamed, 2009). The Reserve field service management software passages to the cloud.
History of REST APIs
In understanding the history of REST APIs, APIs history comes first. Modern web APIs were legitimately congenital with Roy Fielding’s dissertation Architectural Styles and the design of Network-based Software Architectures in 2000 (Lane, 2012). Web APIs first seemed in the wild with the outline of Salesforce in February. Salesforce was an enterprise class web-based, sales force automation, as an “Internet as a service” with XML APIs were a fragment of Salesforce.com from the first day. On November the same year, eBay launched the eBay Application Program Interface (API) along with the eBay Developers Programs (Lane, 2012). Amazon started Amazon.com Wed Services which allowed developers incorporate Amazon.com content and structures in their websites. AWS also enabled third party sites search and display products from Amazon.com in an XML format. Amazon E-Commerce kicked off the modern Wed API movement (Lane, 2012).
Web APIs got traction when things got social. In 2004, Flickr launched their API which was attained by Yahoo later (Lane, 2012). The inauguration of RESTful API made Flickr become the imaging policy of choice for early blogging and social media movement. Users were allowed to entrench their Flickr photos easily into their blogs and social network streams. Facebook also launched their API Version 1.0 of Facebook Development Platform which enabled developers access Facebook friends, photos, events and profile info for Facebook (Lane, 2012). Twitter followed suit and introduced the Twitter API, and Google launched their Google Maps APIs. As the APIs were making social thrill across the internet, Amazon recognized the potential in RESTful APIs and launched a new web service Amazon S3 (Buyya, 2008). It delivered a simple interface that can be for storing and to reclaim any amount of data at anytime from anywhere on the internet. It offers developers access to vastly scalable, dependable, fast, and cheap data storage infrastructure, same as Amazon usages, to run its global network websites.
Necessity of REST APIs
REST is a set of principles that elaborate how Web standards like HTTP and URLs are supposed to be used. Its purpose is to convince performance scalability, simplicity, portability, visibility, modifiability, and reliability. It is just a series of guidelines and architect styles used for data transmission, and it is commonly applied to web applications. RESTful Application Programming Interfaces (APIs) are APIs that follow the REST architecture (Lozano, Galindo, & García, 2008). REST became necessary and important for minimizing the combination between clients and server mechanisms in a widespread application. In the case, a server is going to be used by various customers, and the developer has no control over, REST plays a part in managing the clients. REST is also necessary when one needs to update the server commonly without interfering in updating the customer’s software. Rest is in the world over; it is part of the web that makes it work so well
Recent Advancement in REST APIs
Open source projects are furthering software practices based on RESTful APIs. SmartBear Software launched an open source project under the governance of the Linux Foundation called the Open API Initiative (OAI) to establish standards and guidance for whole REST APIs are defined (Katayama et al., 2010). The major goal of OAI is to describe a standard, language-agnostic interface to REST APIs that enables computers and users to discover and comprehend the abilities of the service without access to source code, documentation, or through network traffic check-up.
Future of REST APIs
RESTful APIs are regarded as superior to service-oriented architectures and cloud computing, and microservices are working to make RESTful API design the rule in the future. Daniel Bachhuber sees the REST API going further, his says:
I believe WordPress to be the embodied of core philosophies, then a particular manifestation of software: ownership over personal data, design for users, commitment to backward compatibility, and so on. The WP REST API is the foundational component of WordPress being embedded within 100% of the web” (Schiola, 2016).
The loT developers need REST without needless bloat, both HTTP and JSON. For JSON the future of loT is austere, and the REST model is a strong fit for loT. REST holds the future, since it allows building infrastructure for organizations with fewer worries about longer-term hitching to a particular client-side track, the server will always live longer than the client (Lanthaler & Gütl, 2012). Another key idea in this REST APIs architectural philosophy is that the server supports caching and is stateless.
Armbrust, M., Fox, A., Griffith, R., Joseph, A. D., Katz, R., Konwinski, A., … & Zaharia, M. (2010). A view of cloud computing. Communications of the ACM, 53(4), 50-58.
Buyya, R., Yeo, C. S., & Venugopal, S. (2008, September). Market-oriented cloud computing: Vision, hype, and reality for delivering it services as computing utilities. Proceedings of 10th IEEE International Conference High Performance Computing and Communications, (pp. 5-13). Los Alamitos, CA: IEEE CS Press.
Katayama, T., Nakao, M., & Takagi, T. (2010). TogoWS: integrated SOAP and REST APIs for interoperable bioinformatics Web services. Nucleic Acids Research, 38(suppl 2), W706-W711.
Lane, K. (2012). History of APIs. API Evangelist. Retrieved from: http://apievangelist.com/2012/12/20/history-of-apis/
Lanthaler, M., & Gütl, C. (2012, April). On using JSON-LD to create evolvable RESTful services. Proceedings of the Third International Workshop on RESTful Design (pp. 25-32). Rio de Janeiro, Brazil: ACM Press.
Lozano, D., Galindo, L. A., & García, L. (2008, September). WIMS 2.0: Converging IMS and Web 2.0. designing REST APIs for the exposure of session-based IMS capabilities. In The Second International Conference on Next Generation Mobile Applications, Services, and Technologies, (pp. 18-24).
Mohamed, A. (2009). A history of cloud computing. Computer Weekly, 27. Retrieved from: http://www.computerweekly.com/feature/A-history-of-cloud-computing.
Schiola, E. (2016, January 20). The future of REST API: An interview with Daniel Bachhuber. Torque. Retrieved from: http://torquemag.io/2016/01/future-rest-api-interview-daniel-bachhuber/
WordPress. (2011). WordPress.org. Retrieved from: https://wordpress.org/
Yates, A., Beal, K., Keenan, S., McLaren, W., Pignatelli, M., Ritchie, G. R., … & Flicek, P. (2014). The Ensembl REST API: ensembl data for any language. Bioinformatics, 613.