Transcription
ARCHITECTING HYBRID CLOUDSOLUTIONS WITH THE WATSONDEVELOPER CLOUDA Lesson in InnovationWill ChaparroIBM@wmchaparro
You are here
Client Tier (Client Machine)Watson Developer Cloud TierUser’sBrowserOn PremiseApplicationBuilderRESTWDC AppAjaxRESTWDCServiceProxyWatson Explorer Application Tier(WebSphere)Public CloudLegendTierIBM Watson ComponentOther, non IBM componentIntegration Sample ComponentHTTPS
REVIEWSome definitions
Definition: Cloud ComputingEssentials: On demand self service Broad network Access Resource Pooling Rapid Elasticity Measured Service
Cloud Deployment Models Private Cloud Community Cloud Public Cloud Hybrid Cloud
Cloud Service Models Software as a Service(SaaS) Platform as a Service(PaaS) Google Apps for Business Google App Engine Microsoft Office 365 Heroku Windows Azure Cloud Services Infrastructure as a Service(IaaS) Amazon AWS Amazon AWS IBM Bluemix
Anyone remember timeshares?
Definition: Hybrid Cloud Hybrid Cloud means that the design spans morethan one cloud. Openstack.org The connection of one or more clouds to on-premise systems and/or the connection of one ormore clouds to other clouds IBM
WHYHybridCloud?
CompliancePublic CloudPrivate CloudSensitiveNot sensitiveHybrid Cloud
BurstingPublic CloudPrivate CloudHybrid Cloud
Transition to Public CloudExisting AppHybrid CloudPublic Cloud
Why Hybrid Cloud? Disaster Recovery Scaling Cost Optimization Geographic Optimization Cover Legacy System Gapsand
INNOVATIONPaves the way to a cloud solution
INNOVATIONWatson Developer Cloud
Watson
We needed to innovate Quickly With minimal investment Without a PhD in machine learning With a reliable technology
We used a Hybrid Cloud solution
What is the Watson Developer Cloud? A collection of REST APIs and SDKs hosted on IBMBluemix that use cognitive computing to solve complexproblems. Let the developers build the next generation of cognitiveenhanced applications.
What is IBM Bluemix? IBM Bluemix is the IBM open cloud platform that providesmobile and web developers access to IBM software forintegration, security, transaction, and other key functions,as well as software from business partners. PaaS Similar offerings Microsoft Azure Cloud Services Amazon AWS Heroku
Watson Developer Cloud Services Personality Insights Question and Answer Machine Translation Message Resonance Relationship Extraction Concept Expansion
Our approach Play to your Strengths Focus on the User Experiment and Learn Collaborate Keep grounded in sound practices
EXAMPLEOn Prem Public Cloud
Personality InsightsDescription: REST API uses linguisticanalytics to infer cognitive and socialcharacteristics based on text informationcreated by individuals or groups.Search Application Uses: Psychographicsegmentation, Customer portraits combinedwith a 360 degree view of a customerQuality Attributes: Security, Scalability, Performance,Privacy, Cost
Integration ArchitectureClient Tier (Client Machine)Watson Developer Cloud TierUser’sBrowserOn PremiseApplicationBuilderRESTWDC AppAjaxRESTWDCServiceProxyWatson Explorer Application Tier(WebSphere)Public CloudLegendTierIBM Watson ComponentOther, non IBM componentIntegration Sample ComponentHTTPS
What did we learn? Patterns Quality Attributes Benefits Challenges
Definition: Architectural Pattern An architectural pattern is a general, reusable solution toa commonly occurring problem in software architecturewithin a given context. An architectural style (that) determines the vocabulary ofcomponents and connectors that can be used ininstances of that style, together with a set of constraintson how they can be l pattern[David Garlan and Mary Shaw, January 1994, CMU-CS-94-166, see "AnIntroduction to Software Architecture" tro softarch/intro softarch.pdf]
Integration Patterns We Discovered Browser (AJAX) Server-side Query Time Crawl Time Pre- or post- processing
Example Pattern: Crawl TimeData TierWatson Developer Cloud TierDataSourceWDC AppRESTWDCServiceEngineWatson Explorer Application TierLegendTierIBM Watson ComponentOther, non IBM componentIntegration Sample ComponentHTTPS
Pattern: Crawl TimePublic Cloud Pipe and FilterWDCService Integration in a FilterCrawledHTMLPumpNormalizedXMLPipeFilter nPipeWDCConverterPipeSinkOn-Prem EngineLegendPump / SinkFilterPipeCloudBoundaryIntegration Filter
Definition: Quality Attribute Benchmarks that describe a system’s intendedbehavior within the environment in which itwas built. Requirement that specifies criteria that can beused to judge the operation of a system, ratherthan specific behaviors.http://en.wikipedia.org/wiki/List of system quality /tabid/64/Default.aspx
Key Quality Attributes Data Protection and Security Scalability and Elasticity Maintainability Interoperability Performance Availability and Reliability
Personality Insights: Quality Attributes Concerns: Computationally expensive (Cost,Scalability, Performance) Twitter API calls are limited (Cost,Scalability, Reliability) Security, Privacy
Crawl Time Quality Attributes Concerns: Significant increase in crawl time(Performance) API Calls are limited(Cost, Scalability) API Call failure (Reliability)
BenefitsComplianceBurstingTransition Disaster Recovery Scaling Cost Optimization Geographic Optimization Cover Legacy System Gaps Innovation
CHALLENGES
It’s Difficult
Challenges New technologies, new set ofproblems Paradigm Shift Reliance on something you have nocontrol over It’s the Wild West
WRAP - UP
You will introducearchitecture complexitywhen moving to hybridcloud
Hybrid cloud allows you tohandle increasedworkloads but keep thesafety net of beingbehind the firewall
Hybrid cloudoffers organizationsa phased approach fortransition to the cloud
What? Sample code? ub.com/watson-developer-cloud
More Cloud Patterns http://www.cloudcomputingpatterns.org/ ographics/cloud-design-patterns/
References "An Introduction to Software Architecture" by David Garlan and Mary Shaw,January 1994, able/ftp/intro softarch/intro softarch.pdf] “Quality Attributes and Service-Oriented Architectures” by Bass, et al., September2005, CMU/SEI-2005-TN-014 http://www.sei.cmu.edu/reports/05tn014.pdf “State of the Art in Microservices” by Adrian Cockcroft, December kercon-state-of-the-art-inmicroservices Netflix: http://netflix.github.io/ Openstack: http://docs.openstack.org IBM Bluemix: http://bluemix.ibm.com http://www.cloudcomputingpatterns.org Microsoft Azure - Cloud Design Patterns aspx
Thank you!Will Chaparro@wmchaparro
Architecting Hybrid Cloud Solutions with Watson Developer Cloud Author: Will Chaparro (IBM Watson Group) Subject: This presentation describes hybrid cloud solutions created using IBM's Watson cognitive services, architectural patterns and codes, and pros and cons