SA-REST and (S)Mashups: Adding Semantics to Restful Services

Total Page:16

File Type:pdf, Size:1020Kb

SA-REST and (S)Mashups: Adding Semantics to Restful Services Wright State University CORE Scholar The Ohio Center of Excellence in Knowledge- Kno.e.sis Publications Enabled Computing (Kno.e.sis) 9-2007 SA-REST and (S)mashups: Adding Semantics to RESTful Services Jonathan Lathem Karthik Gomadam Wright State University - Main Campus Amit P. Sheth Wright State University - Main Campus, [email protected] Follow this and additional works at: https://corescholar.libraries.wright.edu/knoesis Part of the Bioinformatics Commons, Communication Technology and New Media Commons, Databases and Information Systems Commons, OS and Networks Commons, and the Science and Technology Studies Commons Repository Citation Lathem, J., Gomadam, K., & Sheth, A. P. (2007). SA-REST and (S)mashups: Adding Semantics to RESTful Services. Proceedings of the International Conference on Semantic Computing, 469-476. https://corescholar.libraries.wright.edu/knoesis/707 This Conference Proceeding is brought to you for free and open access by the The Ohio Center of Excellence in Knowledge-Enabled Computing (Kno.e.sis) at CORE Scholar. It has been accepted for inclusion in Kno.e.sis Publications by an authorized administrator of CORE Scholar. For more information, please contact library- [email protected]. SA-REST and (S)mashups : Adding Semantics to RESTful Services Jon Lathem Karthik Gomadam and Amit P. Sheth Department of Computer Science kno.e.sis center University of Georgia Department of Computer Science and Engineering Athens, GA, USA Wright State University, Dayton, OH [email protected] fgomadam-rajagopal.2, [email protected] Abstract of a read/write web. The reason for this is that it is diffi- cult for the average user with technical training to create a The evolution of the Web 2.0 phenomenon has led to mashup. Typically there is a lot of programming that goes the increased adoption of the RESTful services paradigm. into creating a mashup and the user would need to not only RESTful services often take the form of RSS/Atom feeds and understand how to write code but understand the API of all AJAX based light weight services. The XML based messag- the services that need to be included in the mashup. This is ing paradigm of RESTful services has made it possible to a time consuming task and impossible for the typical web compose various services together. Such compositions of user. To solve this problem, leading companies are now ac- RESTful services is widely referred to as Mashups. In this tively developing tools that can be used to create a mashup paper, we outline the limitations in current approaches to and require little to no programming knowledge form the creating mashups. We address these limitations by propos- user. These tools typically facilitate a way to select some ing a framework called as SA-REST. SA-REST adds seman- number of RESTful web services or other web resource and tics to RESTful services. Our proposed framework builds chain them together by piping one services output into the upon the original ideas in WSDL-S, our W3C submission, next services input while filtering content and making slight which was subsequently adapted for Semantic Annotation of format changes. Three of the leaders in this field are Yahoo! WSDL (SAWSDL), now a W3C proposed recommendation. Pipes, Google Mashup Editor, and IBMs QEDWiki. We demonstrate use of microformats for semantic annota- The drawback of these tools is that they are limited in tion of RESTful services and then the use of such semanti- the number of services that they can interact with. These cally enabled services with better support for interoperabil- tools normally deal with services that are internal to the ity for creating dynamic mashups called SMashups. company that the tool was developed from (Google Mashup Editor can use Google Maps) or to services that have stan- dard types of outputs such as RSS or ATOM. This leaves 1. Introduction out a vast number of services that cannot be utilized via these tools for the creation of mashups. This is an under- The evolution of the Web 2.0 phenomenon has led to standable limitation because it would be extremely difficult the increased adoption of the RESTful services paradigm. to work with a service whose inputs and outputs are in a RESTful services often take the form of RSS/Atom feeds nonstandard form. This makes it difficult to address issues and AJAX based light weight services. The XML based related to data mediation. It is true that that if one of these messaging paradigm of RESTful services has made it pos- companies wanted to add a new service that did not have a sible to bring discrete data from services together and cre- standard output or was not an internal service to their tool, ate more meaningful datasets. This is being referred to as it would be possible by making modifications to the exist- building a mashup. A mashup is the creation of a new ser- ing tooling in order to incorporate the interface of the new vice from two or more existing services. In other words, service. However, this is not a scalable solution due to the a mashup can be described as a composition of RESTful rate at which new services are coming online. The need to services. change the tool itself also removes the ideal of a customiz- Mashups really embrace the idea of a customizable web. able web. A user is most likely not going to want to browse Craigs We propose to address the limitations in both complex- list and look it the map for each location he finds on the ity and scalability, by adding semantics to the descriptions list. On the other hand mashups do not embrace the idea of RESTful services. The proposed SA-REST framework is a derivative of SAWSDL [11], the W3C PR for adding se- 3. SA-REST mantics to WSDL. SA-REST borrows the idea of grounding service descriptions to semantic meta-models using model- In this section we present the SA-REST approach to add reference annotations. In this paper we discuss adding an- semantics to RESTful Web services. Adding semantic an- notations using RDFa and GRDDL. SA-REST captures an- notations to a RESTful web service yields many benefits notations for service inputs, outputs, operations and faults. and alleviates many of problems associated with RESTful In addition to these elements, SAREST also captures the web services. In this section, we discuss why, what and how type of the request. The SA-REST approach is discussed in of adding semantic annotation to RESTful services. We call detail in section 3. this idea Semantic Annotation of RESTful web services or We illustrate the role of SA-REST in the context of a SA-REST. user-friendly, customizable and scalable approach to creat- There have been a number of efforts to add formal se- ing mashups, called Semantic Mashups (Smashups). The mantics to traditional Web services including OWL-S [8], idea behind creating Smashups is to exploit the explicit se- WSMO [12] and WSDL-S [9]. Driven primarily by the mantics modeled in SA-REST to demonstrate the use of se- W3C member input of our METEOR-S research group mantics in the creation and the customization of mashups. at LSDIS lab and Kno.e.sis Center, and in association Rest of the paper is organized as follows. In section 2, we with IBM [9], a W3C work group has recently released a motivate the need for our approach by illustrating the lim- candidate recommendation called Semantic Annotation of itations of the current mashups. We discuss the SA-REST WSDL or SAWSDL. We have developed SA-REST from framework in Section 3. Section 4 discusses creation of many of the ideas that were first presented in WSDL-S and mashups using the SA-REST framework. We present our then adapted in SAWSDL. The idea behind SAWSDL is conclusions and future work in Section 5. to add semantic annotations to the WSDL that describes service. The basic annotations that SAWSDL adds are in- puts, outputs, operation, interfaces, and faults. In terms of 2. Limitations in Current Mashups SAWSDL, semantic annotations are simply bits of xml that are embedded as properties in the WSDL. These properties are URIs of ontology objects. This means that the annota- tion of a concept in SAWSDL or SA-REST is a way to tie In this section we outline the limitations in current together the concept out of the SAWSDL or SA-REST to a mashups. We consider the housing maps mashup as an ex- class that exists in ontology. An ontology is a conceptual- ample [5]. The housing maps mashup integrates real estate ization of a domain represented in terms of concepts and the data from Craigslist.com [1] service and the location infor- relationships between those concepts. Furthermore, it em- mation from the Google map [3] web service. Now, it is bodies an agreement among its users and provides a com- conceivable that for a given geography, there can be other mon nomenclature to improve interoperability. Since the alternate real estate service providers along with other map adoptions of OWL (the Web Ontology Language,[6]) and service providers. In the current housing maps application, RDF (Resource Description Framework, [7]) with the as- it is not possible for users to change either the real estate ser- sociated language of RDFS for RDF schemas as languages vice (Craigslist) or the map service (Google maps). Further for ontology representation and semantic Web data, ontolo- it is also not possible for an user to to integrate a service that gies are most frequently represented in OWL or RDF. As provides information about the traffic in a given locality, in with SAWSDL, SA-REST does not enforce the choice of a this application.
Recommended publications
  • Larry Page Developing the Largest Corporate Foundation in Every Successful Company Must Face: As Google Word.” the United States
    LOWE —continued from front flap— Praise for $19.95 USA/$23.95 CAN In addition to examining Google’s breakthrough business strategies and new business models— In many ways, Google is the prototype of a which have transformed online advertising G and changed the way we look at corporate successful twenty-fi rst-century company. It uses responsibility and employee relations——Lowe Google technology in new ways to make information universally accessible; promotes a corporate explains why Google may be a harbinger of o 5]]UZS SPEAKS culture that encourages creativity among its where corporate America is headed. She also A>3/9A addresses controversies surrounding Google, such o employees; and takes its role as a corporate citizen as copyright infringement, antitrust concerns, and “It’s not hard to see that Google is a phenomenal company....At Secrets of the World’s Greatest Billionaire Entrepreneurs, very seriously, investing in green initiatives and personal privacy and poses the question almost Geico, we pay these guys a whole lot of money for this and that key g Sergey Brin and Larry Page developing the largest corporate foundation in every successful company must face: as Google word.” the United States. grows, can it hold on to its entrepreneurial spirit as —Warren Buffett l well as its informal motto, “Don’t do evil”? e Following in the footsteps of Warren Buffett “Google rocks. It raised my perceived IQ by about 20 points.” Speaks and Jack Welch Speaks——which contain a SPEAKS What started out as a university research project —Wes Boyd conversational style that successfully captures the conducted by Sergey Brin and Larry Page has President of Moveon.Org essence of these business leaders—Google Speaks ended up revolutionizing the world we live in.
    [Show full text]
  • Web GIS in Practice VI: a Demo Playlist of Geo-Mashups for Public Health Neogeographers Maged N Kamel Boulos*1, Matthew Scotch2, Kei-Hoi Cheung2,3 and David Burden4
    International Journal of Health Geographics BioMed Central Editorial Open Access Web GIS in practice VI: a demo playlist of geo-mashups for public health neogeographers Maged N Kamel Boulos*1, Matthew Scotch2, Kei-Hoi Cheung2,3 and David Burden4 Address: 1Faculty of Health and Social Work, University of Plymouth, Drake Circus, Plymouth, Devon, PL4 8AA, UK, 2Center for Medical Informatics, School of Medicine, Yale University, New Haven, CT, USA, 3Departments of Anesthesiology and Genetics, School of Medicine, and Department of Computer Science, Yale University, New Haven, CT, USA and 4Daden Limited, 103 Oxford Rd, Moseley, Birmingham, B13 9SG, UK Email: Maged N Kamel Boulos* - [email protected]; Matthew Scotch - [email protected]; Kei- Hoi Cheung - [email protected]; David Burden - [email protected] * Corresponding author Published: 18 July 2008 Received: 6 July 2008 Accepted: 18 July 2008 International Journal of Health Geographics 2008, 7:38 doi:10.1186/1476-072X-7-38 This article is available from: http://www.ij-healthgeographics.com/content/7/1/38 © 2008 Boulos et al; licensee BioMed Central Ltd. This is an Open Access article distributed under the terms of the Creative Commons Attribution License (http://creativecommons.org/licenses/by/2.0), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited. Abstract 'Mashup' was originally used to describe the mixing together of musical tracks to create a new piece of music. The term now refers to Web sites or services that weave data from different sources into a new data source or service.
    [Show full text]
  • Towards Secure and Reusable Web Applications
    Mashups and Modularity: Towards Secure and Reusable Web Applications Antero Taivalsaari Tommi Mikkonen Sun Microsystems Laboratories [email protected] http://research.sun.com/projects/lively 2 Evolution of the Web 1) Simple pages with text and static images only (e.g., http://www.google.com) 2) Animated pages with plug-ins (e.g., http://www.cadillac.com) 3) Rich Internet Applications (e.g., docs.google.com) What's Next? 3 Web Applications – Implications • Web-based software will dramatically change the way people develop, deploy and use software. • No more installations! > Applications will simply run off the Web. • No more upgrades! > Always run the latest application version. • Instant worldwide deployment! > No middlemen or distributors needed. • No CPU dependencies, OS dependencies, ... > The Web is the Platform. 4 Unfortunately... • The web browser was not designed for running real applications. > It was designed in the early 1990s for viewing documents, forms and other page-structured artifacts – not applications. > Programming capabilities on the web were an afterthought, not something inherent in the design of the browser. • Various Rich Internet Application (RIA) technologies have been introduced recently to retrofit application execution capabilities into the web browser. 5 Web Development vs. Conventional Software The Impedance Mismatch Web Development Conventional SW Development - Documents - Applications - Page / form oriented interaction - Direct manipulation - Managed graphics, static layout - Directly drawn, dynamic
    [Show full text]
  • Review of Service Composition Interfaces
    Sanna Kotkaluoto, Juha Leino, Antti Oulasvirta, Peter Peltonen, Kari‐Jouko Räihä and Seppo Törmä Review of Service Composition Interfaces DEPARTMENT OF COMPUTER SCIENCES UNIVERSITY OF TAMPERE D‐2009‐7 TAMPERE 2009 UNIVERSITY OF TAMPERE DEPARTMENT OF COMPUTER SCIENCES SERIES OF PUBLICATIONS D – NET PUBLICATIONS D‐2009‐7, OCTOBER 2009 Sanna Kotkaluoto, Juha Leino, Antti Oulasvirta, Peter Peltonen, Kari‐Jouko Räihä and Seppo Törmä Review of Service Composition Interfaces DEPARTMENT OF COMPUTER SCIENCES FIN‐33014 UNIVERSITY OF TAMPERE ISBN 978‐951‐44‐7896‐3 ISSN 1795‐4274 Preface This report was produced in the LUCRE project. LUCRE stands for Local and User-Created Services. The project is part of the Flexible Services research programme, one of the programmes of the Strategic Centre for Science, Technology and Innovation in the ICT field (TIVIT) and funded by Tekes (the Finnish Funding Agency for Technology and Innovation) and the participating organizations. The Flexible Service Programme creates service business activity for global markets. The programme has the aim of creating a Web of Services. The programme creates new types of ecosystems, in which the producers of services, the people that convey the service and the users all work together in unison. As part of such ecosystems, LUCRE will develop an easy-to-use, visual service creation platform to support the creation of context aware mobile services. The goal is to support user-driven open innovation: the end- users (people, local businesses, communities) will be provided with tools to compose new services or to modify existing ones. The service creation platform will build on the technology of existing mashup tools, widget frameworks, and publish/subscribe mechanisms.
    [Show full text]
  • Towardsweb User-Centric Development Emilian Pascalau
    TowardsWeb User-Centric Development Emilian Pascalau To cite this version: Emilian Pascalau. TowardsWeb User-Centric Development. Data Structures and Algorithms [cs.DS]. Conservatoire national des arts et metiers - CNAM, 2014. English. NNT : 2014CNAM0916. tel- 01062263 HAL Id: tel-01062263 https://tel.archives-ouvertes.fr/tel-01062263 Submitted on 9 Sep 2014 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. CONSERVATOIRE NATIONAL DES ARTS ET MÉTIERS ÉCOLE DOCTORALE INFORMATIQUE, TÉLÉCOMMUNICATION ET ÉLECTRONIQUE (EDITE - PARIS) ÉQUIPES VERTIGO - LABORATOIRE CEDRIC THÈSE DE DOCTORAT présentée par : Emilian PASCALAU soutenue le : 7 avril 2014 pour obtenir le grade de : Docteur du Conservatoire National des Arts et Métiers Discipline / Spécialité : Informatique Vers un développement Web orienté utilisateur Towards Web User-Centric Development THÈSE DIRIGÉE PAR M. RIGAUX Philippe PR, CNAM RAPPORTEURS M. GROSS-AMBLARD David PR, Univ. Rennes 1 Mme. GRIGORI Daniela PR, Univ. Paris-Dauphine EXAMINATEURS Mme. BENBERNOU Salima PR, Paris Descartes M. TRAVERS Nicolas MdC, CNAM M. ZAMFIROIU Michel Directeur, KarmicSoft inc. To my parents Emil and Iuliana Aknowledgements I feel obliged to first thank God for the health and strength He gave me through out the years of study.
    [Show full text]
  • Is the Mashup Technology Mature for Its Application in an Institutional Website?
    UBICOMM 2010 : The Fourth International Conference on Mobile Ubiquitous Computing, Systems, Services and Technologies Is the Mashup Technology Mature for its Application in an Institutional Website? Serena Pastore INAF – Astronomical Observatory of Padova Vicolo dell’Osservatorio 5 – 35122 Padova, ITALY e-mail: [email protected] Abstract—Web design for general-purpose websites today From a technical perspective, this has become a simple requires framework software infrastructure built from operation: an organization could implement a website by different components. Among web server software as the front- using web CMS software (i.e., Wordpress [12], Joomla [13], -end needed to process HTTP/HTTPS requests, the top-down Drupal [14], Plone [15], etc.) which, in a few steps, allows a layers consist of different software middleware of which CMS website to install a database management system as a (Content Management System) technology is a primary backend. The graphical aspect is provided through numerous component. However, with the proliferation of websites and templates, while content editors take advantage of a the advent of Web 2.0 philosophy, much distributed simplified method for uploading files and sending commands information has become structured in interoperability file through a web interface. This revolution in website formats (i.e., XML, RSS, JSON, etc.), and thus, new development has undoubtedly enhanced a webmaster’s work, technologies such as mashups have been developed to collect this information in a dynamic way. The document approaches but it has contributed to a shift in the attention from other mashup technologies in order to evaluate their application not aspects of a website (graphical presentation, the presence of only in an end-user environment to create a personalized start feeds, videos and changing images on the homepage) away page that embeds different sources of information relevant to a from content.
    [Show full text]
  • (12) United States Patent (10) Patent No.: US 8,660,849 B2 Gruber Et Al
    USOO8660849B2 (12) United States Patent (10) Patent No.: US 8,660,849 B2 Gruber et al. (45) Date of Patent: Feb. 25, 2014 (54) PRIORITIZING SELECTION CRITERIA BY (56) References Cited AUTOMATED ASSISTANT U.S. PATENT DOCUMENTS (71) Applicant: Apple Inc., Cupertino, CA (US) 3,704,345 A 11/1972 Coker et al. (72) Inventors: Thomas Robert Gruber, Emerald Hills, 3,828,132 A 8/1974 Flanagan et al. CA (US); Adam John Cheyer, Oakland, (Continued) CA (US); Didier Rene Guzzoni, Monte-sur-Rolle (CH); Christopher FOREIGN PATENT DOCUMENTS Dean Brigham, San Jose, CA (US); CH 681573 A5 4f1993 Harry Joseph Saddler, Berkeley, CA DE 3837.590 A1 5, 1990 (US) (Continued) (73) Assignee: Apple Inc., Cupertino, CA (US) OTHER PUBLICATIONS (*) Notice: Subject to any disclaimer, the term of this Rudnicky, A., Thayer, E. Constantinides, P., Tchou, C. Shern, R., patent is extended or adjusted under 35 Lenzo, K., Xu W. Oh, A. Creating natural dialogs in the Carnegie U.S.C. 154(b) by 0 days. Mellon Communicator system. Proceedings of Eurospeech, 1999, 4. 1531-1534. (21) Appl. No.: 13/725,656 (Continued) (22) Filed: Dec. 21, 2012 Primary Examiner — Pierre-Louis Desir Assistant Examiner — Fariba Sirjani (65) Prior Publication Data (74) Attorney, Agent, or Firm — Morgan, Lewis & Bockius US 2013/O 111348A1 May 2, 2013 LLP (57) ABSTRACT Related U.S. Application Data Methods, systems, and computer readable storage medium (63) Continuation of application No. 12/987,982, filed on related to operating an intelligent digital assistant are dis Jan. 10, 2011. closed. A user request is received, the user request including at least a speech input received from a user.
    [Show full text]
  • Modern Tools for Development of Interactive Web Map Applications for Visualization Spatial Data on the Internet
    Acta Montanistica Slovaca Ročník 14 (2009), mimoriadne číslo 1, 4-11 Modern tools for development of interactive web map applications for visualization spatial data on the internet Ardielli Jiří1, Minarčík Tomáš2 , Ožana Roman3 a Horáková Bronislava4 Moderní nástroje k vývoji interaktivních webových mapových aplikací pro vizualizaci prostorových dat na internetu In the last few years has begun the development of dynamic web applications, often called Web2.0. From this development was created a technology called Mashups. Mashups may easily combine huge amounts of data sources and functionalities of existing as well as future web applications and services. Therefore they are used to develop a new device, which offers new possibilities of information usage. This technology provides possibilities of developing basic as well as robust web applications not only for IT or GIS specialists, but also for common users. Software companies have developed web projects for building mashup application also called mashup editors. Key words: Web, API, Mashups, GIS, GeoWeb Introduction The application development for personal computers has always focused on the desktop applications. With rapid internet development there has been a change towards the online dynamic web applications. The web applications, which use the most modern technologies and standards, quickly catch up with their desktops counterparts, not only with their more sophisticated user interface but also with its functionality and usage in various fields. The most commonly used are the desktop applications of big companies or open-source communities’ applications to process and visualize spatial data in the geoinformatics field. There are many desktop applications of the same kind, but the number of the web projects allowing the same is much smaller.
    [Show full text]
  • Got Web 2.0? a Review of Web 2.0 Tools for the Information Systems Curriculum
    Volume 8, Number 28 http://isedj.org/8/28/ June 15, 2010 In this issue: Got Web 2.0? A Review of Web 2.0 Tools for the Information Systems Curriculum Patricia Sendall Wendy Ceccucci Merrimack College Quinnipiac University North Andover, MA 01845 USA Hamden, CT 06518 USA Alan R. Peslak Penn State University Dunmore, PA 18512 USA Abstract: This paper discusses the importance of incorporating Web 2.0 technologies across the Information Systems (IS) curriculum. The Web 2.0 paradigm is not new; although the term itself was coined in 2004 by Dale Dougherty of O’Reilly Media, Inc., (Anderson, 2007) the concept of a collaborative workspace was the original vision of Tim Berners-Lee, the inventor of the World Wide Web. The Economist Intelligence Unit (2007) reports that approximately 80% of all corporations believe that Web 2.0 has the potential to increase revenues. Others have stated that health of one’s business could be seriously damaged if these technologies are not being utilized. This manuscript first presents a review of the importance of Web 2.0 technologies. This is followed by a comprehensive overview of the multitude of technologies that make up Web 2.0. The goal is to provide a detailed reference to understanding these tools so that they can be readily understood by students and easily incorporated into current information systems curricula. Keywords: Web 2.0, blog, wiki, podcast, social networking, information systems pedagogy, collab- orative learning Recommended Citation: Sendall, Ceccucci, and Peslak (2010). Got Web 2.0? A Review of Web 2.0 Tools for the Information Systems Curriculum.
    [Show full text]
  • A Study of Mashup As a Software Application Development Technique with Examples from an End-User Programming Perspective
    Journal of Computer Science 6 (12): 1406-1415, 2010 ISSN 1549-3636 © 2010 Science Publications A Study of Mashup as a Software Application Development Technique with Examples from an End-User Programming Perspective 1,2 Ahmed Patel, 1Liu Na, 1Rodziah Latih, 2Christopher Wills, 1Zarina Shukur and 1Rabia Mulla 1School of Computer Science, Faculty of Information Science and Technology, University Kebangsaan Malaysia, 43600 UKM Bangi, Selangor Darul Ehsan, Malaysia 2Faculty of Computing Information Systems and Mathematics, Kingston University, Penrhyn Road, Kingston Upon Thames KT1 2EE, United Kingdom Abstract: The purpose of this study is to present, introduce and explain the principles, concepts and techniques of mashups through an analysis of mashup tools from End-user Development (EuD) software engineering perspectives, since it is a new programming paradigm. Problem statement: Although mashup tools supporting the creation of mashups rely heavily on data integration, they still require users to have reasonable programming skills, rather than simply enabling the integration of content in a template approach. Mashup tools also have their lifespan in a fast moving technology-driven world which requires meta-application handling. Some developers have discontinued their mashup tools but others are still available in the mashup space. It has been noted that there is a steady increase of new mashups on a daily basis with a concomitant increase of new Application Programming Interface (APIs) to support meta-mashup application EuD. Approach: Both
    [Show full text]
  • Programming the Cloud: the Internet As Platform
    Programming the Cloud: the Internet as Platform Gregor Hohpe Software Engineer www.EnterpriseIntegrationPatterns.com © 2008 Google, Inc. All rights reserved, Who’s Gregor? • Distributed systems, asynchronous messaging, service-oriented architectures • MQ, MSMQ, JMS, ESB’s • Software engineer at Google • Book: Enterprise Integration Patterns •Site: www.eaipatterns.com • Write code every day. Share knowledge through patterns. • “Starbucks does not use 2-phase commit” featured in Joel Spolsky’s Best Software Writing. © 2008 Google, Inc. All rights reserved, 2 1 Internet as a Platform: The Good Falling cost of Ubiquitous Democratized storage and broadband tools of computing connectivity production power © 2008 Google, Inc. All rights reserved, 3 Internet as a Platform: The Challenges Architect’s Dream Developer’s Nightmare •Loosely coupled •NO Call Stack •Extensible •NO Transactions •Standards-based •NO Promises •Fault tolerant •NO Certainty •Unlimited computing •NO Ordering power Constraints •Ubiquitous © 2008 Google, Inc. All rights reserved, 4 2 Isn’t This What Distributed Transactions Are For? •Require coordinator •Even 2 Phase Commit has windows of uncertainty •Not practical for long running interactions • Locks not practical / economical • Isolation not possible / practical •Usually not supported •Don’t scale “Life“Life BeyondBeyond DistributedDistributed TransactionsTransactions –– anan Apostate’sApostate’s Opinion”Opinion” --Pat Helland © 2008 Google, Inc. All rights reserved, 5 Still An Issue With HTTP •Hardware failure •Network
    [Show full text]
  • Cloud Computing Chapter 2 Software As a Service (Saas) Learning Objectives
    Cloud Computing Chapter 2 Software as a Service (SaaS) Learning Objectives • Define and describe SaaS. • List the advantages and disadvantages of SaaS solutions. • Define and describe OpenSaaS. • Define and describe mashups. • Discuss the wide range of SaaS solutions and their providers. Software as a Service SaaS Defined • A solution model in which users use a web browser to access software that resides, along with the programs and user data, in the cloud. Advantages • Eliminate the need for an on-site data center. • Eliminate the need for application administration. • Allow customers to pay on demand for software use, normally on a per-user basis. • Offer application, processor, and data storage scalability. • Offer device-independent access to applications. • Increase disaster recovery and business continuity. Disadvantages • The data, like the applications, reside in the cloud. – Many companies are concerned about letting go of their data. • Also, because the company does not own the solution, it can be challenging or expensive to customize the application. Real World: Salesforce.com • Cloud-based customer relationship management (CRM) solutions. • Companies accomplish the following: – Manage sales contacts and leads – Centralize contact information, presentations, and project details – Access sales information and reports from anyplace, at any time, with any device – Manage project quotes and project work flow – Sync sales contacts and meetings with existing tools, such as Microsoft Outlook Multitenant SaaS Solutions • SaaS applications are often multitenant solutions; • Within the cloud, two or more companies may share the same server resources. Real World: Taleo Human-Resources SaaS • To achieve wide-scale use, an SaaS solution must have large market potential.
    [Show full text]