visualization as a service · gateway data-center (e.g teamcenter) get/head on url soa/rest vaas...

19
Visualization as a Service Johannes Behr, Fraunhofer IGD

Upload: others

Post on 21-Sep-2020

12 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Visualization as a Service · Gateway Data-Center (e.g TeamCenter) get/head on URL SOA/REST VaaS Infrastructure App CRUD on URI. ... • Flexible Service Integration • Single resource

Visualization as a ServiceJohannes Behr, Fraunhofer IGD

Page 2: Visualization as a Service · Gateway Data-Center (e.g TeamCenter) get/head on URL SOA/REST VaaS Infrastructure App CRUD on URI. ... • Flexible Service Integration • Single resource

Ziel

ARVIDA-ArchitekturkonzepteARVIDA-Architekturkonzepte

ARVIDA-DiensteARVIDA-Dienste

© Volkswagen 2015 ARVIDA-Architektenteam: DFKI, FHG-IAO, FHG-IGD, KIT, TUM 1

Daten-Transcoding

Daten-TranscodingTrackingTrackingRenderingRendering NavigationNavigation InteraktionInteraktion

DatenbankenDatenbanken GenerischesMenschmodellGenerisches

Menschmodell AnimationenAnimationenSimulationenSimulationenMultiagentenMultiagenten

RESTfulRESTful

VT-AnwendungenVT-Anwendungen

StandardisierteRückgabe-

werte

StandardisierteRückgabe-

werte

RDF-Vokabulare

RDF-Vokabulare

EinheitlichesDienst-

verhalten

EinheitlichesDienst-

verhalten

Komposition,DataFu EngineKomposition,

DataFu EngineLinked DataPrinzipien

Linked DataPrinzipien

Page 3: Visualization as a Service · Gateway Data-Center (e.g TeamCenter) get/head on URL SOA/REST VaaS Infrastructure App CRUD on URI. ... • Flexible Service Integration • Single resource

Ziel

ARVIDA-ArchitekturkonzepteARVIDA-Architekturkonzepte

ARVIDA-DiensteARVIDA-Dienste

© Volkswagen 2015 ARVIDA-Architektenteam: DFKI, FHG-IAO, FHG-IGD, KIT, TUM 2

Daten-Transcoding

Daten-TranscodingTrackingTrackingRenderingRendering NavigationNavigation InteraktionInteraktion

DatenbankenDatenbanken GenerischesMenschmodellGenerisches

Menschmodell AnimationenAnimationenSimulationenSimulationenMultiagentenMultiagenten

RESTfulRESTful

VT-AnwendungenVT-Anwendungen

StandardisierteRückgabe-

werte

StandardisierteRückgabe-

werte

RDF-Vokabulare

RDF-Vokabulare

EinheitlichesDienst-

verhalten

EinheitlichesDienst-

verhalten

Komposition,DataFu EngineKomposition,

DataFu EngineLinked DataPrinzipien

Linked DataPrinzipien

Page 4: Visualization as a Service · Gateway Data-Center (e.g TeamCenter) get/head on URL SOA/REST VaaS Infrastructure App CRUD on URI. ... • Flexible Service Integration • Single resource

Ziel: Dienste-basierte Rendering-Lösung für interaktive VE-Anwendung

Page 5: Visualization as a Service · Gateway Data-Center (e.g TeamCenter) get/head on URL SOA/REST VaaS Infrastructure App CRUD on URI. ... • Flexible Service Integration • Single resource

• From Local to Remote DataFrom local files to distributed resource networks

• From Large to Massive Data ModelsIncreased rate of product individualization and 3D scanner capabilities

• From Static to Varying Data ElementsSingle Data container to part hierarchy with variable update rates

• From Fat-Clients to “Any Device“ and Web-ClientsClient-Hardware characteristics must be less critical for system performance

• From Single-File to Hybrid/Multi-ResourcesShape/Sample mixtures in multiple data sources

• From manual import/export to automated machine-to-machine pipelinesAllows dynamic content negotiation and adaptive processing

• From Low to High-Security RequirementsRemote Data access and distributed rendering needs to be secured

Visualization-Trends und ARVIDA: “Service as Chance“

Page 6: Visualization as a Service · Gateway Data-Center (e.g TeamCenter) get/head on URL SOA/REST VaaS Infrastructure App CRUD on URI. ... • Flexible Service Integration • Single resource

1. VR/AR Generation: Local Data and Local Rendering

VR/AR

Application

Display

Display

Display

3D Data

Page 7: Visualization as a Service · Gateway Data-Center (e.g TeamCenter) get/head on URL SOA/REST VaaS Infrastructure App CRUD on URI. ... • Flexible Service Integration • Single resource

2. VR/AR Generation: Single Data Source with manual update process

VR/AR

Application

Display

Display

Display

3D Data

Data Provider (e.g. PLM)

3D Data

Network

Page 8: Visualization as a Service · Gateway Data-Center (e.g TeamCenter) get/head on URL SOA/REST VaaS Infrastructure App CRUD on URI. ... • Flexible Service Integration • Single resource

Data Provider

3. VR/AR Generation: Multiple network data providers

VR/AR

Application

Display

Display

Display

3D Data

Network

Data Provider

3D Data

Data Provider

3D Data

Page 9: Visualization as a Service · Gateway Data-Center (e.g TeamCenter) get/head on URL SOA/REST VaaS Infrastructure App CRUD on URI. ... • Flexible Service Integration • Single resource

Data Provider

4. VR/AR Generation: Services for client/server and hybrid rendering

VR/AR

Application

Display

Display

Display

3D Data

Network

Data Provider

3D Data

Data Provider

3D Data

ARVIDA

Render Service

Client/Server/HybridRendering

Page 10: Visualization as a Service · Gateway Data-Center (e.g TeamCenter) get/head on URL SOA/REST VaaS Infrastructure App CRUD on URI. ... • Flexible Service Integration • Single resource

Resource Provider

5. VR/AR Generation: Spatial Index Cache and Resource Observer

VR/AR

Application

Display

Display

Display

3D Data

Network

Resource Provider

3D Data

Resource Provider

3D Data

ARVIDA

Architecture

SpatialIndexCache

Client/Server/HybridRendering

Page 11: Visualization as a Service · Gateway Data-Center (e.g TeamCenter) get/head on URL SOA/REST VaaS Infrastructure App CRUD on URI. ... • Flexible Service Integration • Single resource

Linked “3D Resource” Network• Linked Resource Network (HATEOAS)

• RDF• Link in domain container

• Domain specific container and relation• PDM: Structure/Assembly to Part (e.g. step242/plmxml->jt->jt )• WEB: Scene Graph Link (e.g. X3D->X3B->X3V->X3D )• GEO: Geo coordinate System to Region (e.g. KLM->KLM->DAE->DAE)• BIM: Building to section (e.g. IFC->IFC->step203)• PoTree: Point Octree (e.g. cell->cell->cell)

R1R1R2R2

R3R3R4R4

R5R5 R6R6

Page 12: Visualization as a Service · Gateway Data-Center (e.g TeamCenter) get/head on URL SOA/REST VaaS Infrastructure App CRUD on URI. ... • Flexible Service Integration • Single resource

Linked “3D Resource” Network• Pros

• Open Structure• Simple traversal for rendering

• Cons• Traversal needs to transmit, parse and understand the container• Links have no spatial property (e.g. volume)• Links have no complexity information (e.g. data quantifier)

• => Render costs are not predictable

• Solution• => Use ARVIDA Service to build Spatial Index Cache for decreased render costs

R1R1R2R2

R3R3R4R4

R5R5 R6R6

Page 13: Visualization as a Service · Gateway Data-Center (e.g TeamCenter) get/head on URL SOA/REST VaaS Infrastructure App CRUD on URI. ... • Flexible Service Integration • Single resource

Linked Resources Requirements for Visualization in ARVIDA• Identifiable

Data should be identifiable without location

• AddressableData must be addressable with service location

• DereferenceableResource retrieval mechanism with know container or self-describing

• AuthorizeableResource access should be authorized with trusted secure mechanism

• MonitorableDynamic resources and versioning should be supported

Page 14: Visualization as a Service · Gateway Data-Center (e.g TeamCenter) get/head on URL SOA/REST VaaS Infrastructure App CRUD on URI. ... • Flexible Service Integration • Single resource

Solution: Simple and decoupled resource pattern with http(s) (1,1.1,2),• Identifiable

URI (URN or URL), URN Resolver in ARVIDA Data Transcoder

• AddressableURL on http(s) resources.

• DereferenceableGET on URL, http content negotiation and RDF, 202/not-yet

• AuthorizeableGET/HEAD with SSO Token handover (e.g. SM) and Basic Auth (RFC2617)

• MonitorableGET/HEAD with http “etag” for change detection

Page 15: Visualization as a Service · Gateway Data-Center (e.g TeamCenter) get/head on URL SOA/REST VaaS Infrastructure App CRUD on URI. ... • Flexible Service Integration • Single resource

Solution: Simple and decoupled data-center interface Minimal interface to pull/monitor data from any Data-Center Based on standard http/https techniques and best practice subset High performance (minimal content parsing, maximal standard reuse) Standard Web-Server should be able to provide sufficient functionality Provide single interface to all persistent and dynamic resources

webVisHUB

URI to URL

get on URIDC -

GatewayData-Center

(e.g TeamCenter)

get/head on URL SOA/REST

VaaS Infrastructure

App

CRUD on URI

Page 16: Visualization as a Service · Gateway Data-Center (e.g TeamCenter) get/head on URL SOA/REST VaaS Infrastructure App CRUD on URI. ... • Flexible Service Integration • Single resource

Data-Center Gateway classification

Request Data(GET)

Request Property(HEAD)

★★★★★ HTTP-2 push updates HTTP-2 push updates

★★★★☆ HTTP-1.1. pipeline HTTP-1.1 pipeline

★★★☆☆ Provide etag, Cache-Control Validate etag

★★☆☆☆ Provide WWW-Authenticate Validate SSO,401 on fail

★☆☆☆☆ 200 (OK), 401 (Unauthorized),404

No Hander, No WWW-Authenticate data

Page 17: Visualization as a Service · Gateway Data-Center (e.g TeamCenter) get/head on URL SOA/REST VaaS Infrastructure App CRUD on URI. ... • Flexible Service Integration • Single resource

ContainerContainer

Service ContractsService Contracts

ContainerContainer

Issue: Container specific Scene Structure (e.g. X3D, JT)

InputData

Transport &Cache

RuntimeAPI

Rendering

X3D Runtime X3D, X3DVX3DB, (SRC)

X3D, X3DVX3DB, (SRC)

X3D SAI Web-Plugin,Fat-Client

X3DOM X3D, X3Dj,SRC

X3D, X3Dj,SRC

X3D, DOM WebGL, Flash,(SAI-Plugin)

webVis/instant3Dhub

X3D, X3DB,RVM, JT, …

Linked 3D Data(HSI + SRC)

CRUD on datarelation

Client, serverand hybrid

Domainto 3D

Domainto 3D

3D toVis

3D toVis

Vis toPixelVis toPixel

X3DX3D

VaaSVaaS

Page 18: Visualization as a Service · Gateway Data-Center (e.g TeamCenter) get/head on URL SOA/REST VaaS Infrastructure App CRUD on URI. ... • Flexible Service Integration • Single resource

Solution: Consistent ARVIDA “Scene-Graph“ vocabulary

Page 19: Visualization as a Service · Gateway Data-Center (e.g TeamCenter) get/head on URL SOA/REST VaaS Infrastructure App CRUD on URI. ... • Flexible Service Integration • Single resource

Result: Consistent Visualization as a Service (VaaS) solution

• Client Interface for Pixel Generator• Web/Java/Native application• Render-pipeline driven service orchestration• Local and remote components

• Flexible Service Integration• Single resource driven interface• Interchangeable Service component• Service-Based orchestration for

complex use-cases

Web-Applicationwith WebVIS

Generic Information Service

SAP

PDM

ISSUESystem

SupplierGate

GenericText, Image,PDF, Video,Information

3D Canvasfor CAx

Data

PDM

http/https/

PDM-API

Arvida VaaSDiskor

MemoryCache

TranscoderService PIXI