First draft of Cloud Platform Infrastructure ADR#328
Conversation
|
|
||
| ## Context | ||
|
|
||
| JABS Hub is a cloud-hosted platform that centralizes the storage and management of JABS |
There was a problem hiding this comment.
I'm open to names other than "JABS Hub"
There was a problem hiding this comment.
We could just call it "JABS" 🤷
| behavioral annotation projects. It exposes an authenticated HTTP API consumed by both a | ||
| web UI (Angular) and the JABS desktop GUI client. The platform must support video and | ||
| pose file storage, structured label management, project metadata, and future integration | ||
| with Envision. |
There was a problem hiding this comment.
I think to support the RDTC users, we would want to prioritize video acquisition, storage management, and processing (pose, downstream open field analysis) over of JABS labeling project management
I'm thinking of multiple "JABS Hub" modules
- JABS Hub Core: handles authentication, authorization, object storage,
- JABS Hub Video Acquisition: device management, configuration and control of recording sessions
- JABS Hub Processing: cloud-based processing pipeline orchestration. Runs pose estimation and open field analysis
- JABS Hub Label repository
keithshep
left a comment
There was a problem hiding this comment.
The only thing that occurred to me is maybe we should be explicit about versioning in terms of whether it's in scope or not, and if it is what kinds of data should be versioned
Co-authored-by: Glen Beane <356266+gbeane@users.noreply.github.com>
| Cloud Run is not designed for background work, polling introduces unnecessary latency | ||
| between job completion and status update, and it generates API calls against Cloud | ||
| Batch regardless of whether any jobs are running. It provides no reliability advantage | ||
| over the callback approach. |
There was a problem hiding this comment.
this is my fault...
It does provide a reliability advantage over Option A (callback approach) because the polling should catch state change when the job crashes/is preempted/etc
The biggest downsides is polling will prevent the Cloud Run instance from scaling down to 0 instances when idle and it's higher latency than Option C
Co-authored-by: Glen Beane <356266+gbeane@users.noreply.github.com>
This PR includes a first draft proposal of our cloud infrastructure approach for the coming JABS work, based on recent in-person technology and priority discussions.