28
LoCloud Conference - Sharing local cultural heritage online with LoCloud services Microservices in LoCloud Walter Koch ([email protected]) Gerda Koch ([email protected]) AIT- Angewandte Informationstechnik Forschungs-GmbH, Graz - Austria LoCloud is funded by the European Commission's ICT Policy Support Programme

Microservices in LoCloud

  • Upload
    locloud

  • View
    304

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Microservices in LoCloud

LoCloud Conference - Sharing local cultural heritage online with LoCloud servicesMicroservices in LoCloudWalter Koch ([email protected])Gerda Koch ([email protected])

AIT- Angewandte InformationstechnikForschungs-GmbH, Graz - Austria

LoCloud is funded by the European Commission's ICT Policy Support Programme

Page 2: Microservices in LoCloud

G.&W.Koch: Microservices in LoCloud 2

Content

• Project Context• LoCloud Microservices• Vocabulary Microservices

– Technical Insights (examples)

• Microservices and Modern System Architectures– Deployment– Marketplace

Amersfoort, 2016-02-05

Page 3: Microservices in LoCloud

G.&W.Koch: Microservices in LoCloud 3

Project Context

– LoCloud is a Best Practice Network co-funded under the CIP ICT-PSP programme of the European Commission.

– LoCloud is supporting small and medium-sized institutions in making their content and metadata available to Europeana.

– A cloud-based technology infrastructure will enable the aggregation of local content, and

– a number of microservices will help to reduce technical, semantic and skills barriers and to render the content more discoverable and interoperable.

Amersfoort, 2016-02-05

Page 4: Microservices in LoCloud

G.&W.Koch: Microservices in LoCloud 4

Project Context

Six development teams: AIT, Athena RC, AVINET, IPCHS, UPV/EHU, VUKFC

All the services are implemented on virtual machines in a cloud testlab (using the OpenNebula cloud computing platform)

API documentation is available for each service

End-user interfaces are provided for three microservicesEach service has been integrated in MORe

Amersfoort, 2016-02-05

Page 5: Microservices in LoCloud

G.&W.Koch: Microservices in LoCloud 5

LoCloud Microservices

http://support.locloud.eu/

Cloud-based microservices for metadata enrichment and capture: •Geo-location API•Vocabulary service•Historic Place Names service•Geo-coding application

• Vocabulary matching service • Background linking service• Wikimedia application

Amersfoort, 2016-02-05

Page 6: Microservices in LoCloud

G.&W.Koch: Microservices in LoCloud 6

LoCloud MicroservicesLoGeo API

• Uses NER-Name Entity Recognition• Recognizes and returns one or more place names

candidates accompanied by geographical coordinates.

GPLIPCHSAmersfoort, 2016-02-05

Page 7: Microservices in LoCloud

G.&W.Koch: Microservices in LoCloud 7

LoCloud MicroservicesVocabulary service

• Based on “TemaTres”• Incorporates 29 standard

thesauri • allows users to add and

create vocabularies, and add terms or translations

• add thesauri terms to all items of a metadata package

• Integrated in MORE• Exploited by the LoCloud

vocabulary matching microservice via its API

GPLAITAmersfoort, 2016-02-05

Page 8: Microservices in LoCloud

G.&W.Koch: Microservices in LoCloud 8

LoCloud MicroservicesHistoric Place Names service

• A semi-automatic historical geo-information management function and web service.

• Enables local cultural institutions to collaborate in developing the Thesaurus of HPN and enriching ingested metadata.

• Enables export of selected LoCloud HPN Thesaurus data sets.

GPLVUKFAmersfoort, 2016-02-05

Page 9: Microservices in LoCloud

G.&W.Koch: Microservices in LoCloud 9

LoCloud MicroservicesGeo-coding application

• End-user oriented application• allows institutions to add geographical locations to existing content in

a controlled crowd-sourcing environment and then • load the augmented data back into their original production

databases.

GPLAVINETAmersfoort, 2016-02-05

Page 10: Microservices in LoCloud

G.&W.Koch: Microservices in LoCloud 10

LoCloud MicroservicesVocabulary matching service

• Builds on work in the PATHS project (FP7)• Automatically assigns relevant concepts and terms to item

records • Retrieves terms from the Vocabulary serviceUPV/EHU Apache License 2.0Amersfoort, 2016-02-05

Page 11: Microservices in LoCloud

G.&W.Koch: Microservices in LoCloud 11

LoCloud MicroservicesBackground linking service

• Based on work in PATHS• Follows the Named Entity

Disambiguation approach• Enriches items with links to

external contextual information in DBpedia and Wikipedia

Apache License 2.0UPV/EHUAmersfoort, 2016-02-05

Page 12: Microservices in LoCloud

G.&W.Koch: Microservices in LoCloud 12

LoCloud MicroservicesWikimedia application

• A web service that uses a REST interface to communicate with Wikimedia commons

• The main functionalities are harvesting content form Wikimedia, parsing the harvested content, and identifying useful entities that can be mapped to the ESE or EDM metadata schemas.

• The mapped ESE / EDM records are then sent to MORe to be delivered to Europeana.

Wikimedia Commons LicensingAthena RCAmersfoort, 2016-02-05

Page 13: Microservices in LoCloud

Vocabulary Microservices

G.&W.Koch: Microservices in LoCloud 13Amersfoort, 2016-02-05

Page 14: Microservices in LoCloud

G.&W.Koch: Microservices in LoCloud 14

http://vocabulary.locloud.eu/

Vocabulary Microservices

•LoCloud uses a variety of standard vocabularies during the metadata enrichment process.These vocabularies have been established with the TemaTres tool and are available in the LoCloud testlab.•In addition, you can add your own vocabularies, establish new vocabularies or add languages to existing vocabularies.

Amersfoort, 2016-02-05

Page 15: Microservices in LoCloud

Technical Insights

• Vocabulary WebService; 20+ Functions, REST-APIhttp://test113.ait.co.at/tematres/vocab/services.php

• REST-API-Example: Search; UNESCO-Thesaurushttp://test113.ait.co.at/tematres/unesco/services.php?task=search&arg=peace

• SPARQL-Example; DISMARC-Genreshttp://test113.ait.co.at/tematres/vocab/sparql.php (SPARQL Endpoint)

• Service Call („fetchTopTerms“); embedded in a test application ( „Vocabulary Microservice“)

• Test Application Development; Designer View• The Test Application; Part of Data Entry

http://dmdap.ait.co.at/index.php/vocabulary-test/

Amersfoort, 2016-02-05 G.&W.Koch: Microservices in LoCloud 15

SELECT ?term WHERE { ?concept skos:prefLabel "Acid Jazz" .?concept skos:broader ?broader . ?broader skos:prefLabel ?term . }

Page 16: Microservices in LoCloud

G.&W.Koch: Microservices in LoCloud 16

Vocabulary WebService20+ Functions, REST-API

Parameters

Example

Amersfoort, 2016-02-05

Page 17: Microservices in LoCloud

G.&W.Koch: Microservices in LoCloud 17

REST-API-Example: SearchUNESCO-Thesaurus

http://test113.ait.co.at/tematres/unesco/services.php?task=search&arg=peace

Amersfoort, 2016-02-05

Page 18: Microservices in LoCloud

G.&W.Koch: Microservices in LoCloud 18

SPARQL-ExampleDISMARC-Genres

• Query: "Find all Broader Terms for ‚Acid Jazz‘ “• SPARQL End Point: http://test113.ait.co.at/tematres/vocab/sparql.php

Query

Result„Art“

ThesaurusEntry

Amersfoort, 2016-02-05

PREFIX skos: <http://www.w3.org/2004/02/skos/core#> SELECT ?term WHERE { ?concept skos:prefLabel "Acid Jazz" .?concept skos:broader ?broader . ?broader skos:prefLabel ?term . }

Query

Page 19: Microservices in LoCloud

G.&W.Koch: Microservices in LoCloud 19

Service Call („fetchTopTerms“)embedded in a test application

Micro- Service

Vocabulary Web Service

Amersfoort, 2016-02-05

Page 20: Microservices in LoCloud

G.&W.Koch: Microservices in LoCloud 20

Test Application DevelopmentDesigner View

Development of a Drop Down List

Development of a Drop Down List

Amersfoort, 2016-02-05

Page 21: Microservices in LoCloud

G.&W.Koch: Microservices in LoCloud 21

The Test ApplicationPart of Data Entry

Path to the Thesaurus Item

„Candidate Term“ Crowdsourcing activity

(Vocabulary Management)

Amersfoort, 2016-02-05

http://dmdap.ait.co.at/index.php/vocabulary-test/

Page 22: Microservices in LoCloud

Microservices and Modern System Architectures

G.&W.Koch: Microservices in LoCloud 22Amersfoort, 2016-02-05

Page 23: Microservices in LoCloud

G.&W.Koch: Microservices in LoCloud 23

The LoCloudAggregation Structure

EnrichmentServices

Euro

pean

a Cl

oud

Testlab

Amersfoort, 2016-02-05

Object Storage

Page 24: Microservices in LoCloud

G.&W.Koch: Microservices in LoCloud 24

About: Microservice

Wikipedia: https://en.wikipedia.org/wiki/Microservices (2016-02-01)

[...] microservices is a • software architecture style in which • complex applications are composed

of small, independent processes • communicating with each other using language-

agnostic APIs.• These services are small, highly decoupled and

focus on doing a small task,facilitating a modular approach to system-building.

Amersfoort, 2016-02-05

Page 25: Microservices in LoCloud

G.&W.Koch: Microservices in LoCloud 25

Evolution of Architecturespwc: Technology Forecast: Rethinking Integration, Issue 1, 2014, page 3

Amersfoort, 2016-02-05

Page 26: Microservices in LoCloud

G.&W.Koch: Microservices in LoCloud 26

Deployment of Microservices

Locloud:•Each LoCloud microservice is contained in a virtual engine (IaaS)Post LoCloud (AIT):•Packaging (some) microservices 1)

inside docker-containers (PaaS)•Microservices are available via a private Docker Hub•Management of microservices using Docker Swarm or Kubernetes•Applications: OpenStack Swift for object storage

Amersfoort, 2016-02-05

1) dotCloud, Inc. -http://www.docker.io/static/img/docker-top-logo.png, Apache License 2.0

Page 27: Microservices in LoCloud

Marketplace for Microservices

Amersfoort, 2016-02-05 G.&W.Koch: Microservices in LoCloud 27

Data Management

Data Entry (SPECTRUM)

Vocabulary (LoCloud)

Search (EuSounds)

Navigation ( EuSounds)

Data Presentation

Media Selection

Annotate Content

Connect Content

Data Exchange

http://dmdap.ait.co.at/index.php/vocabulary-test/

http://dmdap.ait.co.at/index.php/showcase/

http://dmdap.ait.co.at/index.php/showcase/

http://dmdap.ait.co.at/index.php/sandbox/

http://dmdap.ait.co.at/index.php/Media-selection/

http://dmdap.ait.co.at/index.php/Content-annotation/

http://kochw.webmaker.ait.co.at/popcorn/d

Page 28: Microservices in LoCloud

G.&W.Koch: Microservices in LoCloud 28

Contact

Walter Koch Gerda [email protected] [email protected]

http://www.ait.co.at

Amersfoort, 2016-02-05