![Page 1: Building Polargrid Portal using Gadgets and OpenSocialgrids.ucs.indiana.edu/ptliupages/presentations/GuoPolarGrid.pdf · Building Polargrid Portal using Gadgets and OpenSocial](https://reader033.vdocuments.net/reader033/viewer/2022042222/5ec911061b72bc186b68c39a/html5/thumbnails/1.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022042222/5ec911061b72bc186b68c39a/html5/thumbnails/2.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022042222/5ec911061b72bc186b68c39a/html5/thumbnails/3.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022042222/5ec911061b72bc186b68c39a/html5/thumbnails/4.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022042222/5ec911061b72bc186b68c39a/html5/thumbnails/5.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022042222/5ec911061b72bc186b68c39a/html5/thumbnails/6.jpg)
PolargridArchitecture
![Page 7: Building Polargrid Portal using Gadgets and OpenSocialgrids.ucs.indiana.edu/ptliupages/presentations/GuoPolarGrid.pdf · Building Polargrid Portal using Gadgets and OpenSocial](https://reader033.vdocuments.net/reader033/viewer/2022042222/5ec911061b72bc186b68c39a/html5/thumbnails/7.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022042222/5ec911061b72bc186b68c39a/html5/thumbnails/8.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022042222/5ec911061b72bc186b68c39a/html5/thumbnails/9.jpg)
• 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](https://reader033.vdocuments.net/reader033/viewer/2022042222/5ec911061b72bc186b68c39a/html5/thumbnails/10.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022042222/5ec911061b72bc186b68c39a/html5/thumbnails/11.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022042222/5ec911061b72bc186b68c39a/html5/thumbnails/12.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022042222/5ec911061b72bc186b68c39a/html5/thumbnails/13.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022042222/5ec911061b72bc186b68c39a/html5/thumbnails/14.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022042222/5ec911061b72bc186b68c39a/html5/thumbnails/15.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022042222/5ec911061b72bc186b68c39a/html5/thumbnails/16.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022042222/5ec911061b72bc186b68c39a/html5/thumbnails/17.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022042222/5ec911061b72bc186b68c39a/html5/thumbnails/18.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022042222/5ec911061b72bc186b68c39a/html5/thumbnails/19.jpg)
Tablayout
![Page 20: Building Polargrid Portal using Gadgets and OpenSocialgrids.ucs.indiana.edu/ptliupages/presentations/GuoPolarGrid.pdf · Building Polargrid Portal using Gadgets and OpenSocial](https://reader033.vdocuments.net/reader033/viewer/2022042222/5ec911061b72bc186b68c39a/html5/thumbnails/20.jpg)
TreeLayout
![Page 21: Building Polargrid Portal using Gadgets and OpenSocialgrids.ucs.indiana.edu/ptliupages/presentations/GuoPolarGrid.pdf · Building Polargrid Portal using Gadgets and OpenSocial](https://reader033.vdocuments.net/reader033/viewer/2022042222/5ec911061b72bc186b68c39a/html5/thumbnails/21.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022042222/5ec911061b72bc186b68c39a/html5/thumbnails/22.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022042222/5ec911061b72bc186b68c39a/html5/thumbnails/23.jpg)
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](https://reader033.vdocuments.net/reader033/viewer/2022042222/5ec911061b72bc186b68c39a/html5/thumbnails/24.jpg)
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