l3: architecture and services (english)
TRANSCRIPT
ArchitectureandServices
3
Ifyouhaveproblemswiththesound:- Checktheaudiosettingsinmenuitem „Communicate“- Joinalternativelybytelephoneorbydial-innumber
fromlandlinephone(forfree):• 000-800-100-8171 forIndia• 0800-894627forSwitzerland
frommobilephone• +41434569564 onlyforSwitzerland
Event-Number:843814193Event-Password:hello
ArchitectureandServices
4
TheSemanticGraphDatabase
Thecoreofanyi-viewsinstallationisthesemanticgraphdatabase.
Itconsistsofthreefileswhichresideinafoldercarryingthenameofthedatabase.
Thisfolderisnestedinanotherfoldernamedvolumes.
ArchitectureandServices
5
SoftwareComponents
Thesemanticgraphdatabaseiscomplementedbyaseriesofsoftwarecomponentswhichcanbeseparatedintotools,services,andfrontends:
Tools
• KnowledgeBuilder
• AdminTool
• ImportTool
• ScriptTool
• MaintenanceTool
Services
• Mediator
• Bridge
• BlobService
• JobClient
Frontends
• ViewConfigMapper
• NetNavigator
• KnowledgePortal
ArchitectureandServices
6
SoftwareComponents:Windows
TheWindowseditionofi-viewsdeliversthesoftwarecomponentsasexecutablefiles.
Somesoftwarecomponentsrequireadditionallibraryfilestoworkproperly.
Theselibraryfilesneedtosharethesamefolderwiththeirexecutablefiles.
Alllibraryfilesareincludedinthei-viewssoftwarepackage.
ArchitectureandServices
7
SoftwareComponents:Linux
TheLinuxeditionofi-viewsdeliversthesoftwarecomponentsasimagefiles.
Additionalexecutablefilesarerequiredtoloadtheseimagefiles.
Softwarecomponentswithagraphicaluserinterfaceareloadedwiththefilevisual.
Softwarecomponentswithoutagraphicaluserinterfaceareloadedwiththefilevwlinux86.
ArchitectureandServices
8
Tools
Toolsconfigurethedatabase,editalldatatherein,andparallelizepotentiallytime-consumingoperations.
TheycanaccessthedatabasedirectlyorindirectlyviaaMediator(moreonthislater).
TheKnowledgeBuilderandtheAdminToolfeatureagraphicaluserinterface.
TheImportTool,theScriptTool,andtheMaintenanceToolarecommand-linetools.
ArchitectureandServices
9
Tools:KnowledgeBuilder
TheKnowledgeBuilderisthecentralsoftwarecomponentformanagingthedatabase.Inessenceitallowsto:
• Importandexportdata
• Create,update,anddeletedata
• Searchthroughdataandindexdata
• Automaticallyprocessdata
• Configurethevisualizationofdata
• Configureaccessrightstodata
Abriefpresentationofthemostprominentfeatureswilloccurlaterinthislecture.
ArchitectureandServices
10
Tools:AdminTool
TheAdminToolservesthreebasicpurposes:
• Createnewdatabases
• Administratedatabases
• AdministrateMediators
TheAdminToolwillbeintroducedingreaterdetailinaseparatelecture.
ArchitectureandServices
11
Tools:Command-LineTools
Thecommand-linetoolsmimicfunctionalitiesoftheKnowledgeBuilderandtheAdminTool.
Thecommand-linetoolsexecutethesefunctionalitiesasbackgroundtaskswhichallowstoparallelizethemwithoutimpedingtheoperationoftheprimarytool.
Thisisusefulincaseswheretheexecutionofthesetasksmighttakeafewhoursifthealgorithmiscomplexandtheaffecteddatapoolislarge.
ArchitectureandServices
12
Tools:Command-LineTools
TheImportToolexecutesimportsandexportsofpreconfigureddatasourcemappings.
TheScriptToolexecutespreconfiguredJavaScriptscripts.
TheMaintenanceToolexecutesSmalltalkscriptfiles.Thesescriptfilesarewrittenbyourdevelopmentteamtomeetproject-basedrequirementsandaredeployedincaseswherearemotemaintenanceisnecessary.
ArchitectureandServices
13
Exercise1:DirectAccessofaDatabase
1. EnsurethattheKnowledgeBuilderispositionedinthesamefolderasyourvolumes folder.
2. StarttheKnowledgeBuilder.1. UnderWindows,double-clickthefilekb.exe.2. UnderLinux,enter./visual-=kb.im.
3. Choose(withoutserver) asyourserver.
4. Selectyourdatabaseofchoiceasyoursemanticnetwork.
5. Selectyouruserofchoiceandenterthecorrectpasswordforthisuserifrequired.
ArchitectureandServices
14
Exercise1:DirectAccessofaDatabase
6. ClickStart.
7. ClosetheKnowledgeBuilderafterthemainwindowhasloaded.
ArchitectureandServices
15
Services
Servicesinterconnectsoftwarecomponentsanddividepotentiallyhardwareintensiveoperationsandlargedatasetsuponmultiplehosts.
Theydonotfeatureagraphicaluserinterface.
Sincetheyusuallyrunpermanentlyonceani-viewsinstallationbecomesproductive,itisrecommendedtostorethemondedicatedserversandrunthemasbackgroundprocesses.
ArchitectureandServices
16
Services:Mediator
Whenasoftwarecomponentdirectlyaccessesthedatabase,thedatabasebecomesreservedforthisparticularapplicationandthuscannotbeaccessedbyasecondsoftwarecomponentuntiltheconnectionissevered.
TheMediatorsolvesthisproblembyservingasahubwhichorganizessimultaneousaccessesofmultipleapplications.
Toworkproperly,thesoftwarecomponentsmustnolongeraccessthedatabasedirectlybutaccesstheMediatorinstead.
ArchitectureandServices
17
Services:Mediator
AMediatorcanrunwithoutanyconfiguration.
Ifaconfigurationisnonethelessdesired,itcanbesetinaninitializationfilecalledmediator.ini bydefaultwhichisinterpretedoncewhenstartingaMediator.
Toavoidacollisionwithothernetworkservices,forexample,itisadvisabletosetaportnumber.
Thiscanbeachievedbyaddingakeynamedportunderasectionnamed[Default] intheinitializationfileandbyassigninganumericalvaluetothiskey.
ArchitectureandServices
18
Exercise2:IndirectAccessofaDatabaseviaaMediator
1. EnsurethattheMediatorispositionedinthesamefolderasyourvolumes folder.
2. Createamediator.ini file,intherecreateasectionnamed[Default],andsettheportnumbertoanunusedport,forexample20000.
3. StarttheMediator.1. UnderWindows,double-clickthefile
mediator.exe.2. UnderLinux,enter
./vwlinux86-=mediator.im.
ArchitectureandServices
19
Exercise2:IndirectAccessofaDatabaseviaaMediator
4. StarttheKnowledgeBuilder.1. UnderWindows,double-clickthefilekb.exe.2. UnderLinux,enter./visual-=kb.im.
5. Chooseorenterlocalhost: asyourserverandaddthechosenportnumberoftheMediator(suggestedwas20000).
6. Selectyourdatabaseofchoiceasyoursemanticknowledgenetwork.
7. Selectyouruserofchoiceandenterthecorrectpasswordforthisuserifrequired.
8. ClickStart.
9. ClosetheKnowledgeBuilderafterthemainwindowhasloaded.LettheMediatorrun.
ArchitectureandServices
20
Exercise2:IndirectAccessofaDatabaseviaaMediator
4. StarttheKnowledgeBuilder.1. UnderWindows,double-clickthefilekb.exe.2. UnderLinux,enter./visual-=kb.im.
5. Chooseorenterlocalhost: asyourserverandaddthechosenportnumberoftheMediator(suggestedwas20000).
6. Selectyourdatabaseofchoiceasyoursemanticknowledgenetwork.
7. Selectyouruserofchoiceandenterthecorrectpasswordforthisuserifrequired.
8. ClickStart.
ArchitectureandServices
21
Exercise2:IndirectAccessofaDatabaseviaaMediator
9. ClosetheKnowledgeBuilderafterthemainwindowhasloaded.LettheMediatorrun.
ArchitectureandServices
22
Services:Bridge
TheBridgefulfillsseveralfunctions:
• Itservesasaconduitbetweenthedatabaseandafrontend.
• ItprovidesaninterfaceforHTTPandHTTPSRESTrequestswhichwanttoaccessthedatabase.
• ItprovidesaninterfaceforJava-basedapplicationswhichwanttoaccessthedatabase.
ArchitectureandServices
23
Services:Bridge
ABridgerequiresaminimalconfigurationtorun.
Thisconfigurationissetinaninitializationfilecalledbridge.ini bydefaultwhichisinterpretedoncewhenstartingaBridge.
host setsthehostname(orIPnumber)andtheportnumberunderwhichtheMediatorcanbereached.
[KHTTPRestBridge] definesthebasicfunctionalitytheBridgeprovides.ThisparticularsettingdeclaresthattheBridgeprocessesRESTrequestssentviatheHTTPprotocol.
ArchitectureandServices
24
Services:Bridge
services specifieswhichRESTservicesareaccessibleviatheBridge.
volume specifieswhichdatabaseisaccessibleviatheBridge.
port setstheportnumberunderwhichtheBridgecanbereached.
ArchitectureandServices
25
Exercise3:RunningaBridge
1. EnsurethattheMediatorfromthepreviousexerciseisstillrunning.
2. Createabridge.ini fileinthesamefolderastheBridge.1. Sethost tolocalhostandsettheportnumberto
theoneyouusedinthepreviousexercise(suggestedwas20000).
2. Settheoperationmodeto[KHTTPRestBridge].3. Setservices todefault.4. Setvolume toanexistingdatabasename.
5. Setport toanunusedportnumber,forexample30000.
ArchitectureandServices
26
Exercise3:RunningaBridge
3. StarttheBridge.1. UnderWindows,double-clickthefile
bridge.exe.2. UnderLinux,enter./vwlinux86-=bridge.im.
4. StartabrowserofyourchoiceandentertheURLhttp://localhost:,followedbytheportnumberyouchosefortheBridge(suggestedwas30000).
Ifyouaresuccessful,amessageshouldbedisplayedwhichstatesthatnorequesthandlerisdefinedforthedefaultmethodGET.
ArchitectureandServices
27
Services:BlobServiceandJobClient
ABlobServiceallowstoexternalizethestorageofbinarylargeobjectssuchasmediafilesoutofthedatabase.
AJobClientallowstoexternalizeapredefinedoperation.
Amoredetaileddescriptionwilloccurinconjunctionwithanin-depthintroductionoftheAdminToolinanotherlecture.
ArchitectureandServices
28
Frontends
Frontendsvisualizethedatacontainedwithinthedatabaseaccordingtoaconfigurationalsostoredinthedatabase.
TheViewConfigMappermapsthebasicvisualizationelementsoftheKnowledgeBuildertoawebpageandcanbecustomizedtodisplayavarietyofadditionalvisualizationelements.
TheNetNavigatorspecializesinmappingtheGraphEditorcomponentwithintheKnowledgeBuildertoawebpage.
ArchitectureandServices
29
Frontends
TheKnowledgePortalisanolderfrontendbasedonXMLandJava.Istdevelopmenthasbeendiscontinuedbutitisstillsupported.
ArchitectureandServices
30
Homework:InstallingaFrontend
1. SetupaMediatorandaBridgeaccordingtothesameproceduresintroducedinthislecture.Besuretospecifyviewconfig asanadditionalserviceinthebridge.ini.
2. LookuptheRESTcomponentintheKnowledgeBuilder,searchforaRESTservicenamedviewconfigandastaticRESTstaticresourcenamedviewconfigmapper anduploadedtheprovidedfileviewconfigmapper-demo-3.0.4.zip.
3. UpdatetheRESTcomponentbyclickingontheupdatebutton.
4. OpenawebbrowserandaddresstheBridgejustlikeyoudidintheexercise.
ArchitectureandServices
31
Sendyour questions to:[email protected]
Consultationhours:EveryWednesday
Thank you for visitingi-viewsUniversity