Closed karamolegkos closed 1 year ago
Highly linked with "Visualization Interface". Need to coordinate tasks @karamolegkos @adreaskar
Νομίζω πρέπει να αποφασίσουμε στο πως θα γίνεται η αποθήκευση απο το Visualization Service και ύστερα η λήψη των εικόνων απο το Visualization Interface (DIASTEMA-UPRC/web-application#31)
I see two scenarios:
Food for thought
Update:
Κάνω μια πρόταση για το πως θα μπορούσαμε να δομήσουμε τα 3 services ώστε να παίζουν μεταξύ τους:
1) Όταν μια ανάλυση τελειώνει ο Orchestrator πηγαίνει: MongoDB -> UIDB database -> Pipelines collection
, να βρίσκει την εγγραφή αυτής της ανάλυσης και να προσθέτει στο πεδίο metadata
την εγγραφή: "status":"completed"
2) Το Visualization Interface σκανάρει όλο το Pipelines collection και εμφανίζει τις αναλύσεις που έχουν "status":"completed"
Για κάθε ανάλυση παρέχει κάποια μεταδεδομένα καθώς και δύο κουμπιά:
"status":"completed"
, παράγει όλα γραφήματα απο τα αποτελέσματα και τις μετρικές. metadata
, σε μια νέα εγραφή της μορφής: "charts":["url1","url2","url3", ... ]
"charts-info":["metric1","metric2","result1", ... ]
Αυτό θα περιέχει τις περιγραφές των γραφημάτων, και θα τοποθετούνται με την ίδια σειρα που τοποθετήθηκαν τα charts urls.
Το charts-info στην ουσία θα χρησιμοποιηθεί σαν τις επιλογές που θα έχει ο χρήστης για να φιλτράρει τα charts που θα βλέπει.
4) Δεν ξέρω πως θα κινηθούμε με το Monitoring Service άλλα θα πρότεινα να κάνει αντίστοιχη δουλεία με αυτό που περιέγραψα στο προηγούμενο βήμα.metadata
μια νέα εγγραφή της μορφής: "monitoring-charts":["url1", ... ]
"monitoring-charts-info":["metric1", ... ]
5) Και τέλος, ανάλογα με το ποιο κουμπί θα πατήσει ο χρήστης στο βήμα 2, το Visualization Interface θα ανατρέχει στην MongoDB, στο collection Pipelines, και θα εμφανίζει την αντίστοιχη πληροφορία που χρειάζεται.@konvoulgaris @karamolegkos ρίξτε του μια ματιά στον χρόνο σας και το συζητάμε.
Ξαναχρησιμοποιούμε πλέων το παρακάτω node με τα εξής χαρακτηριστικά:
{
"title" : "visualization",
"label" : <a-random-title>
}
Παρακάτω ένα Flow ενός παραδειγματικού Use Case:
{
"analysis-id" : <analysis-id>,
"job-id" : <job-id>,
"last-job-id" : <last-job-id>, # The last job id in orfer to get the metadata from MongoDB made by the other services
"last-job-title" : <last-job-title>,
"minio-output" : <minio-output>,
"minio-input" : <minio-input>
}
Αν χρειάζεται παραπάνω πληροφορία ο @karamolegkos θα επικοινωνήσει με τον @konvoulgaris.
UIDB
στο collection: pipelines
στο document χρησιμοποιώντας το κλειδί { "analysisid" : <analysis-id> }
και προσθέτει το παρακάτω πεδίο:
"visualization" : {
<vis-1> : [
'metis/analysis-23415/visualization-11/chart1.html',
'metis/analysis-23415/visualization-11/chart2.html',
'metis/analysis-23415/visualization-11/chart3.html',
],
<vis-2> : [
'metis/analysis-23415/visualization-12/chart1.html',
'metis/analysis-23415/visualization-12/chart2.html',
'metis/analysis-23415/visualization-12/chart3.html',
],
}
{
"status":"completed"
}
Κατά την ολοκλήρωση της εφαρμογής στο μέλλον θα τοποθετούνται και metrics (we need more reasearh for that) με τον παρακάτω τρόπο στο ίδιο document:
"metrics" : {
<metric-title-1> : [<minio-path-1>], # Ο τίτλος των αρχείων χρησιμοποιείτε για τον Χρήστη
<metric-title-2> : [<minio-path-2>] # Ο τίτλος των αρχείων χρησιμοποιείτε για τον Χρήστη
}
@konvoulgaris waiting for confirmation
yeah this generally sounds good, im playing around with a library to automatically determine best chart for data. ill be back as soon as i have more info to share
Workflow has been updated for the Web App and Orchestrator connectivity.
Autoviz routing finally complete! Moving on to specification synchronicity...
Needs to be deployed.
After a lot of debugging this is working. Integraded ✔️
It is working good. I suggest to close this issue ✔️.
Remains open until Spark is integrated.
Spark Integrated ✔️.
This issue reffers to the Visualization Service, that is generating images for the Web Application.
This issue is linked with: #3 Bottlenecked by: #4 - We need to know the way that this service can extract information by Prometheus.