layout |
---|
section |
@startuml
package "Аналітична платформа" {
node apps[
<<ресурс>>
----
Сервіс управління
веб-застосунками
OPEN-WDC-DEV
]
node dps[
<<ресурс>>
----
Сервіс оброблення
даних
OPEN-WDC-DPS
]
node robusta[
<<ресурс>>
----
Сервіс збору
та аналізу даних
з медіа-джерел
ROBUSTA
]
node jacetext[
<<ресурс>>
----
Сервіс оброблення
текстів природньої мови
JACE-TEXT
]
node jacenerru[
<<ресурс>>
----
Сервіс розпізнавання
іменованих сутностей
для російської мови
JACE-NER-RU
]
node jaceneruk[
<<ресурс>>
----
Сервіс розпізнавання
іменованих сутностей
для української мови
JACE-NER-UK
]
node jaceneren[
<<ресурс>>
----
Сервіс розпізнавання
іменованих сутностей
для англійської мови
JACE-NER-EN
]
}
node client [
<<користувач>>
----
Веб-застосунок
PRO ET CONTRA
]
node wikien [
<<ресурс>>
----
en.wikipedia.org/w/api.php
]
node wikiru [
<<ресурс>>
----
ru.wikipedia.org/w/api.php
]
node wikiuk [
<<ресурс>>
----
uk.wikipedia.org/w/api.php
]
client - apps
client -- dps
dps -u- wikien
dps -u- wikiru
dps -u- wikiuk
jacetext -- jacenerru
jacetext -- jaceneruk
jacetext -- jaceneren
dps -l- jacetext
dps - robusta
@enduml
@startuml
actor User
boundary SPA
control "SPA Host" as SPAHOST
control "Data Processing Service" as DPS
control Robusta
control "Media Sources" as MS
ref over SPA, SPAHOST, DPS, Robusta WDC IT INFRASTRUCTURE end ref Robusta -> MS MS -> Robusta ... User -> SPAHOST : Access to application SPAHOST -> SPA **: "Activate application" SPA -> User: UI User -> SPA: Query SPA -> DPS: Data Processing Script (query) DPS -> Robusta: Query (all messages) Robusta -> DPS: Result DPS -> Robusta: Query (negative messages) Robusta -> DPS: Result DPS -> Robusta: Query (positive messages) Robusta -> DPS: Result DPS -> DPS: Data processing DPS -> SPA: Result SPA -> User: Visualiation @enduml
@startuml
package "Аналітична платформа" {
node apps[
<<ресурс>>
----
Сервіс управління
веб-застосунками
OPEN-WDC-DEV
]
node dps[
<<ресурс>>
----
Сервіс оброблення
даних
OPEN-WDC-DPS
]
}
node client [
<<користувач>>
----
Веб-застосунок
DATA FRESH ON COVID-19
]
node github [
<<ресурс>>
----
GITHUB
]
node rnbo [
<<ресурс>>
----
https://health-security.rnbo.gov.ua/api/
]
database d1 [
<<ресурс>>
----
Atlas MongoDB
Сховище наборів даних
]
client -u- apps
client -u- dps
dps -u- rnbo
dps -u- github
dps -u- d1
@enduml
@startuml
package "Аналітична платформа" {
node apps[
<<ресурс>>
----
Сервіс управління
веб-застосунками
OPEN-WDC-DEV
]
node dps[
<<ресурс>>
----
Сервіс оброблення
даних
OPEN-WDC-DPS
]
node cdms[
<<ресурс>>
----
Сервіс відстежування змін
OPEN-WDC-CDMS
]
}
node client [
<<користувач>>
----
Веб-застосунок
CRIMEA WATER RESOURCES
]
node sentinel [
<<ресурс>>
----
SENTINEL HUB
]
database d1 [
<<ресурс>>
----
Atlas MongoDB
Сховище даних моніторингу
]
client -u- apps
client -u- dps
cdms -u- sentinel
cdms -u- d1
cdms -l- dps
@enduml
MOLFAR
@startuml
queue IQ1 <> as "Input Queue 1.1" queue IQ2 <> as "Input Queue 1.n"
component instance1 <> as "MS Instance 1" component E <> as "Output Exchange 1"
queue IQ3 <> as "Input Queue 2.1" component instance2 <> as "MS Instance 2" component E2 <> as "Output Exchange 2"
IQ1 --# instance1 IQ2 --# instance1 instance1 #-> E E - IQ3 IQ3 --# instance2
instance2 #-> E2
queue IQ4 <> as "Input Queue 3.1" component instance3 <> as "MS Instance 3" component E3 <> as "Output Exchange 3"
E -- IQ4 IQ4 --# instance3
instance3 #-> E3
@enduml
@startuml
component E <> as "Output Exchange 1"
queue IQ3 <> as "Task Queue" component instance2 <> as "MS Instance 1" component E2 <> as "Output Exchange 2"
E - IQ3 IQ3 -# instance2
instance2 #--> E2
component instance3 <> as "MS Instance 2"
IQ3 --# instance3
instance3 #-> E2
@enduml
::right::
@startuml
node "Node" { component RSS_MS_C <> as "MS Container" component RSSI <> as "MS Instances" RSS_MS_C -> RSSI }
interface MSC <> as "MS Instances\nControl API"
RSS_MS_C #-- MSC
node "MS Registry" { component WC as "Workflow Controller" component MSM as "MS Monitor" database MSDB as "Storage" WC -- MSDB MSDB - MSM }
MSC )--# WC
node { component EB as "Message broker" { component MSHQ <> as "MS Health" } }
RSS_MS_C #--> MSHQ RSSI #--> MSHQ MSHQ --# MSM
node Computer { node Browser { component SPA as "Workflow\nManagement\nApp" } }
interface WMAPI <> as "Workflow\nManagement\n API" interface IMAPI <> as "Instances\nMonitoring\n API"
WC -r- WMAPI MSM -- IMAPI
WMAPI )--- SPA IMAPI )- SPA
@enduml
MOLFAR
@startuml
package "NL Processing" {
component NL <<service instance>> as "Language Detection"
component S1 <<service instance>> as "Sentiment\nAnalysis\n(en)"
component S2 <<service instance>> as "Sentiment\nAnalysis\n(uk)"
component S3 <<service instance>> as "Sentiment\nAnalysis\n(ru)"
component N1 <<service instance>> as "NER (en)"
component N2 <<service instance>> as "NER (uk)"
component N3 <<service instance>> as "NER (ru)"
component C <<service instance>> as "Composer"
NL --> S1
NL --> S2
NL --> S3
NL --> N1
NL --> N2
NL --> N3
S1 --> C
S2 --> C
S3 --> C
N1 --> C
N2 --> C
N3 --> C
}
@enduml
::right::
@startuml
database DB as "Source\nDatabase" component SCH <> as "Scheduler" component SC <> as "Source Scraper"
component PP <> as "Message Preprocessor"
component NL <> as "NL Processor" component KD <> as "Keywords Detector" #ffab91 component SKC <> as "Source Keyword\nComposer" #ffab91
component SF <> as "Source Filter"
DB -l- SCH SCH --> SC SC --> PP PP --> NL PP -> KD KD -u->SKC SKC -u- DB SF -l- DB
@enduml