building polargrid portal using gadgets and...

24
Building Polargrid Portal using Gadgets and OpenSocial Gerald Guo, Raminder Singh, Marlon Pierce Pervasive Technology Ins>tute at Indiana University {zhguo, ramifnu, marpierc}@indiana.edu

Upload: others

Post on 22-May-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Building Polargrid Portal using Gadgets and OpenSocialgrids.ucs.indiana.edu/ptliupages/presentations/GuoPolarGrid.pdf · Building Polargrid Portal using Gadgets and OpenSocial

BuildingPolargridPortalusingGadgetsandOpenSocial

GeraldGuo,RaminderSingh,MarlonPierce

PervasiveTechnologyIns>tuteatIndianaUniversity

{zhguo,ramifnu,marpierc}@indiana.edu

Page 2: Building Polargrid Portal using Gadgets and OpenSocialgrids.ucs.indiana.edu/ptliupages/presentations/GuoPolarGrid.pdf · Building Polargrid Portal using Gadgets and OpenSocial

Introduc>ontoPolargrid•  AnNSF‐fundedMRIprojectthatprovidescompu>ngsupportfortheCenterfor

theRemoteSensingofIceSheets(CReSIS,hMps://www.cresis.ku.edu/)

•  CReSISisprimarilyconcernedwithusingSynthe>cApertureRadar(SAR)techniquestoobtaininforma>ononthedepthoftheGreenlandandAntarc>cicesheetsandtheirunderlyingrockbeds.

•  Providesbothin‐the‐fieldcompu>ngclustersforini>alimageprocessingandlargerclustersatIndianaUniversityforfull‐scaleimageprocessing.

•  Imageprocessingisneededtoproducedataproductsofmul>plelevels

Partners&Collaborators

•  JeffWoodsatECSU•  UniversityofKansas

•  OhioStateUniversity•  PennsylvaniaStateUniversity

Page 3: Building Polargrid Portal using Gadgets and OpenSocialgrids.ucs.indiana.edu/ptliupages/presentations/GuoPolarGrid.pdf · Building Polargrid Portal using Gadgets and OpenSocial

PortalRequirements

•  ViewCReSISdatasets,runfilters,andviewresultsthroughWebmapinterfaces.

•  See/Shareuser’seventsinaCalendar.•  Updateresultstoacommonrepositorywithappropriateaccesscontrols.

•  Postthestatusofcomputa>onalexperiments.

•  Supportcollabora>onandinforma>onexchangebyinterfacingtoblogsanddiscussionarea.

Page 4: Building Polargrid Portal using Gadgets and OpenSocialgrids.ucs.indiana.edu/ptliupages/presentations/GuoPolarGrid.pdf · Building Polargrid Portal using Gadgets and OpenSocial

Approaches

•  Exis>ngframeworkslikeSakai,Moodle,Liferay,ExoandDrupal

•  BuildingopensystemusingOpenSocialGadgetandusingGoogleservicesorsocialnetworkserviceslikeFacebook,TwiMeretc.forcollabora>on

Page 5: Building Polargrid Portal using Gadgets and OpenSocialgrids.ucs.indiana.edu/ptliupages/presentations/GuoPolarGrid.pdf · Building Polargrid Portal using Gadgets and OpenSocial

TechnologiesTech/Design choices Reason Summary

Web 2.0 Improves usability and responsiveness

Gadget Makes developers possible to write reusable web components that can be deployed to any Gadget container.

OpenSocial Makes portal possible to interact with existing large social networks instead of building our own.

REST Makes applications able to access PolarGrid services using simple HTTP requests.

OpenID Makes portal able to interact with external OpenID-compliant identity management systems.

OAuth Makes portal able to interact with external OAuth-protected services.

MyProxy Makes portal able to interact with security infrastructure of Grid systems.

Page 6: Building Polargrid Portal using Gadgets and OpenSocialgrids.ucs.indiana.edu/ptliupages/presentations/GuoPolarGrid.pdf · Building Polargrid Portal using Gadgets and OpenSocial

PolargridArchitecture

Page 7: Building Polargrid Portal using Gadgets and OpenSocialgrids.ucs.indiana.edu/ptliupages/presentations/GuoPolarGrid.pdf · Building Polargrid Portal using Gadgets and OpenSocial

ProcessFlow

1.  Auservisitshis/hergadgethomepage,whichisservedbyOGCEgadgetlayoutmanager

2.  Thegadgetlayoutmanagerconstructstheuser’scustomgadgetlayoutinbrowserandmakesuseofagadgetrenderer(Shindiginourcase)torendereachgadgetXMLtoHTML/JavaScript.ThenthegeneratedHTML/JavaScriptcodeisdisplayedinbrowser.

3.  DifferentgadgetsmayinteractwithdifferentbackendRESTfulservicestogenerateoutput.AJSONresponseissentbacktothegadgettodisplaytheresults.

4.  GadgetsandRESTfulservicesalsoquerysocialdatausingOpenSocialAPI’sbysendingrequeststoShindigserver.

Page 8: Building Polargrid Portal using Gadgets and OpenSocialgrids.ucs.indiana.edu/ptliupages/presentations/GuoPolarGrid.pdf · Building Polargrid Portal using Gadgets and OpenSocial

FilterGadget Usercanselectdifferentparameterstorunafiltertocreateimage.ResultimagewillbedisplayedonGooglemap.

BlogGadget TodisplaythefeedsfromPolarGridblogsite.

DiscussionBoard GoogleFriendConnect(GFC)gadgettodiscussoncertaintopic.

FilterImages Picasagadgettodisplayallthefilterimageswithfilterdescrip>on.

FAQGadget GFCgadgetforQues>on/Answer.Moderatorcanalwayscontrolthetopicsandcanblockpeoplefromthelist.

GoogleCalendar CalendargadgettodisplaypublicPolarGrid‐specificac>vi>esandtasks.

TwiMerGadget Toreadfilterexecu>onupdatesfromtwiMerrelatedtoPolarGrid.

FacebookGadget UsercanupdatestatusoftaskdirectlytoFacebookfromhere.

Gadgets

Page 9: Building Polargrid Portal using Gadgets and OpenSocialgrids.ucs.indiana.edu/ptliupages/presentations/GuoPolarGrid.pdf · Building Polargrid Portal using Gadgets and OpenSocial

•  RESTservicea.  TointegrategadgetwithGFACservice.b.  CallGFACWebserviceandreadtheSOAPresponsetoreadresult.

c.  UploadresultantimagetoPicasawithparametersinforma>on.d.  Addthisac>vitytothecalendarunderpar>culatecalendarname.e.  Publishthisac>vityalongwithPicasaURLandCalendareventto

TwiMer

f.  CreateJSONresponseforGadget•  GFACServiceistowraptheservicerequestandestablish

communica>onwithTeragridresourcestoruntheMatlabjob.•  Matlabfilter:Binarytakesalltheparametersandprocessthefiltersfor

requireddataset.

Backendservices

Page 10: Building Polargrid Portal using Gadgets and OpenSocialgrids.ucs.indiana.edu/ptliupages/presentations/GuoPolarGrid.pdf · Building Polargrid Portal using Gadgets and OpenSocial

OGCEGadgetPortal

•  Goal– Buildanopen,lightweight,flexible,easy‐to‐build,generalportal

•  Approach– Agiledevelopment:makeuseofexis>ngandwidely‐acceptedtechnologiesandservices.• Web2.0,Gadget,OpenSocial,OpenID,OAuth

•  GoogleCalendar,Picasa,Blogspot,TwiMer•  TeraGrid

Page 11: Building Polargrid Portal using Gadgets and OpenSocialgrids.ucs.indiana.edu/ptliupages/presentations/GuoPolarGrid.pdf · Building Polargrid Portal using Gadgets and OpenSocial

PolarGridArchitecturePolarGridspecificgadgetandservices

Genericservices

Page 12: Building Polargrid Portal using Gadgets and OpenSocialgrids.ucs.indiana.edu/ptliupages/presentations/GuoPolarGrid.pdf · Building Polargrid Portal using Gadgets and OpenSocial

Web2.0

“Secondgenera>onofwebdevelopmentandwebdesign”

Enterprise Approach Web 2.0 Approach Portlets Gadgets, Widgets SOAP RSS, Atom, JSON

WSDL REST(GET, PUT, POST ,DELETE)

Server side integration Client-side integration (AJAX) Monolithic Workflow managers Mash-ups (e.g. Yahoo Pipes)

Gateways User-centric social network portals

Page 13: Building Polargrid Portal using Gadgets and OpenSocialgrids.ucs.indiana.edu/ptliupages/presentations/GuoPolarGrid.pdf · Building Polargrid Portal using Gadgets and OpenSocial

REST

•  UniforminterfacesbasedonHTTP•  Resource‐oriented(resourcecanbeanything)•  Eachresourceisiden>fiedbyauniqueURL•  Statetransi>on(Linkresourcestogether)•  Resourceshavemul>plerepresenta>ons(JSON,XML)•  Goodforbothbrowser‐to‐serverandserver‐to‐server

interac3ons•  Alterna>ve‐SOAP‐basedWS

–  About60corews‐*protocols–  Designedforserver‐serverinterac>ons

•  SOAPandWSDLarereallycomplicated•  Browser‐basedappsaresecond‐classci>zens.

Page 14: Building Polargrid Portal using Gadgets and OpenSocialgrids.ucs.indiana.edu/ptliupages/presentations/GuoPolarGrid.pdf · Building Polargrid Portal using Gadgets and OpenSocial

OpenSocial

Components•  Interface:

REST,JavascriptAPIs•  Client:Ajax,Gadget•  MessageFormat:

JSON,XML•  Security:OAuth•  DataModel

• Acoherentopenarchitecturedesignedforsocialnetworkservicesandapplica>ons.

Page 15: Building Polargrid Portal using Gadgets and OpenSocialgrids.ucs.indiana.edu/ptliupages/presentations/GuoPolarGrid.pdf · Building Polargrid Portal using Gadgets and OpenSocial

OpenID•  Separa>onofIden>tyProviderandRelyingPar>es.

•  Iden>tyProviders:Blogspot,Flickr,•  UsethesameOpenIDtologinmul>plesites.•  BindOpenIDtolocalaccounts.•  Anerthebinding,useOpenIDforlogin.

OGCEGadgetPortalGoogleBlogspotYahoo!FlickrAOL

Page 16: Building Polargrid Portal using Gadgets and OpenSocialgrids.ucs.indiana.edu/ptliupages/presentations/GuoPolarGrid.pdf · Building Polargrid Portal using Gadgets and OpenSocial

GoogleFriendConnect

•  NovelwaytointegrateSocialFeatures

•  Allowuserstologinwithexis>ngGoogle,Yahoo,AOL,OpenIDaccounts

Page 17: Building Polargrid Portal using Gadgets and OpenSocialgrids.ucs.indiana.edu/ptliupages/presentations/GuoPolarGrid.pdf · Building Polargrid Portal using Gadgets and OpenSocial

OAuth

•  Users’dataisservedatserviceproviders.•  Thirdpartyappswanttoaccessusers’data.•  Usersdon’tneedtorelinquishusernameandpasswordtothirdpartyapps.

3rd‐partyApp TwiMer

GoogleDocsMySpaceTwiMer

SmugMug

Page 18: Building Polargrid Portal using Gadgets and OpenSocialgrids.ucs.indiana.edu/ptliupages/presentations/GuoPolarGrid.pdf · Building Polargrid Portal using Gadgets and OpenSocial

OAuth(cont.)

•  Drawbacks– V1.0isvulnerabletosessionfixa>onaMack(

hMp://oauth.net/advisories/2009‐1).Fixedinv1.0a.– Delega>ongranularity(Serviceprovider‐specific)

•  Opera>ons•  Data

– Accesstokenmanagement•  Non‐standard•  Expira>on(implicit>meout)

•  Revoca>on(explicitlyrevokeassignedprivileges)

Page 19: Building Polargrid Portal using Gadgets and OpenSocialgrids.ucs.indiana.edu/ptliupages/presentations/GuoPolarGrid.pdf · Building Polargrid Portal using Gadgets and OpenSocial

Tablayout

Page 20: Building Polargrid Portal using Gadgets and OpenSocialgrids.ucs.indiana.edu/ptliupages/presentations/GuoPolarGrid.pdf · Building Polargrid Portal using Gadgets and OpenSocial

TreeLayout

Page 21: Building Polargrid Portal using Gadgets and OpenSocialgrids.ucs.indiana.edu/ptliupages/presentations/GuoPolarGrid.pdf · Building Polargrid Portal using Gadgets and OpenSocial

OGCEGadgetPortalFeatures•  Twolayouts

–  Tab–  Tree

•  Gadgetgroupmanipula>on–add/remove•  Fourbuilt‐inthemes•  Gadgetmanipula>on

–  Add/removeGadget–  DragandDrop–  Twogadgetviews:homeandcanvas–  Gadgetsesng

•  Sessionpersistence•  Layoutdata

–  View,modifylayoutdata–  Easytomigratewhenyoudoanewinstalla>on–  Inspect

•  Ondemandrendering•  Customiza>on

Page 22: Building Polargrid Portal using Gadgets and OpenSocialgrids.ucs.indiana.edu/ptliupages/presentations/GuoPolarGrid.pdf · Building Polargrid Portal using Gadgets and OpenSocial

GadgetResource

•  Reusability•  Googlegadgetdirectorycontainsabout180,000gadgets.

•  TheycanbedeployedtoOGCEgadgetportal.•  Commongadgets

– RSSFeedReader,Calendar,Email,Tasklist

•  Socialgadgets– TwiMer,GoogleTalk,Facebook,Youtube

Page 23: Building Polargrid Portal using Gadgets and OpenSocialgrids.ucs.indiana.edu/ptliupages/presentations/GuoPolarGrid.pdf · Building Polargrid Portal using Gadgets and OpenSocial

OtherScienceUseCases

•  TeraGrid– MiniGpir,loadmonitoring,resourceusage

•  OpenLifeScienceGateway– UseOAuthtosubmitjobsandaccessresources

•  Cyberaide–  InteractwithGridusingwebinterface

•  MyProxyauthen>ca>on•  GlobusJobSubmission

•  GridFTPfiletransfer

Page 24: Building Polargrid Portal using Gadgets and OpenSocialgrids.ucs.indiana.edu/ptliupages/presentations/GuoPolarGrid.pdf · Building Polargrid Portal using Gadgets and OpenSocial

OGCESonware’sandRelatedlinks

OGCELayoutManager:ThisprojectistoprovideOpenSocial‐compa>blegadgetlayoutcontainerandgadgethostserver.

–  Ac>velyDevelopedbyGeraldGuo,PHDstudentinIndianaUniversity

–  GadgetDevelopsneednottodependonigoogleororkut

–  Lotofnewfeatureareaddedlatelyandseveralnewinaqueue.

GFAC:Wrapanycommand‐lineapplica>onasanWebservice.

–  DevelopedforLeadProjectandnowgeneralizedforanygateway.

–  RearchitectedtoworkasAxis2servicetoleveragehandlerarchitectureandRESTsupport.

Publica>onsandrelatedresearch•  BuildingthePolarGridPortalUsingWeb2.0andOpenSocialGCE09GridCompu>ng

Environments2009workshopatSC09PortlandOregonNovember202009•  hMp://www.collab‐ogce.org

•  hMp://collab‐ogce.blogspot.com/

•  hMp://cglreport.zhenhua.info/

•  hMp://communitygrids‐raman.blogspot.com/2009/07/open‐social‐frameworks_20.html