SlideShare ist ein Scribd-Unternehmen logo
1 von 23
e-Infrastructure & Data Services
Features and implementations
Catania, 14/03/2014Riccardo Rotondo
riccardo.rotondo@ct.infn.it
Outline
 Requirements
 e-Infrastructure Service
 Data Service
 Workflow
 Javadocs
 Implementations
 Demo
2
e-Infrastructure & Data Service
 We designed the architecture to provide a Service
accessible from your application.
 Modular attachable resources available to the SG thanks
to the straight coupled service that allows read/write
data from several e-Infrastructures.
3
e-Infrastructure Service
 Four different kind of e-Infrastructure identified:
 Local
 Remote
 Grid
 Cloud
 Possibility of defining different Policy and Quota
according e-infrastructures/users availability/needs
 Default and favorite e-Infrastructures selectable
 Disaster recovery and (cross) file replica.
4
e-Infrastructure Service
 If you want to copy a file on a file system you plug-in
an external storage to it.
5
HFS
ext4
NFS
FAT
e-Infrastructure Service
 On a SG now you are able to plug-in an e-
Infrastructure.
6
Local Storage
Remote Storage
Grid Storage
Cloud Storage
Data Services
 Business logic related to file management totally
independent from the underneath technology
 All the common features associated to file provided:
create, copy, delete, move and sharing.
 For each features, we implemented a different Storage
Interface that translates the single commands according
to the technology
 All data are stored in different tables in order to let users
organise files on a virtual file system.
7
Data Service
8
Local Storage
Remote Storage
Grid Storage
Cloud Storage
Different
implementations
of the same
storage interface
Upload
workflow
9
1.
Sign
in
Database
5. File
Upload
4. e-Infra
found
7. Update
6. Upload on
e-Infras
2. Upload
request
3. e-Infra
Discovery
Data Management on various
e-Infrastructures
10
Dec ’13:
release 0.1
Service Implementation
 Package name
 Namespace
 Entity
 Interface type
 Finder
 Ordered value
 One-to-many relation
 Many-to-many relation
 Fake entity
Riccardo RotondoTutorial on Science
Gateways, Roma,
service.xml
Database created (automatically by service
buider)
12
mysql> show tables like 'eInfrSrv%';
+---------------------------------+
| Tables_in_lportal61 (eInfrSrv%) |
+---------------------------------+
| eInfrSrv_File |
| einfrsrv_files_tags |
| einfrsrv_files_virtualpaths |
| einfrsrv_infrastructure |
| einfrsrv_properties |
| einfrsrv_storageurls |
| einfrsrv_tag |
| einfrsrv_virtualpath |
+---------------------------------+
File
Directory
File url on storage
e-Infrastructures
File tags
Properties (reffered to e-Infra)
Javadocs
13
 http://www.catania-science-gateways.it/javadocs/einfrsrv-portlet/index.html
Model & Service Implementation
14
Custom model
implementation
Custom service
implementation
Main features
15
 e-Infrastructure:
 Define several e-Infrastructures;
 Associate each e-Infra with Policy and Quota
 Storage interface:
 A standard interface defined to support any storage solution
simply implementing the abstract method
 Directory:
 File tree data organisation
e-Infrastructure Service
(it.infn.ct.einfrsrv.sb.service.impl.InfrastructureLocalServiceImpl)
16
 Infrastructure
getDefaultInfrastructure(long
companyId, long userId,
java.lang.String portletId,
java.lang.String type)
Data Service Storage (it.infn.ct.einfrsrv.data.storage)
17
 java.lang.StringgetStoragePath()
 boolean isURLAvailable(java.lang.String url)
 java.lang.StringputFile(java.lang.String filePath)
 java.lang.StringputFile(java.lang.String source,
java.lang.String destination)
 boolean writeFileToStream(java.lang.String
filePath, java.io.OutputStream out)
 boolean removeFile(java.lang.String filePath)
Data Service File
(it.infn.ct.einfrsrv.sb.service.impl.FileLocalServiceImpl)
18
 boolean upload(long companyId, java.lang.String
companyName, long userId, java.lang.String
portletId, Infrastructure infraParam,
java.lang.String fileName, java.lang.String
source, java.lang.String virtualPathParam,
java.lang.String[] tagsParam)
 java.util.List<File> listFiles(long userId,
java.lang.String virtualPathParam)
 boolean writeFileToStream(long userId, long
fileId, java.io.OutputStream out)
 java.net.URL getURL(long userId, long fileId)
Data Service Directory
(it.infn.ct.einfrsrv.sb.service.impl.VirtualPathLocalServiceImpl)
19
 VirtualPath makeDir(java.lang.String
parentPath, java.lang.String path,
long userId)
Portlet accessing the service
20
 Add to liferay-plugin-package.properties:
 required-deployment-contexts=einfrsrv-portlet
Source & Binary
21
 Sourceforge:
http://sourceforge.net/p/ctsciencegtwys/einfsrv/sourc
es/HEAD/tree/
 Rel 0.1:
http://sourceforge.net/p/ctsciencegtwys/einfsrv/sources/H
EAD/tree/tags/release-0.1/
 Binaryhttps://sourceforge.net/projects/ctsciencegtwys/files
/eInfrastructureService/Release/0.1/
Demo
22
 Whishing to see e-Infra & Data service in action? Request
access to GARR Science Gateway (https://sgw.garr.it)
 Remember the service is still under development so your
feedback is welcome!
Questions ?
23

Weitere ähnliche Inhalte

Ähnlich wie e-Infrastructure & Data Service

Splunk app for stream
Splunk app for stream Splunk app for stream
Splunk app for stream
csching
 
Resume_Appaji
Resume_AppajiResume_Appaji
Resume_Appaji
Appaji K
 

Ähnlich wie e-Infrastructure & Data Service (20)

Microservice and Service Fabric talk
Microservice and Service Fabric talkMicroservice and Service Fabric talk
Microservice and Service Fabric talk
 
Splunk app for stream
Splunk app for stream Splunk app for stream
Splunk app for stream
 
Optimizing windows 8 for virtual desktops - teched 2013 Jeff Stokes
Optimizing windows 8 for virtual desktops - teched 2013 Jeff StokesOptimizing windows 8 for virtual desktops - teched 2013 Jeff Stokes
Optimizing windows 8 for virtual desktops - teched 2013 Jeff Stokes
 
IT Network Asset Discovery & Inventory
IT Network Asset Discovery & InventoryIT Network Asset Discovery & Inventory
IT Network Asset Discovery & Inventory
 
Automated Out-of-Band management with Ansible and Redfish
Automated Out-of-Band management with Ansible and RedfishAutomated Out-of-Band management with Ansible and Redfish
Automated Out-of-Band management with Ansible and Redfish
 
Linux Desktop Automation
Linux Desktop AutomationLinux Desktop Automation
Linux Desktop Automation
 
Resume_Appaji
Resume_AppajiResume_Appaji
Resume_Appaji
 
Hyper v and live migration on cisco unified computing system - virtualized on...
Hyper v and live migration on cisco unified computing system - virtualized on...Hyper v and live migration on cisco unified computing system - virtualized on...
Hyper v and live migration on cisco unified computing system - virtualized on...
 
Better Network Management Through Network Programmability
Better Network Management Through Network ProgrammabilityBetter Network Management Through Network Programmability
Better Network Management Through Network Programmability
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud Computing
 
Middleware
MiddlewareMiddleware
Middleware
 
Cv
CvCv
Cv
 
Linux Based Advanced Routing with Firewall and Traffic Control
Linux Based Advanced Routing with Firewall and Traffic ControlLinux Based Advanced Routing with Firewall and Traffic Control
Linux Based Advanced Routing with Firewall and Traffic Control
 
Matrix - One-year in, Matthew Hodgson, Matrix.org
Matrix - One-year in, Matthew Hodgson, Matrix.orgMatrix - One-year in, Matthew Hodgson, Matrix.org
Matrix - One-year in, Matthew Hodgson, Matrix.org
 
Service Fabric and Azure Service Fabric Mesh introduction
Service Fabric and Azure Service Fabric Mesh introductionService Fabric and Azure Service Fabric Mesh introduction
Service Fabric and Azure Service Fabric Mesh introduction
 
Neo4j Vision and Roadmap
Neo4j Vision and Roadmap Neo4j Vision and Roadmap
Neo4j Vision and Roadmap
 
"Wie passen Serverless & Autonomous zusammen?"
"Wie passen Serverless & Autonomous zusammen?""Wie passen Serverless & Autonomous zusammen?"
"Wie passen Serverless & Autonomous zusammen?"
 
6° Sessione - Ambiti applicativi nella ricerca di tecnologie statistiche avan...
6° Sessione - Ambiti applicativi nella ricerca di tecnologie statistiche avan...6° Sessione - Ambiti applicativi nella ricerca di tecnologie statistiche avan...
6° Sessione - Ambiti applicativi nella ricerca di tecnologie statistiche avan...
 
The Overview of Discovery and Reconciliation of LTE Network
The Overview of Discovery and Reconciliation of LTE NetworkThe Overview of Discovery and Reconciliation of LTE Network
The Overview of Discovery and Reconciliation of LTE Network
 
The MySQL SYS Schema
The MySQL SYS SchemaThe MySQL SYS Schema
The MySQL SYS Schema
 

Kürzlich hochgeladen

Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
KarakKing
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
ZurliaSoop
 
Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please Practise
AnaAcapella
 

Kürzlich hochgeladen (20)

Towards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptxTowards a code of practice for AI in AT.pptx
Towards a code of practice for AI in AT.pptx
 
On National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan FellowsOn National Teacher Day, meet the 2024-25 Kenan Fellows
On National Teacher Day, meet the 2024-25 Kenan Fellows
 
Application orientated numerical on hev.ppt
Application orientated numerical on hev.pptApplication orientated numerical on hev.ppt
Application orientated numerical on hev.ppt
 
Spatium Project Simulation student brief
Spatium Project Simulation student briefSpatium Project Simulation student brief
Spatium Project Simulation student brief
 
Salient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functionsSalient Features of India constitution especially power and functions
Salient Features of India constitution especially power and functions
 
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptxHMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
HMCS Vancouver Pre-Deployment Brief - May 2024 (Web Version).pptx
 
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdfUGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
UGC NET Paper 1 Mathematical Reasoning & Aptitude.pdf
 
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdfUnit 3 Emotional Intelligence and Spiritual Intelligence.pdf
Unit 3 Emotional Intelligence and Spiritual Intelligence.pdf
 
How to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptxHow to setup Pycharm environment for Odoo 17.pptx
How to setup Pycharm environment for Odoo 17.pptx
 
Graduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - EnglishGraduate Outcomes Presentation Slides - English
Graduate Outcomes Presentation Slides - English
 
Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)Jamworks pilot and AI at Jisc (20/03/2024)
Jamworks pilot and AI at Jisc (20/03/2024)
 
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptxHMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
HMCS Max Bernays Pre-Deployment Brief (May 2024).pptx
 
Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)Accessible Digital Futures project (20/03/2024)
Accessible Digital Futures project (20/03/2024)
 
ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.ICT role in 21st century education and it's challenges.
ICT role in 21st century education and it's challenges.
 
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Hongkong ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
Sensory_Experience_and_Emotional_Resonance_in_Gabriel_Okaras_The_Piano_and_Th...
 
Spellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please PractiseSpellings Wk 3 English CAPS CARES Please Practise
Spellings Wk 3 English CAPS CARES Please Practise
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Food safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdfFood safety_Challenges food safety laboratories_.pdf
Food safety_Challenges food safety laboratories_.pdf
 
Sociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning ExhibitSociology 101 Demonstration of Learning Exhibit
Sociology 101 Demonstration of Learning Exhibit
 

e-Infrastructure & Data Service

  • 1. e-Infrastructure & Data Services Features and implementations Catania, 14/03/2014Riccardo Rotondo riccardo.rotondo@ct.infn.it
  • 2. Outline  Requirements  e-Infrastructure Service  Data Service  Workflow  Javadocs  Implementations  Demo 2
  • 3. e-Infrastructure & Data Service  We designed the architecture to provide a Service accessible from your application.  Modular attachable resources available to the SG thanks to the straight coupled service that allows read/write data from several e-Infrastructures. 3
  • 4. e-Infrastructure Service  Four different kind of e-Infrastructure identified:  Local  Remote  Grid  Cloud  Possibility of defining different Policy and Quota according e-infrastructures/users availability/needs  Default and favorite e-Infrastructures selectable  Disaster recovery and (cross) file replica. 4
  • 5. e-Infrastructure Service  If you want to copy a file on a file system you plug-in an external storage to it. 5 HFS ext4 NFS FAT
  • 6. e-Infrastructure Service  On a SG now you are able to plug-in an e- Infrastructure. 6 Local Storage Remote Storage Grid Storage Cloud Storage
  • 7. Data Services  Business logic related to file management totally independent from the underneath technology  All the common features associated to file provided: create, copy, delete, move and sharing.  For each features, we implemented a different Storage Interface that translates the single commands according to the technology  All data are stored in different tables in order to let users organise files on a virtual file system. 7
  • 8. Data Service 8 Local Storage Remote Storage Grid Storage Cloud Storage Different implementations of the same storage interface
  • 9. Upload workflow 9 1. Sign in Database 5. File Upload 4. e-Infra found 7. Update 6. Upload on e-Infras 2. Upload request 3. e-Infra Discovery
  • 10. Data Management on various e-Infrastructures 10 Dec ’13: release 0.1
  • 11. Service Implementation  Package name  Namespace  Entity  Interface type  Finder  Ordered value  One-to-many relation  Many-to-many relation  Fake entity Riccardo RotondoTutorial on Science Gateways, Roma, service.xml
  • 12. Database created (automatically by service buider) 12 mysql> show tables like 'eInfrSrv%'; +---------------------------------+ | Tables_in_lportal61 (eInfrSrv%) | +---------------------------------+ | eInfrSrv_File | | einfrsrv_files_tags | | einfrsrv_files_virtualpaths | | einfrsrv_infrastructure | | einfrsrv_properties | | einfrsrv_storageurls | | einfrsrv_tag | | einfrsrv_virtualpath | +---------------------------------+ File Directory File url on storage e-Infrastructures File tags Properties (reffered to e-Infra)
  • 14. Model & Service Implementation 14 Custom model implementation Custom service implementation
  • 15. Main features 15  e-Infrastructure:  Define several e-Infrastructures;  Associate each e-Infra with Policy and Quota  Storage interface:  A standard interface defined to support any storage solution simply implementing the abstract method  Directory:  File tree data organisation
  • 17. Data Service Storage (it.infn.ct.einfrsrv.data.storage) 17  java.lang.StringgetStoragePath()  boolean isURLAvailable(java.lang.String url)  java.lang.StringputFile(java.lang.String filePath)  java.lang.StringputFile(java.lang.String source, java.lang.String destination)  boolean writeFileToStream(java.lang.String filePath, java.io.OutputStream out)  boolean removeFile(java.lang.String filePath)
  • 18. Data Service File (it.infn.ct.einfrsrv.sb.service.impl.FileLocalServiceImpl) 18  boolean upload(long companyId, java.lang.String companyName, long userId, java.lang.String portletId, Infrastructure infraParam, java.lang.String fileName, java.lang.String source, java.lang.String virtualPathParam, java.lang.String[] tagsParam)  java.util.List<File> listFiles(long userId, java.lang.String virtualPathParam)  boolean writeFileToStream(long userId, long fileId, java.io.OutputStream out)  java.net.URL getURL(long userId, long fileId)
  • 19. Data Service Directory (it.infn.ct.einfrsrv.sb.service.impl.VirtualPathLocalServiceImpl) 19  VirtualPath makeDir(java.lang.String parentPath, java.lang.String path, long userId)
  • 20. Portlet accessing the service 20  Add to liferay-plugin-package.properties:  required-deployment-contexts=einfrsrv-portlet
  • 21. Source & Binary 21  Sourceforge: http://sourceforge.net/p/ctsciencegtwys/einfsrv/sourc es/HEAD/tree/  Rel 0.1: http://sourceforge.net/p/ctsciencegtwys/einfsrv/sources/H EAD/tree/tags/release-0.1/  Binaryhttps://sourceforge.net/projects/ctsciencegtwys/files /eInfrastructureService/Release/0.1/
  • 22. Demo 22  Whishing to see e-Infra & Data service in action? Request access to GARR Science Gateway (https://sgw.garr.it)  Remember the service is still under development so your feedback is welcome!