ARCHITECTING HYBRID CLOUD SOLUTIONS WITH THE WATSON DEVELOPER CLOUD - - PowerPoint PPT Presentation

architecting hybrid cloud solutions with the watson
SMART_READER_LITE
LIVE PREVIEW

ARCHITECTING HYBRID CLOUD SOLUTIONS WITH THE WATSON DEVELOPER CLOUD - - PowerPoint PPT Presentation

ARCHITECTING HYBRID CLOUD SOLUTIONS WITH THE WATSON DEVELOPER CLOUD A Lesson in Innovation Will Chaparro IBM @wmchaparro You are here Client Tier (Client Machine) Watson Developer Cloud Tier Users Browser WDC App Public Cloud REST


slide-1
SLIDE 1

ARCHITECTING HYBRID CLOUD SOLUTIONS WITH THE WATSON DEVELOPER CLOUD

Will Chaparro IBM @wmchaparro A Lesson in Innovation

slide-2
SLIDE 2
slide-3
SLIDE 3

You are here

slide-4
SLIDE 4

Proxy User’s Browser WDC App

Legend

WDC Service Application Builder

Watson Developer Cloud Tier Client Tier (Client Machine) Watson Explorer Application Tier (WebSphere) REST Ajax REST

Tier Other, non IBM component Integration Sample Component IBM Watson Component HTTPS

On Premise Public Cloud

slide-5
SLIDE 5

REVIEW

Some definitions…

slide-6
SLIDE 6

Definition: Cloud Computing

Essentials:

  • On demand self service
  • Broad network Access
  • Resource Pooling
  • Rapid Elasticity
  • Measured Service
slide-7
SLIDE 7

Cloud Deployment Models

  • Private Cloud
  • Community Cloud
  • Public Cloud
  • Hybrid Cloud
slide-8
SLIDE 8

Cloud Service Models

  • Software as a Service

(SaaS)

  • Google Apps for Business
  • Microsoft Office 365
  • Infrastructure as a Service

(IaaS)

  • Amazon AWS
  • Platform as a Service

(PaaS)

  • Google App Engine
  • Heroku
  • Windows Azure Cloud Services
  • Amazon AWS
  • IBM Bluemix
slide-9
SLIDE 9

Anyone remember timeshares?

slide-10
SLIDE 10

Definition: Hybrid Cloud

  • Hybrid Cloud means that the design spans more

than one cloud.

  • Openstack.org
  • The connection of one or more clouds to on-

premise systems and/or the connection of one or more clouds to other clouds

  • IBM
slide-11
SLIDE 11

WHY Hybrid Cloud?

slide-12
SLIDE 12

Compliance

Public Cloud Private Cloud

Not sensitive Sensitive

Hybrid Cloud

slide-13
SLIDE 13

Bursting

Public Cloud Private Cloud Hybrid Cloud

slide-14
SLIDE 14

Transition to Public Cloud

Existing App Public Cloud Hybrid Cloud

slide-15
SLIDE 15

Why Hybrid Cloud?

  • Disaster Recovery
  • Scaling
  • Cost Optimization
  • Geographic Optimization
  • Cover Legacy System Gaps

and…

slide-16
SLIDE 16

INNOVATION

Paves the way to a cloud solution

slide-17
SLIDE 17

INNOVATION

Watson Developer Cloud

slide-18
SLIDE 18

Watson

slide-19
SLIDE 19
slide-20
SLIDE 20

We needed to innovate…

  • Quickly
  • With minimal investment
  • Without a PhD in machine learning
  • With a reliable technology…
slide-21
SLIDE 21

We used a Hybrid Cloud solution

slide-22
SLIDE 22
slide-23
SLIDE 23

What is the Watson Developer Cloud?

  • A collection of REST APIs and SDKs hosted on IBM

Bluemix that use cognitive computing to solve complex problems.

  • Let the developers build the next generation of cognitive

enhanced applications.

slide-24
SLIDE 24

What is IBM Bluemix?

  • IBM Bluemix is the IBM open cloud platform that provides

mobile and web developers access to IBM software for integration, security, transaction, and other key functions, as well as software from business partners.

  • PaaS
  • Similar offerings
  • Microsoft Azure Cloud Services
  • Amazon AWS
  • Heroku
slide-25
SLIDE 25

Watson Developer Cloud Services

  • Personality Insights
  • Question and Answer
  • Machine Translation
  • Message Resonance
  • Relationship Extraction
  • Concept Expansion
slide-26
SLIDE 26

Our approach

  • Play to your Strengths
  • Focus on the User
  • Experiment and Learn
  • Collaborate
  • Keep grounded in sound practices
slide-27
SLIDE 27

EXAMPLE

On Prem + Public Cloud

slide-28
SLIDE 28

Personality Insights

Description: REST API uses linguistic analytics to infer cognitive and social characteristics based on text information created by individuals or groups. Search Application Uses: Psychographic segmentation, Customer portraits combined with a 360 degree view of a customer Quality Attributes: Security, Scalability, Performance, Privacy, Cost

slide-29
SLIDE 29

Integration Architecture

Proxy User’s Browser WDC App

Legend

WDC Service Application Builder

Watson Developer Cloud Tier Client Tier (Client Machine) Watson Explorer Application Tier (WebSphere) REST Ajax REST

Tier Other, non IBM component Integration Sample Component IBM Watson Component HTTPS

On Premise Public Cloud

slide-30
SLIDE 30
slide-31
SLIDE 31
slide-32
SLIDE 32

What did we learn?

  • Patterns
  • Quality Attributes
  • Benefits
  • Challenges
slide-33
SLIDE 33

Definition: Architectural Pattern

  • An architectural pattern is a general, reusable solution to

a commonly occurring problem in software architecture within a given context.

  • An architectural style (that) determines the vocabulary of

components and connectors that can be used in instances of that style, together with a set of constraints

  • n how they can be combined.

http://en.wikipedia.org/wiki/Architectural_pattern [David Garlan and Mary Shaw, January 1994, CMU-CS-94-166, see "An Introduction to Software Architecture" at http://www.cs.cmu.edu/afs/cs/project/able/ftp/intro_softarch/intro_softarch.pdf]

slide-34
SLIDE 34

Integration Patterns We Discovered

  • Browser (AJAX)
  • Server-side
  • Query Time
  • Crawl Time
  • Pre- or post- processing
slide-35
SLIDE 35

Example Pattern: Crawl Time

WDC App

Legend

WDC Service Engine

Watson Developer Cloud Tier Watson Explorer Application Tier REST

Tier Other, non IBM component Integration Sample Component IBM Watson Component HTTPS

Data Source

Data Tier

slide-36
SLIDE 36

Pattern: Crawl Time

  • Pipe and Filter
  • Integration in a Filter

Legend Pump / Sink Pipe Integration Filter Filter

Crawled HTML Normalized XML Pipe Pipe Pipe Pump Filter n WDC Converter Sink WDC Service

Cloud Boundary

On-Prem Engine Public Cloud

slide-37
SLIDE 37

Definition: Quality Attribute

  • Benchmarks that describe a system’s intended

behavior within the environment in which it was built.

  • Requirement that specifies criteria that can be

used to judge the operation of a system, rather than specific behaviors.

http://en.wikipedia.org/wiki/List_of_system_quality_attributes http://www.softwarearchitectures.com/go/Discipline/DesigningArchitecture/QualityAttribu tes/tabid/64/Default.aspx

slide-38
SLIDE 38

Key Quality Attributes

  • Data Protection and Security
  • Scalability and Elasticity
  • Maintainability
  • Interoperability
  • Performance
  • Availability and Reliability
slide-39
SLIDE 39

Personality Insights: Quality Attributes

  • Concerns:
  • Computationally expensive (Cost,

Scalability, Performance)

  • Twitter API calls are limited (Cost,

Scalability, Reliability)

  • Security, Privacy
slide-40
SLIDE 40

Crawl Time Quality Attributes

  • Concerns:
  • Significant increase in crawl time

(Performance)

  • API Calls are limited

(Cost, Scalability)

  • API Call failure (Reliability)
slide-41
SLIDE 41

Benefits

  • Disaster Recovery
  • Scaling
  • Cost Optimization
  • Geographic Optimization
  • Cover Legacy System Gaps
  • Innovation

Bursting Compliance Transition

slide-42
SLIDE 42

CHALLENGES

slide-43
SLIDE 43
slide-44
SLIDE 44

It’s Difficult

slide-45
SLIDE 45

Challenges

  • New technologies, new set of

problems

  • Paradigm Shift
  • Reliance on something you have no

control over

  • It’s the Wild West
slide-46
SLIDE 46
slide-47
SLIDE 47

WRAP - UP

slide-48
SLIDE 48

You will introduce

architecture complexity when moving to hybrid cloud

slide-49
SLIDE 49

Hybrid cloud allows you to handle increased workloads but keep the safety net of being behind the firewall

slide-50
SLIDE 50

Hybrid cloud

  • ffers organizations

a phased approach for transition to the cloud

slide-51
SLIDE 51

What? Sample code? Yes!

https://github.com/Watson-Explorer https://github.com/watson-developer-cloud

slide-52
SLIDE 52

More Cloud Patterns…

  • http://www.cloudcomputingpatterns.org/
  • http://azure.microsoft.com/en-

us/documentation/infographics/cloud-design-patterns/

slide-53
SLIDE 53

References

  • "An Introduction to Software Architecture" by David Garlan and Mary Shaw,

January 1994, CMU-CS-94-166 http://www.cs.cmu.edu/afs/cs/project/able/ftp/intro_softarch/intro_softarch.pdf]

  • “Quality Attributes and Service-Oriented Architectures” by Bass, et al., September

2005, CMU/SEI-2005-TN-014 http://www.sei.cmu.edu/reports/05tn014.pdf

  • “State of the Art in Microservices” by Adrian Cockcroft, December 2014,

http://www.slideshare.net/adriancockcroft/dockercon-state-of-the-art-in- microservices

  • 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 https://msdn.microsoft.com/en-

us/library/dn568099.aspx

slide-54
SLIDE 54

Thank you!

Will Chaparro @wmchaparro