SlideShare ist ein Scribd-Unternehmen logo
1 von 35
Quality Network Analysis
Quickly and Cheaply
Cytoscape Cyberinfrastructure
Chapter 2
ISMB/NetBioSIG 2016
Orlando, Florida
July 8, 2016
Keiichiro Ono, Eric Sage & Barry Demchak
Ideker Lab
1
Problems and Solutions
 Creating (Network Biology) Software is slow
and expensive
 We want
 Novel and reproducible workflows
 Mature standardized workflows
 Sharable networks, workflows, and results
 More memory, processors & storage
 Cytoscape Cyberinfrastructure (CI)
 Distributed microservice-based architecture
2
What I Hope to Convey Today
 How to build network biology workflows
• Using reusable components (*** God reuses code!)
• Computational
• Storage
• User interface
• Coordinate with Cytoscape, NDEx, and other
NB assets
 How to build reusable components
 Useful from Cytoscape and other programs
 The “reuse party” is worth coming to! 3
Imagine Your New Application
4Enriched Networks
Putative drivers
Where are we now?
 Python + Jupyter, R + RStudio, Matlab
 General functionality, agile, shareable code,
reproducible workflows
 Young analysis/viz, data silos, short jobs, no scaling
 Cytoscape / NDEx / cyREST / cytoscape.js
 Mature, extensible, shareable networks
 Non-agile, no scaling, non-reproducible
 Taverna / Galaxy
 Mature, reproducible workflows, big data
 Non-agile, data silos
 GenomeSpace, GenePattern … 5
Cytoscape CI Microservice Approach
Network Biology Services
6
Computation Storage
Workflow Visualization
Analysis
Layout
App Service
Message Bus (REST/Internet)
Return(yyy)
Calculate(xxx)
Calculate(xxx)
Return(yyy)
1 2 34
What is a Microservice?
App Service
Return(yyy)
Calculate(xxx)
Time
7
 Late Binding
 Scalability
 Reusability
 Language choice
Partial Workflow
8
Selection/
Enrichment
Application
Relevance
Service
NDEx Network
Database
Node List Query
Network List
Prioritized
Network List
Services in Action – Cytoscape as Service
Jupyter application calls Cytoscape/cyREST
as a service for visualizing networks
9
Send Network
Send Styles cyREST / Cytoscape
(Click here for video showing Jupyter creating network in Cytoscape)
Important Considerations
 How do I call or build a service?
 What (actually) is being exchanged?
 Where does the service run?
 What if your service becomes popular?
 How to do create a good service?
 What if your service is too slow?
 What if your service is buggy? 10
Anatomy of a Service Call
11
Send Network
Send Styles
cyREST /
Cytoscape
igraph
py2cytoscape
igraph2CX
model.impl
CX.impl
cyREST
cyREST1 / Internet
CX encode/decode
Local network model
App ServiceCI
1http://www.ncbi.nlm.nih.gov/pubmed/26672762
Making Your Service Real
1. Create function
 Python, R, Go, Java …
2. Add REST wrapper
 Eve, OpenCPU, GoRilla, Jersey…
3. Add client call using REST
12
Function
Data CX
REST
Function
Data CX
App
CX
REST
Function
Data CXData
REST
More later … Network + params
on server
Important Considerations
 How do I call or build a service?
 What (actually) is being exchanged?
 Where does the service run?
 What if your service becomes popular?
 What if your service is too slow?
 What if your service is buggy?
 How to do you test your service? 13
CX Transfer Format
1
3 2
Example Graph
4
5
nodes Aspect
edges Aspect
cartesianLayout Aspect
Aspect Relationships
Organizes
Positions
ID=1 ID=2 ID=3
nodes Aspect (3 nodes)
edges Aspect (2 edges)
Source Target Source TargetID=4 ID=5
cartesianLayout Aspect
X=100 Y=100ID X=200 Y=200ID X=100 Y=200ID
CX Encoding
14
X
X
Benefits
 Streamable (large networks)
 Lossless (BioPAX, SGML, OpenBEL…)
 Extensible (new aspects)
 Transfers only aspects of interest
 Community, community, community
A CX Snippet
[
{"nodes": [{"@id": "_:1"}, {"@id": "_:2"}]},
{"edges": [{"source": "_:1", "@id": "_:4", "target": "_:2"}]},
{"cartesianLayout": [{"x": "100", "node": "_:1", "y": "100"}]},
{"cartesianLayout": [{"x": "200", "node": "_:2", "y": "300"}]},
{"nodes": [{"@id": "_:3"}]},
{"edges": [{"source": "_:2", "@id": "_:5", "target": "_:3"}]},
{"cartesianLayout": [{"x": "100", "node": "_:3", "y": "200"}]}
]
15
Important Considerations
 How do I call or build a service?
 What (actually) is being exchanged?
 Where does the service run?
 What if your service becomes popular?
 How to do create a good service?
 What if your service is too slow?
 What if your service is buggy? 16
Deploying, Scaling, Speeding Up
17
App
CX Data
REST
REST
Function
Data CX
 Your Server
 Amazon
 NRNB Servers
Deploying, Scaling, Speeding Up
18
App
CX Data
REST
REST
Function
Data CX
 Your Server
 Amazon
 NRNB Servers
REST
Function
Data CX
REST
Function
Data CX
REST
Function
Data CX
Elsa
REST
Function
Data CX
…
 Other servers
Important Considerations
 How do I call or build a service?
 What (actually) is being exchanged?
 Where does the service run?
 What if your service becomes popular?
 How to do create a good service?
 What if your service is too slow?
 What if your service is buggy? 19
App Tests
CX Data
REST
App Tests
CX Data
RESTTests
CX Data
Development Model
20
Step 1: Step 2:
Step 3:
Function
Data CX
App Tests
CX Data
Function
Data CX
Function
Data CX
REST
Function
Data CX
REST
Elsa
Function
Data CX
REST
Step 4:
Important Considerations
 How do I call or build a service?
 What (actually) is being exchanged?
 Where does the service run?
 What if your service becomes popular?
 How to do create a good service?
 What if your service is too slow?
 What if your service is buggy? 21
CyComponents - Embeded UI Services
 Embeddable in Web apps and Cytoscape apps
 GUI front end to services
 Builds on
 Cytoscape.js network display library
 BioJS libraries
 Other widgets
 Based on Facebook’s React framework
 Simple to build
 Simple to incorporate into apps
22
Reusing CyComponents is Easy
23
 Can be used from Cytoscape app or Web app
function init(loginInfo) {
const cyto = CyFramework.config([NDExStore]);
cyto.render(NDExLogin, document.getElementById('valet'), {
defaults: loginInfo,
onSubmit: () => {
const state = cyto.getStore('ndex').server.toJS();
connect(state);}
});
}
CyComponents in Action
24
NDEx Valet CyComponent in NDEx web site
CyComponents in Action
NDEx web site calls NDEx database using
NDEx Valet CyComponent
25
Send Query
Return NetList
Get Network
Return Network
NDEX Valet is also a part of a Cytoscape app
that loads NDEx networks into Cytoscape
Services in Action – Cytoscape + NDEx
Cytoscape calls cyNDEx app to load network,
cyNDEX uses NDEx Valet to call NDEx
26
Send Query
Return NetList
Get Network
Return Network
Choose Networks
Send Networks
cyREST /
Cytoscape
(Click here for video showing NDEx Valet creating network in Cytoscape)
Publishing of the Future … as CI
27
Publishing of the Future … as CI
28
Cytoscape Cyberinfrastructure (CI)
30
Clustering
Cytoscape
NDEx
Layouts · R · Java ·
· Python ·
· Matlab ·
Science
Direct
Additional services:
• Heat Dissipation
• NDEx GUI Interface
• ID Translation
• Network viewers
… many more!
Services/apps interact
via Internet-based
messaging
Support
 National Resource for Network Biology (NRNB)
 Supports software and staging hardware
 Pharma & NCI support NDEx
 Elsevier
 All sources open and on GitHub
31
Call to Community
 App authorshipCytoscape community thrives
 Pride of authorship, listing in App Store
 Tangible realization of useful research
 Valuable workflows for all to use
 Publishable results (e.g., F1000)
 CI community inherits all of these! … but also:
 More direct path from algorithm to useful code
 Wider audience
 Easier coding & dissemination
 Better coding practices
 More resources
32
More Information
bdemchak@ucsd.edu
Reading List
 http://martinfowler.com/articles/microservices.html
 http://home.ndexbio.org/about-ndex-2
 http://idekerlab.github.io/cy-net-share
 Lincoln Stein. Towards a cyberinfrastructure for the biological
sciences: progress, visions and challenges.
http://www.nature.com/nrg/journal/v9/n9/full/nrg2414.html
 Barry Demchak, et al. PALMS: A Modern Coevolution of Community
and Computing Using Policy Driven Development.
https://sosa.ucsd.edu/ResearchCentral/view.jsp?id=203
 Stephen Goff, et al. The iPlant collaborative: cyberinfrastructure for
plant biology.
http://journal.frontiersin.org/article/10.3389/fpls.2011.00034/pdf
33
End of Deck
 Backup slides are beyond here
34
Existing Ecosystem
 Visual Workflow Systems
 Taverna & Galaxy – high level orchestration
 MyExperiment – sharing workflows
 Service Repositories
 BioCatalogue
 General programming languages & tools
 Python, R, Java, Matlab, IPython/Jupyter
 Network Analysis & Visualization
 Cytoscape & cytoscape.js
 GeneMANIA
 Cytoscape Cyberinfrastructure (?)
++ - - ++
++ - - ++
++
+ ++ + -
+ + ++ -
+ - +
++ ++ ++ ++
35
CX Timings
 Using Human network (18K nodes, 127K edges)
 CX output around 150MB
 Timings exclude accessing Cytoscape data
model – Cytoscape data model increases
timings by 2-4x
36
Aspect Read (ms) Write (ms)
Nodes 6 3
Edges 97 51
NodeAttrs 77 58
EdgeAttrs 1289 1077

Weitere ähnliche Inhalte

Was ist angesagt?

Bahrain ch9 introduction to docker 5th birthday
Bahrain ch9 introduction to docker 5th birthday Bahrain ch9 introduction to docker 5th birthday
Bahrain ch9 introduction to docker 5th birthday Walid Shaari
 
Using the Actor Model with Domain-Driven Design (DDD) in Reactive Systems - w...
Using the Actor Model with Domain-Driven Design (DDD) in Reactive Systems - w...Using the Actor Model with Domain-Driven Design (DDD) in Reactive Systems - w...
Using the Actor Model with Domain-Driven Design (DDD) in Reactive Systems - w...Lightbend
 
Cloud Native Middleware Microservices - 10 Lessons Learned
Cloud Native Middleware Microservices - 10 Lessons LearnedCloud Native Middleware Microservices - 10 Lessons Learned
Cloud Native Middleware Microservices - 10 Lessons LearnedKai Wähner
 
Paolo Kreth - Persistence layers for microservices – the converged database a...
Paolo Kreth - Persistence layers for microservices – the converged database a...Paolo Kreth - Persistence layers for microservices – the converged database a...
Paolo Kreth - Persistence layers for microservices – the converged database a...matteo mazzeri
 
microXchg 2018: "What is a Service Mesh? Do I Need One When Developing 'Cloud...
microXchg 2018: "What is a Service Mesh? Do I Need One When Developing 'Cloud...microXchg 2018: "What is a Service Mesh? Do I Need One When Developing 'Cloud...
microXchg 2018: "What is a Service Mesh? Do I Need One When Developing 'Cloud...Daniel Bryant
 
Kick starting Network Automation
Kick starting Network AutomationKick starting Network Automation
Kick starting Network AutomationWalid Shaari
 
How to Measure DevRel's Perfomances: From Community to Business - Channy Yun ...
How to Measure DevRel's Perfomances: From Community to Business - Channy Yun ...How to Measure DevRel's Perfomances: From Community to Business - Channy Yun ...
How to Measure DevRel's Perfomances: From Community to Business - Channy Yun ...Channy Yun
 
Serverless real use cases and best practices: Asavari Tayal, Microsoft, Serve...
Serverless real use cases and best practices: Asavari Tayal, Microsoft, Serve...Serverless real use cases and best practices: Asavari Tayal, Microsoft, Serve...
Serverless real use cases and best practices: Asavari Tayal, Microsoft, Serve...iguazio
 
Api more than payload (2021 Update)
Api more than payload (2021 Update)Api more than payload (2021 Update)
Api more than payload (2021 Update)Phil Wilkins
 
Faster deep learning solutions from training to inference - Amitai Armon & Ni...
Faster deep learning solutions from training to inference - Amitai Armon & Ni...Faster deep learning solutions from training to inference - Amitai Armon & Ni...
Faster deep learning solutions from training to inference - Amitai Armon & Ni...Codemotion Tel Aviv
 
Azure Digital Twins 2.0
Azure Digital Twins 2.0Azure Digital Twins 2.0
Azure Digital Twins 2.0Marco Parenzan
 
Andrea Ulisse - How to build a scalable serverless IoT architecture on GCP - ...
Andrea Ulisse - How to build a scalable serverless IoT architecture on GCP - ...Andrea Ulisse - How to build a scalable serverless IoT architecture on GCP - ...
Andrea Ulisse - How to build a scalable serverless IoT architecture on GCP - ...Codemotion
 
How to develop your first cloud-native Applications with Java
How to develop your first cloud-native Applications with JavaHow to develop your first cloud-native Applications with Java
How to develop your first cloud-native Applications with JavaNiklas Heidloff
 
Building serverless applications with Apache OpenWhisk and IBM Cloud Functions
Building serverless applications with Apache OpenWhisk and IBM Cloud FunctionsBuilding serverless applications with Apache OpenWhisk and IBM Cloud Functions
Building serverless applications with Apache OpenWhisk and IBM Cloud FunctionsDaniel Krook
 
Nagios Conference 2007
Nagios Conference 2007Nagios Conference 2007
Nagios Conference 2007nirvdrum
 
Defend against adversarial AI using Adversarial Robustness Toolbox
Defend against adversarial AI using Adversarial Robustness Toolbox Defend against adversarial AI using Adversarial Robustness Toolbox
Defend against adversarial AI using Adversarial Robustness Toolbox Animesh Singh
 
Enterprise Software Architecture styles
Enterprise Software Architecture stylesEnterprise Software Architecture styles
Enterprise Software Architecture stylesAraf Karsh Hamid
 
OpenDaylight app development tutorial
OpenDaylight app development tutorialOpenDaylight app development tutorial
OpenDaylight app development tutorialSDN Hub
 
Webinar: Cutting Time, Complexity and Cost from Data Science to Production
Webinar: Cutting Time, Complexity and Cost from Data Science to ProductionWebinar: Cutting Time, Complexity and Cost from Data Science to Production
Webinar: Cutting Time, Complexity and Cost from Data Science to Productioniguazio
 

Was ist angesagt? (20)

Bahrain ch9 introduction to docker 5th birthday
Bahrain ch9 introduction to docker 5th birthday Bahrain ch9 introduction to docker 5th birthday
Bahrain ch9 introduction to docker 5th birthday
 
Using the Actor Model with Domain-Driven Design (DDD) in Reactive Systems - w...
Using the Actor Model with Domain-Driven Design (DDD) in Reactive Systems - w...Using the Actor Model with Domain-Driven Design (DDD) in Reactive Systems - w...
Using the Actor Model with Domain-Driven Design (DDD) in Reactive Systems - w...
 
Cloud Native Middleware Microservices - 10 Lessons Learned
Cloud Native Middleware Microservices - 10 Lessons LearnedCloud Native Middleware Microservices - 10 Lessons Learned
Cloud Native Middleware Microservices - 10 Lessons Learned
 
Paolo Kreth - Persistence layers for microservices – the converged database a...
Paolo Kreth - Persistence layers for microservices – the converged database a...Paolo Kreth - Persistence layers for microservices – the converged database a...
Paolo Kreth - Persistence layers for microservices – the converged database a...
 
microXchg 2018: "What is a Service Mesh? Do I Need One When Developing 'Cloud...
microXchg 2018: "What is a Service Mesh? Do I Need One When Developing 'Cloud...microXchg 2018: "What is a Service Mesh? Do I Need One When Developing 'Cloud...
microXchg 2018: "What is a Service Mesh? Do I Need One When Developing 'Cloud...
 
Kick starting Network Automation
Kick starting Network AutomationKick starting Network Automation
Kick starting Network Automation
 
How to Measure DevRel's Perfomances: From Community to Business - Channy Yun ...
How to Measure DevRel's Perfomances: From Community to Business - Channy Yun ...How to Measure DevRel's Perfomances: From Community to Business - Channy Yun ...
How to Measure DevRel's Perfomances: From Community to Business - Channy Yun ...
 
Serverless real use cases and best practices: Asavari Tayal, Microsoft, Serve...
Serverless real use cases and best practices: Asavari Tayal, Microsoft, Serve...Serverless real use cases and best practices: Asavari Tayal, Microsoft, Serve...
Serverless real use cases and best practices: Asavari Tayal, Microsoft, Serve...
 
Api more than payload (2021 Update)
Api more than payload (2021 Update)Api more than payload (2021 Update)
Api more than payload (2021 Update)
 
Faster deep learning solutions from training to inference - Amitai Armon & Ni...
Faster deep learning solutions from training to inference - Amitai Armon & Ni...Faster deep learning solutions from training to inference - Amitai Armon & Ni...
Faster deep learning solutions from training to inference - Amitai Armon & Ni...
 
Azure Digital Twins 2.0
Azure Digital Twins 2.0Azure Digital Twins 2.0
Azure Digital Twins 2.0
 
Andrea Ulisse - How to build a scalable serverless IoT architecture on GCP - ...
Andrea Ulisse - How to build a scalable serverless IoT architecture on GCP - ...Andrea Ulisse - How to build a scalable serverless IoT architecture on GCP - ...
Andrea Ulisse - How to build a scalable serverless IoT architecture on GCP - ...
 
How to develop your first cloud-native Applications with Java
How to develop your first cloud-native Applications with JavaHow to develop your first cloud-native Applications with Java
How to develop your first cloud-native Applications with Java
 
Building serverless applications with Apache OpenWhisk and IBM Cloud Functions
Building serverless applications with Apache OpenWhisk and IBM Cloud FunctionsBuilding serverless applications with Apache OpenWhisk and IBM Cloud Functions
Building serverless applications with Apache OpenWhisk and IBM Cloud Functions
 
Nagios Conference 2007
Nagios Conference 2007Nagios Conference 2007
Nagios Conference 2007
 
Defend against adversarial AI using Adversarial Robustness Toolbox
Defend against adversarial AI using Adversarial Robustness Toolbox Defend against adversarial AI using Adversarial Robustness Toolbox
Defend against adversarial AI using Adversarial Robustness Toolbox
 
Enterprise Software Architecture styles
Enterprise Software Architecture stylesEnterprise Software Architecture styles
Enterprise Software Architecture styles
 
OpenDaylight app development tutorial
OpenDaylight app development tutorialOpenDaylight app development tutorial
OpenDaylight app development tutorial
 
Netflix - 40 msec
Netflix - 40 msecNetflix - 40 msec
Netflix - 40 msec
 
Webinar: Cutting Time, Complexity and Cost from Data Science to Production
Webinar: Cutting Time, Complexity and Cost from Data Science to ProductionWebinar: Cutting Time, Complexity and Cost from Data Science to Production
Webinar: Cutting Time, Complexity and Cost from Data Science to Production
 

Andere mochten auch

Feira de Conhecimento / Plásticos
Feira de Conhecimento / Plásticos Feira de Conhecimento / Plásticos
Feira de Conhecimento / Plásticos karinecosf
 
Evaluation q2
Evaluation q2Evaluation q2
Evaluation q2charrrlll
 
Búsqueda de información en google
Búsqueda de información en googleBúsqueda de información en google
Búsqueda de información en googleDavid Chavez
 
PUBLICAR UN DOCUMENTO EN SCRIBD Y AGREGARLO A TU BLOG
PUBLICAR UN DOCUMENTO EN SCRIBD Y AGREGARLO A TU BLOGPUBLICAR UN DOCUMENTO EN SCRIBD Y AGREGARLO A TU BLOG
PUBLICAR UN DOCUMENTO EN SCRIBD Y AGREGARLO A TU BLOGdbamiranda9
 
Article 507 EPN April 08
Article 507 EPN April 08Article 507 EPN April 08
Article 507 EPN April 08Parviz Parto
 
Screen shots for contents
Screen shots for contentsScreen shots for contents
Screen shots for contentscharrrlll
 
семьеведенье
семьеведеньесемьеведенье
семьеведеньеSvetik11
 
Bahasa Malaysia Tahun 3 PAT kssr2016
Bahasa Malaysia Tahun 3 PAT kssr2016Bahasa Malaysia Tahun 3 PAT kssr2016
Bahasa Malaysia Tahun 3 PAT kssr2016murni mohamat
 
Kertas soalan pendidikan moral t2
Kertas soalan pendidikan moral t2Kertas soalan pendidikan moral t2
Kertas soalan pendidikan moral t2Lela Taip
 

Andere mochten auch (12)

Patrimonio Cultural de America 2
Patrimonio Cultural de America 2Patrimonio Cultural de America 2
Patrimonio Cultural de America 2
 
Feira de Conhecimento / Plásticos
Feira de Conhecimento / Plásticos Feira de Conhecimento / Plásticos
Feira de Conhecimento / Plásticos
 
Evaluation q2
Evaluation q2Evaluation q2
Evaluation q2
 
Mosaico n.02 legge 128
Mosaico n.02 legge 128Mosaico n.02 legge 128
Mosaico n.02 legge 128
 
Búsqueda de información en google
Búsqueda de información en googleBúsqueda de información en google
Búsqueda de información en google
 
PUBLICAR UN DOCUMENTO EN SCRIBD Y AGREGARLO A TU BLOG
PUBLICAR UN DOCUMENTO EN SCRIBD Y AGREGARLO A TU BLOGPUBLICAR UN DOCUMENTO EN SCRIBD Y AGREGARLO A TU BLOG
PUBLICAR UN DOCUMENTO EN SCRIBD Y AGREGARLO A TU BLOG
 
Article 507 EPN April 08
Article 507 EPN April 08Article 507 EPN April 08
Article 507 EPN April 08
 
Mundo fantastico
Mundo fantasticoMundo fantastico
Mundo fantastico
 
Screen shots for contents
Screen shots for contentsScreen shots for contents
Screen shots for contents
 
семьеведенье
семьеведеньесемьеведенье
семьеведенье
 
Bahasa Malaysia Tahun 3 PAT kssr2016
Bahasa Malaysia Tahun 3 PAT kssr2016Bahasa Malaysia Tahun 3 PAT kssr2016
Bahasa Malaysia Tahun 3 PAT kssr2016
 
Kertas soalan pendidikan moral t2
Kertas soalan pendidikan moral t2Kertas soalan pendidikan moral t2
Kertas soalan pendidikan moral t2
 

Ähnlich wie Cytoscape CI Chapter 2

What's New in Cytoscape
What's New in CytoscapeWhat's New in Cytoscape
What's New in CytoscapeKeiichiro Ono
 
SoC Keynote:The State of the Art in Integration Technology
SoC Keynote:The State of the Art in Integration TechnologySoC Keynote:The State of the Art in Integration Technology
SoC Keynote:The State of the Art in Integration TechnologySrinath Perera
 
Cytoscape ci chapter 1
Cytoscape ci chapter 1Cytoscape ci chapter 1
Cytoscape ci chapter 1bdemchak
 
Aw (3) webinar serverless-fisher-rymer
Aw (3) webinar serverless-fisher-rymerAw (3) webinar serverless-fisher-rymer
Aw (3) webinar serverless-fisher-rymerVMware Tanzu
 
Cytoscape: Now and Future
Cytoscape: Now and FutureCytoscape: Now and Future
Cytoscape: Now and FutureKeiichiro Ono
 
SDCSB CYTOSCAPE AND NETWORK ANALYSIS WORKSHOP at Sanford Consortium
SDCSB CYTOSCAPE AND NETWORK ANALYSIS WORKSHOP at Sanford ConsortiumSDCSB CYTOSCAPE AND NETWORK ANALYSIS WORKSHOP at Sanford Consortium
SDCSB CYTOSCAPE AND NETWORK ANALYSIS WORKSHOP at Sanford ConsortiumKeiichiro Ono
 
Microservices Architecture - Cloud Native Apps
Microservices Architecture - Cloud Native AppsMicroservices Architecture - Cloud Native Apps
Microservices Architecture - Cloud Native AppsAraf Karsh Hamid
 
Rethinking enterprise architecture for DevOps, Agile, and cloud native organi...
Rethinking enterprise architecture for DevOps, Agile, and cloud native organi...Rethinking enterprise architecture for DevOps, Agile, and cloud native organi...
Rethinking enterprise architecture for DevOps, Agile, and cloud native organi...Michael Coté
 
How APIs are Transforming Cisco Solutions and Catalyzing an Innovation Ecosystem
How APIs are Transforming Cisco Solutions and Catalyzing an Innovation EcosystemHow APIs are Transforming Cisco Solutions and Catalyzing an Innovation Ecosystem
How APIs are Transforming Cisco Solutions and Catalyzing an Innovation EcosystemCisco DevNet
 
Do You Need A Service Mesh?
Do You Need A Service Mesh?Do You Need A Service Mesh?
Do You Need A Service Mesh?NGINX, Inc.
 
Microservices, Node, Dapr and more - Part One (Fontys Hogeschool, Spring 2022)
Microservices, Node, Dapr and more - Part One (Fontys Hogeschool, Spring 2022)Microservices, Node, Dapr and more - Part One (Fontys Hogeschool, Spring 2022)
Microservices, Node, Dapr and more - Part One (Fontys Hogeschool, Spring 2022)Lucas Jellema
 
2016 - 10 questions you should answer before building a new microservice
2016 - 10 questions you should answer before building a new microservice2016 - 10 questions you should answer before building a new microservice
2016 - 10 questions you should answer before building a new microservicedevopsdaysaustin
 
CNCF Introduction - Feb 2018
CNCF Introduction - Feb 2018CNCF Introduction - Feb 2018
CNCF Introduction - Feb 2018Krishna-Kumar
 
DevOps LA Meetup Intro to Habitat
DevOps LA Meetup Intro to HabitatDevOps LA Meetup Intro to Habitat
DevOps LA Meetup Intro to HabitatJessica DeVita
 
Microservices Architecture, Monolith Migration Patterns
Microservices Architecture, Monolith Migration PatternsMicroservices Architecture, Monolith Migration Patterns
Microservices Architecture, Monolith Migration PatternsAraf Karsh Hamid
 
Enabling application portability with the greatest of ease!
Enabling application portability with the greatest of ease!Enabling application portability with the greatest of ease!
Enabling application portability with the greatest of ease!Ken Owens
 
Spring and Pivotal Application Service - SpringOne Tour - Boston
Spring and Pivotal Application Service - SpringOne Tour - BostonSpring and Pivotal Application Service - SpringOne Tour - Boston
Spring and Pivotal Application Service - SpringOne Tour - BostonVMware Tanzu
 
The Architecture Of Software Defined Radios Essay
The Architecture Of Software Defined Radios EssayThe Architecture Of Software Defined Radios Essay
The Architecture Of Software Defined Radios EssayDivya Watson
 

Ähnlich wie Cytoscape CI Chapter 2 (20)

What's New in Cytoscape
What's New in CytoscapeWhat's New in Cytoscape
What's New in Cytoscape
 
SoC Keynote:The State of the Art in Integration Technology
SoC Keynote:The State of the Art in Integration TechnologySoC Keynote:The State of the Art in Integration Technology
SoC Keynote:The State of the Art in Integration Technology
 
Cytoscape ci chapter 1
Cytoscape ci chapter 1Cytoscape ci chapter 1
Cytoscape ci chapter 1
 
Aw (3) webinar serverless-fisher-rymer
Aw (3) webinar serverless-fisher-rymerAw (3) webinar serverless-fisher-rymer
Aw (3) webinar serverless-fisher-rymer
 
Cytoscape: Now and Future
Cytoscape: Now and FutureCytoscape: Now and Future
Cytoscape: Now and Future
 
SDCSB CYTOSCAPE AND NETWORK ANALYSIS WORKSHOP at Sanford Consortium
SDCSB CYTOSCAPE AND NETWORK ANALYSIS WORKSHOP at Sanford ConsortiumSDCSB CYTOSCAPE AND NETWORK ANALYSIS WORKSHOP at Sanford Consortium
SDCSB CYTOSCAPE AND NETWORK ANALYSIS WORKSHOP at Sanford Consortium
 
Microservices Architecture - Cloud Native Apps
Microservices Architecture - Cloud Native AppsMicroservices Architecture - Cloud Native Apps
Microservices Architecture - Cloud Native Apps
 
Rethinking enterprise architecture for DevOps, Agile, and cloud native organi...
Rethinking enterprise architecture for DevOps, Agile, and cloud native organi...Rethinking enterprise architecture for DevOps, Agile, and cloud native organi...
Rethinking enterprise architecture for DevOps, Agile, and cloud native organi...
 
Microservices Corporate Style
Microservices Corporate StyleMicroservices Corporate Style
Microservices Corporate Style
 
How APIs are Transforming Cisco Solutions and Catalyzing an Innovation Ecosystem
How APIs are Transforming Cisco Solutions and Catalyzing an Innovation EcosystemHow APIs are Transforming Cisco Solutions and Catalyzing an Innovation Ecosystem
How APIs are Transforming Cisco Solutions and Catalyzing an Innovation Ecosystem
 
Do You Need A Service Mesh?
Do You Need A Service Mesh?Do You Need A Service Mesh?
Do You Need A Service Mesh?
 
AF-2599-P.docx
AF-2599-P.docxAF-2599-P.docx
AF-2599-P.docx
 
Microservices, Node, Dapr and more - Part One (Fontys Hogeschool, Spring 2022)
Microservices, Node, Dapr and more - Part One (Fontys Hogeschool, Spring 2022)Microservices, Node, Dapr and more - Part One (Fontys Hogeschool, Spring 2022)
Microservices, Node, Dapr and more - Part One (Fontys Hogeschool, Spring 2022)
 
2016 - 10 questions you should answer before building a new microservice
2016 - 10 questions you should answer before building a new microservice2016 - 10 questions you should answer before building a new microservice
2016 - 10 questions you should answer before building a new microservice
 
CNCF Introduction - Feb 2018
CNCF Introduction - Feb 2018CNCF Introduction - Feb 2018
CNCF Introduction - Feb 2018
 
DevOps LA Meetup Intro to Habitat
DevOps LA Meetup Intro to HabitatDevOps LA Meetup Intro to Habitat
DevOps LA Meetup Intro to Habitat
 
Microservices Architecture, Monolith Migration Patterns
Microservices Architecture, Monolith Migration PatternsMicroservices Architecture, Monolith Migration Patterns
Microservices Architecture, Monolith Migration Patterns
 
Enabling application portability with the greatest of ease!
Enabling application portability with the greatest of ease!Enabling application portability with the greatest of ease!
Enabling application portability with the greatest of ease!
 
Spring and Pivotal Application Service - SpringOne Tour - Boston
Spring and Pivotal Application Service - SpringOne Tour - BostonSpring and Pivotal Application Service - SpringOne Tour - Boston
Spring and Pivotal Application Service - SpringOne Tour - Boston
 
The Architecture Of Software Defined Radios Essay
The Architecture Of Software Defined Radios EssayThe Architecture Of Software Defined Radios Essay
The Architecture Of Software Defined Radios Essay
 

Mehr von bdemchak

Cytoscape Network Visualization and Analysis
Cytoscape Network Visualization and AnalysisCytoscape Network Visualization and Analysis
Cytoscape Network Visualization and Analysisbdemchak
 
The New CyREST: Economical Delivery of Complex, Reproducible Network Biology ...
The New CyREST: Economical Delivery of Complex, Reproducible Network Biology ...The New CyREST: Economical Delivery of Complex, Reproducible Network Biology ...
The New CyREST: Economical Delivery of Complex, Reproducible Network Biology ...bdemchak
 
Cytoscape Cyberinfrastructure
Cytoscape CyberinfrastructureCytoscape Cyberinfrastructure
Cytoscape Cyberinfrastructurebdemchak
 
No More Silos! Cytoscape CI Enables Interoperability
No More Silos! Cytoscape CI Enables InteroperabilityNo More Silos! Cytoscape CI Enables Interoperability
No More Silos! Cytoscape CI Enables Interoperabilitybdemchak
 
Composable Chat Introduction
Composable Chat IntroductionComposable Chat Introduction
Composable Chat Introductionbdemchak
 
Rich Services: Composable chat
Rich Services: Composable chatRich Services: Composable chat
Rich Services: Composable chatbdemchak
 
Ucsd tum workshop bd
Ucsd tum workshop bdUcsd tum workshop bd
Ucsd tum workshop bdbdemchak
 
Rich Feeds for RESCUE and PALMS
Rich Feeds for RESCUE and PALMSRich Feeds for RESCUE and PALMS
Rich Feeds for RESCUE and PALMSbdemchak
 
Iscram 2008 presentation
Iscram 2008 presentationIscram 2008 presentation
Iscram 2008 presentationbdemchak
 
Rich feeds policy, the cloud, and CAP
Rich feeds   policy, the cloud, and CAPRich feeds   policy, the cloud, and CAP
Rich feeds policy, the cloud, and CAPbdemchak
 
Rich services to the Rescue
Rich services to the RescueRich services to the Rescue
Rich services to the Rescuebdemchak
 
Hicss 2012 presentation
Hicss 2012 presentationHicss 2012 presentation
Hicss 2012 presentationbdemchak
 
Policy 2012 presentation
Policy 2012 presentationPolicy 2012 presentation
Policy 2012 presentationbdemchak
 
Rich feeds for rescue an integration story
Rich feeds for rescue   an integration storyRich feeds for rescue   an integration story
Rich feeds for rescue an integration storybdemchak
 
Background scenario drivers and critical issues with a focus on technology ...
Background   scenario drivers and critical issues with a focus on technology ...Background   scenario drivers and critical issues with a focus on technology ...
Background scenario drivers and critical issues with a focus on technology ...bdemchak
 
Rich feeds for rescue, palms cyberinfrastructure integration stories
Rich feeds for rescue, palms cyberinfrastructure   integration storiesRich feeds for rescue, palms cyberinfrastructure   integration stories
Rich feeds for rescue, palms cyberinfrastructure integration storiesbdemchak
 
Data quality and uncertainty visualization
Data quality and uncertainty visualizationData quality and uncertainty visualization
Data quality and uncertainty visualizationbdemchak
 
Web programming in clojure
Web programming in clojureWeb programming in clojure
Web programming in clojurebdemchak
 
Structure and interpretation of computer programs modularity, objects, and ...
Structure and interpretation of computer programs   modularity, objects, and ...Structure and interpretation of computer programs   modularity, objects, and ...
Structure and interpretation of computer programs modularity, objects, and ...bdemchak
 
Requirements engineering from system goals to uml models to software specif...
Requirements engineering   from system goals to uml models to software specif...Requirements engineering   from system goals to uml models to software specif...
Requirements engineering from system goals to uml models to software specif...bdemchak
 

Mehr von bdemchak (20)

Cytoscape Network Visualization and Analysis
Cytoscape Network Visualization and AnalysisCytoscape Network Visualization and Analysis
Cytoscape Network Visualization and Analysis
 
The New CyREST: Economical Delivery of Complex, Reproducible Network Biology ...
The New CyREST: Economical Delivery of Complex, Reproducible Network Biology ...The New CyREST: Economical Delivery of Complex, Reproducible Network Biology ...
The New CyREST: Economical Delivery of Complex, Reproducible Network Biology ...
 
Cytoscape Cyberinfrastructure
Cytoscape CyberinfrastructureCytoscape Cyberinfrastructure
Cytoscape Cyberinfrastructure
 
No More Silos! Cytoscape CI Enables Interoperability
No More Silos! Cytoscape CI Enables InteroperabilityNo More Silos! Cytoscape CI Enables Interoperability
No More Silos! Cytoscape CI Enables Interoperability
 
Composable Chat Introduction
Composable Chat IntroductionComposable Chat Introduction
Composable Chat Introduction
 
Rich Services: Composable chat
Rich Services: Composable chatRich Services: Composable chat
Rich Services: Composable chat
 
Ucsd tum workshop bd
Ucsd tum workshop bdUcsd tum workshop bd
Ucsd tum workshop bd
 
Rich Feeds for RESCUE and PALMS
Rich Feeds for RESCUE and PALMSRich Feeds for RESCUE and PALMS
Rich Feeds for RESCUE and PALMS
 
Iscram 2008 presentation
Iscram 2008 presentationIscram 2008 presentation
Iscram 2008 presentation
 
Rich feeds policy, the cloud, and CAP
Rich feeds   policy, the cloud, and CAPRich feeds   policy, the cloud, and CAP
Rich feeds policy, the cloud, and CAP
 
Rich services to the Rescue
Rich services to the RescueRich services to the Rescue
Rich services to the Rescue
 
Hicss 2012 presentation
Hicss 2012 presentationHicss 2012 presentation
Hicss 2012 presentation
 
Policy 2012 presentation
Policy 2012 presentationPolicy 2012 presentation
Policy 2012 presentation
 
Rich feeds for rescue an integration story
Rich feeds for rescue   an integration storyRich feeds for rescue   an integration story
Rich feeds for rescue an integration story
 
Background scenario drivers and critical issues with a focus on technology ...
Background   scenario drivers and critical issues with a focus on technology ...Background   scenario drivers and critical issues with a focus on technology ...
Background scenario drivers and critical issues with a focus on technology ...
 
Rich feeds for rescue, palms cyberinfrastructure integration stories
Rich feeds for rescue, palms cyberinfrastructure   integration storiesRich feeds for rescue, palms cyberinfrastructure   integration stories
Rich feeds for rescue, palms cyberinfrastructure integration stories
 
Data quality and uncertainty visualization
Data quality and uncertainty visualizationData quality and uncertainty visualization
Data quality and uncertainty visualization
 
Web programming in clojure
Web programming in clojureWeb programming in clojure
Web programming in clojure
 
Structure and interpretation of computer programs modularity, objects, and ...
Structure and interpretation of computer programs   modularity, objects, and ...Structure and interpretation of computer programs   modularity, objects, and ...
Structure and interpretation of computer programs modularity, objects, and ...
 
Requirements engineering from system goals to uml models to software specif...
Requirements engineering   from system goals to uml models to software specif...Requirements engineering   from system goals to uml models to software specif...
Requirements engineering from system goals to uml models to software specif...
 

Kürzlich hochgeladen

CYTOGENETIC MAP................ ppt.pptx
CYTOGENETIC MAP................ ppt.pptxCYTOGENETIC MAP................ ppt.pptx
CYTOGENETIC MAP................ ppt.pptxSilpa
 
Cyanide resistant respiration pathway.pptx
Cyanide resistant respiration pathway.pptxCyanide resistant respiration pathway.pptx
Cyanide resistant respiration pathway.pptxSilpa
 
Human genetics..........................pptx
Human genetics..........................pptxHuman genetics..........................pptx
Human genetics..........................pptxSilpa
 
GBSN - Biochemistry (Unit 2) Basic concept of organic chemistry
GBSN - Biochemistry (Unit 2) Basic concept of organic chemistry GBSN - Biochemistry (Unit 2) Basic concept of organic chemistry
GBSN - Biochemistry (Unit 2) Basic concept of organic chemistry Areesha Ahmad
 
TransientOffsetin14CAftertheCarringtonEventRecordedbyPolarTreeRings
TransientOffsetin14CAftertheCarringtonEventRecordedbyPolarTreeRingsTransientOffsetin14CAftertheCarringtonEventRecordedbyPolarTreeRings
TransientOffsetin14CAftertheCarringtonEventRecordedbyPolarTreeRingsSérgio Sacani
 
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 bAsymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 bSérgio Sacani
 
Genome sequencing,shotgun sequencing.pptx
Genome sequencing,shotgun sequencing.pptxGenome sequencing,shotgun sequencing.pptx
Genome sequencing,shotgun sequencing.pptxSilpa
 
Zoology 5th semester notes( Sumit_yadav).pdf
Zoology 5th semester notes( Sumit_yadav).pdfZoology 5th semester notes( Sumit_yadav).pdf
Zoology 5th semester notes( Sumit_yadav).pdfSumit Kumar yadav
 
Reboulia: features, anatomy, morphology etc.
Reboulia: features, anatomy, morphology etc.Reboulia: features, anatomy, morphology etc.
Reboulia: features, anatomy, morphology etc.Silpa
 
FAIRSpectra - Enabling the FAIRification of Spectroscopy and Spectrometry
FAIRSpectra - Enabling the FAIRification of Spectroscopy and SpectrometryFAIRSpectra - Enabling the FAIRification of Spectroscopy and Spectrometry
FAIRSpectra - Enabling the FAIRification of Spectroscopy and SpectrometryAlex Henderson
 
Climate Change Impacts on Terrestrial and Aquatic Ecosystems.pptx
Climate Change Impacts on Terrestrial and Aquatic Ecosystems.pptxClimate Change Impacts on Terrestrial and Aquatic Ecosystems.pptx
Climate Change Impacts on Terrestrial and Aquatic Ecosystems.pptxDiariAli
 
Chemistry 5th semester paper 1st Notes.pdf
Chemistry 5th semester paper 1st Notes.pdfChemistry 5th semester paper 1st Notes.pdf
Chemistry 5th semester paper 1st Notes.pdfSumit Kumar yadav
 
Porella : features, morphology, anatomy, reproduction etc.
Porella : features, morphology, anatomy, reproduction etc.Porella : features, morphology, anatomy, reproduction etc.
Porella : features, morphology, anatomy, reproduction etc.Silpa
 
Module for Grade 9 for Asynchronous/Distance learning
Module for Grade 9 for Asynchronous/Distance learningModule for Grade 9 for Asynchronous/Distance learning
Module for Grade 9 for Asynchronous/Distance learninglevieagacer
 
module for grade 9 for distance learning
module for grade 9 for distance learningmodule for grade 9 for distance learning
module for grade 9 for distance learninglevieagacer
 
Dr. E. Muralinath_ Blood indices_clinical aspects
Dr. E. Muralinath_ Blood indices_clinical  aspectsDr. E. Muralinath_ Blood indices_clinical  aspects
Dr. E. Muralinath_ Blood indices_clinical aspectsmuralinath2
 
Molecular markers- RFLP, RAPD, AFLP, SNP etc.
Molecular markers- RFLP, RAPD, AFLP, SNP etc.Molecular markers- RFLP, RAPD, AFLP, SNP etc.
Molecular markers- RFLP, RAPD, AFLP, SNP etc.Silpa
 
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune Waterworlds
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune WaterworldsBiogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune Waterworlds
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune WaterworldsSérgio Sacani
 
The Mariana Trench remarkable geological features on Earth.pptx
The Mariana Trench remarkable geological features on Earth.pptxThe Mariana Trench remarkable geological features on Earth.pptx
The Mariana Trench remarkable geological features on Earth.pptxseri bangash
 
biology HL practice questions IB BIOLOGY
biology HL practice questions IB BIOLOGYbiology HL practice questions IB BIOLOGY
biology HL practice questions IB BIOLOGY1301aanya
 

Kürzlich hochgeladen (20)

CYTOGENETIC MAP................ ppt.pptx
CYTOGENETIC MAP................ ppt.pptxCYTOGENETIC MAP................ ppt.pptx
CYTOGENETIC MAP................ ppt.pptx
 
Cyanide resistant respiration pathway.pptx
Cyanide resistant respiration pathway.pptxCyanide resistant respiration pathway.pptx
Cyanide resistant respiration pathway.pptx
 
Human genetics..........................pptx
Human genetics..........................pptxHuman genetics..........................pptx
Human genetics..........................pptx
 
GBSN - Biochemistry (Unit 2) Basic concept of organic chemistry
GBSN - Biochemistry (Unit 2) Basic concept of organic chemistry GBSN - Biochemistry (Unit 2) Basic concept of organic chemistry
GBSN - Biochemistry (Unit 2) Basic concept of organic chemistry
 
TransientOffsetin14CAftertheCarringtonEventRecordedbyPolarTreeRings
TransientOffsetin14CAftertheCarringtonEventRecordedbyPolarTreeRingsTransientOffsetin14CAftertheCarringtonEventRecordedbyPolarTreeRings
TransientOffsetin14CAftertheCarringtonEventRecordedbyPolarTreeRings
 
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 bAsymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
Asymmetry in the atmosphere of the ultra-hot Jupiter WASP-76 b
 
Genome sequencing,shotgun sequencing.pptx
Genome sequencing,shotgun sequencing.pptxGenome sequencing,shotgun sequencing.pptx
Genome sequencing,shotgun sequencing.pptx
 
Zoology 5th semester notes( Sumit_yadav).pdf
Zoology 5th semester notes( Sumit_yadav).pdfZoology 5th semester notes( Sumit_yadav).pdf
Zoology 5th semester notes( Sumit_yadav).pdf
 
Reboulia: features, anatomy, morphology etc.
Reboulia: features, anatomy, morphology etc.Reboulia: features, anatomy, morphology etc.
Reboulia: features, anatomy, morphology etc.
 
FAIRSpectra - Enabling the FAIRification of Spectroscopy and Spectrometry
FAIRSpectra - Enabling the FAIRification of Spectroscopy and SpectrometryFAIRSpectra - Enabling the FAIRification of Spectroscopy and Spectrometry
FAIRSpectra - Enabling the FAIRification of Spectroscopy and Spectrometry
 
Climate Change Impacts on Terrestrial and Aquatic Ecosystems.pptx
Climate Change Impacts on Terrestrial and Aquatic Ecosystems.pptxClimate Change Impacts on Terrestrial and Aquatic Ecosystems.pptx
Climate Change Impacts on Terrestrial and Aquatic Ecosystems.pptx
 
Chemistry 5th semester paper 1st Notes.pdf
Chemistry 5th semester paper 1st Notes.pdfChemistry 5th semester paper 1st Notes.pdf
Chemistry 5th semester paper 1st Notes.pdf
 
Porella : features, morphology, anatomy, reproduction etc.
Porella : features, morphology, anatomy, reproduction etc.Porella : features, morphology, anatomy, reproduction etc.
Porella : features, morphology, anatomy, reproduction etc.
 
Module for Grade 9 for Asynchronous/Distance learning
Module for Grade 9 for Asynchronous/Distance learningModule for Grade 9 for Asynchronous/Distance learning
Module for Grade 9 for Asynchronous/Distance learning
 
module for grade 9 for distance learning
module for grade 9 for distance learningmodule for grade 9 for distance learning
module for grade 9 for distance learning
 
Dr. E. Muralinath_ Blood indices_clinical aspects
Dr. E. Muralinath_ Blood indices_clinical  aspectsDr. E. Muralinath_ Blood indices_clinical  aspects
Dr. E. Muralinath_ Blood indices_clinical aspects
 
Molecular markers- RFLP, RAPD, AFLP, SNP etc.
Molecular markers- RFLP, RAPD, AFLP, SNP etc.Molecular markers- RFLP, RAPD, AFLP, SNP etc.
Molecular markers- RFLP, RAPD, AFLP, SNP etc.
 
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune Waterworlds
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune WaterworldsBiogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune Waterworlds
Biogenic Sulfur Gases as Biosignatures on Temperate Sub-Neptune Waterworlds
 
The Mariana Trench remarkable geological features on Earth.pptx
The Mariana Trench remarkable geological features on Earth.pptxThe Mariana Trench remarkable geological features on Earth.pptx
The Mariana Trench remarkable geological features on Earth.pptx
 
biology HL practice questions IB BIOLOGY
biology HL practice questions IB BIOLOGYbiology HL practice questions IB BIOLOGY
biology HL practice questions IB BIOLOGY
 

Cytoscape CI Chapter 2

  • 1. Quality Network Analysis Quickly and Cheaply Cytoscape Cyberinfrastructure Chapter 2 ISMB/NetBioSIG 2016 Orlando, Florida July 8, 2016 Keiichiro Ono, Eric Sage & Barry Demchak Ideker Lab 1
  • 2. Problems and Solutions  Creating (Network Biology) Software is slow and expensive  We want  Novel and reproducible workflows  Mature standardized workflows  Sharable networks, workflows, and results  More memory, processors & storage  Cytoscape Cyberinfrastructure (CI)  Distributed microservice-based architecture 2
  • 3. What I Hope to Convey Today  How to build network biology workflows • Using reusable components (*** God reuses code!) • Computational • Storage • User interface • Coordinate with Cytoscape, NDEx, and other NB assets  How to build reusable components  Useful from Cytoscape and other programs  The “reuse party” is worth coming to! 3
  • 4. Imagine Your New Application 4Enriched Networks Putative drivers
  • 5. Where are we now?  Python + Jupyter, R + RStudio, Matlab  General functionality, agile, shareable code, reproducible workflows  Young analysis/viz, data silos, short jobs, no scaling  Cytoscape / NDEx / cyREST / cytoscape.js  Mature, extensible, shareable networks  Non-agile, no scaling, non-reproducible  Taverna / Galaxy  Mature, reproducible workflows, big data  Non-agile, data silos  GenomeSpace, GenePattern … 5
  • 6. Cytoscape CI Microservice Approach Network Biology Services 6 Computation Storage Workflow Visualization Analysis Layout
  • 7. App Service Message Bus (REST/Internet) Return(yyy) Calculate(xxx) Calculate(xxx) Return(yyy) 1 2 34 What is a Microservice? App Service Return(yyy) Calculate(xxx) Time 7  Late Binding  Scalability  Reusability  Language choice
  • 9. Services in Action – Cytoscape as Service Jupyter application calls Cytoscape/cyREST as a service for visualizing networks 9 Send Network Send Styles cyREST / Cytoscape (Click here for video showing Jupyter creating network in Cytoscape)
  • 10. Important Considerations  How do I call or build a service?  What (actually) is being exchanged?  Where does the service run?  What if your service becomes popular?  How to do create a good service?  What if your service is too slow?  What if your service is buggy? 10
  • 11. Anatomy of a Service Call 11 Send Network Send Styles cyREST / Cytoscape igraph py2cytoscape igraph2CX model.impl CX.impl cyREST cyREST1 / Internet CX encode/decode Local network model App ServiceCI 1http://www.ncbi.nlm.nih.gov/pubmed/26672762
  • 12. Making Your Service Real 1. Create function  Python, R, Go, Java … 2. Add REST wrapper  Eve, OpenCPU, GoRilla, Jersey… 3. Add client call using REST 12 Function Data CX REST Function Data CX App CX REST Function Data CXData REST More later … Network + params on server
  • 13. Important Considerations  How do I call or build a service?  What (actually) is being exchanged?  Where does the service run?  What if your service becomes popular?  What if your service is too slow?  What if your service is buggy?  How to do you test your service? 13
  • 14. CX Transfer Format 1 3 2 Example Graph 4 5 nodes Aspect edges Aspect cartesianLayout Aspect Aspect Relationships Organizes Positions ID=1 ID=2 ID=3 nodes Aspect (3 nodes) edges Aspect (2 edges) Source Target Source TargetID=4 ID=5 cartesianLayout Aspect X=100 Y=100ID X=200 Y=200ID X=100 Y=200ID CX Encoding 14 X X Benefits  Streamable (large networks)  Lossless (BioPAX, SGML, OpenBEL…)  Extensible (new aspects)  Transfers only aspects of interest  Community, community, community
  • 15. A CX Snippet [ {"nodes": [{"@id": "_:1"}, {"@id": "_:2"}]}, {"edges": [{"source": "_:1", "@id": "_:4", "target": "_:2"}]}, {"cartesianLayout": [{"x": "100", "node": "_:1", "y": "100"}]}, {"cartesianLayout": [{"x": "200", "node": "_:2", "y": "300"}]}, {"nodes": [{"@id": "_:3"}]}, {"edges": [{"source": "_:2", "@id": "_:5", "target": "_:3"}]}, {"cartesianLayout": [{"x": "100", "node": "_:3", "y": "200"}]} ] 15
  • 16. Important Considerations  How do I call or build a service?  What (actually) is being exchanged?  Where does the service run?  What if your service becomes popular?  How to do create a good service?  What if your service is too slow?  What if your service is buggy? 16
  • 17. Deploying, Scaling, Speeding Up 17 App CX Data REST REST Function Data CX  Your Server  Amazon  NRNB Servers
  • 18. Deploying, Scaling, Speeding Up 18 App CX Data REST REST Function Data CX  Your Server  Amazon  NRNB Servers REST Function Data CX REST Function Data CX REST Function Data CX Elsa REST Function Data CX …  Other servers
  • 19. Important Considerations  How do I call or build a service?  What (actually) is being exchanged?  Where does the service run?  What if your service becomes popular?  How to do create a good service?  What if your service is too slow?  What if your service is buggy? 19
  • 20. App Tests CX Data REST App Tests CX Data RESTTests CX Data Development Model 20 Step 1: Step 2: Step 3: Function Data CX App Tests CX Data Function Data CX Function Data CX REST Function Data CX REST Elsa Function Data CX REST Step 4:
  • 21. Important Considerations  How do I call or build a service?  What (actually) is being exchanged?  Where does the service run?  What if your service becomes popular?  How to do create a good service?  What if your service is too slow?  What if your service is buggy? 21
  • 22. CyComponents - Embeded UI Services  Embeddable in Web apps and Cytoscape apps  GUI front end to services  Builds on  Cytoscape.js network display library  BioJS libraries  Other widgets  Based on Facebook’s React framework  Simple to build  Simple to incorporate into apps 22
  • 23. Reusing CyComponents is Easy 23  Can be used from Cytoscape app or Web app function init(loginInfo) { const cyto = CyFramework.config([NDExStore]); cyto.render(NDExLogin, document.getElementById('valet'), { defaults: loginInfo, onSubmit: () => { const state = cyto.getStore('ndex').server.toJS(); connect(state);} }); }
  • 24. CyComponents in Action 24 NDEx Valet CyComponent in NDEx web site
  • 25. CyComponents in Action NDEx web site calls NDEx database using NDEx Valet CyComponent 25 Send Query Return NetList Get Network Return Network NDEX Valet is also a part of a Cytoscape app that loads NDEx networks into Cytoscape
  • 26. Services in Action – Cytoscape + NDEx Cytoscape calls cyNDEx app to load network, cyNDEX uses NDEx Valet to call NDEx 26 Send Query Return NetList Get Network Return Network Choose Networks Send Networks cyREST / Cytoscape (Click here for video showing NDEx Valet creating network in Cytoscape)
  • 27. Publishing of the Future … as CI 27
  • 28. Publishing of the Future … as CI 28
  • 29. Cytoscape Cyberinfrastructure (CI) 30 Clustering Cytoscape NDEx Layouts · R · Java · · Python · · Matlab · Science Direct Additional services: • Heat Dissipation • NDEx GUI Interface • ID Translation • Network viewers … many more! Services/apps interact via Internet-based messaging
  • 30. Support  National Resource for Network Biology (NRNB)  Supports software and staging hardware  Pharma & NCI support NDEx  Elsevier  All sources open and on GitHub 31
  • 31. Call to Community  App authorshipCytoscape community thrives  Pride of authorship, listing in App Store  Tangible realization of useful research  Valuable workflows for all to use  Publishable results (e.g., F1000)  CI community inherits all of these! … but also:  More direct path from algorithm to useful code  Wider audience  Easier coding & dissemination  Better coding practices  More resources 32 More Information bdemchak@ucsd.edu
  • 32. Reading List  http://martinfowler.com/articles/microservices.html  http://home.ndexbio.org/about-ndex-2  http://idekerlab.github.io/cy-net-share  Lincoln Stein. Towards a cyberinfrastructure for the biological sciences: progress, visions and challenges. http://www.nature.com/nrg/journal/v9/n9/full/nrg2414.html  Barry Demchak, et al. PALMS: A Modern Coevolution of Community and Computing Using Policy Driven Development. https://sosa.ucsd.edu/ResearchCentral/view.jsp?id=203  Stephen Goff, et al. The iPlant collaborative: cyberinfrastructure for plant biology. http://journal.frontiersin.org/article/10.3389/fpls.2011.00034/pdf 33
  • 33. End of Deck  Backup slides are beyond here 34
  • 34. Existing Ecosystem  Visual Workflow Systems  Taverna & Galaxy – high level orchestration  MyExperiment – sharing workflows  Service Repositories  BioCatalogue  General programming languages & tools  Python, R, Java, Matlab, IPython/Jupyter  Network Analysis & Visualization  Cytoscape & cytoscape.js  GeneMANIA  Cytoscape Cyberinfrastructure (?) ++ - - ++ ++ - - ++ ++ + ++ + - + + ++ - + - + ++ ++ ++ ++ 35
  • 35. CX Timings  Using Human network (18K nodes, 127K edges)  CX output around 150MB  Timings exclude accessing Cytoscape data model – Cytoscape data model increases timings by 2-4x 36 Aspect Read (ms) Write (ms) Nodes 6 3 Edges 97 51 NodeAttrs 77 58 EdgeAttrs 1289 1077