Umbrelloid Archive =link= May 2026
– e.g., rib_Research adds "experiment_id": "E-1234" . 7. Querying & Discovery Typical query API (REST or GraphQL):
search( query: "performance review", ribs: ["rib_HR", "rib_Legal"], filters: mtime_gte: "2024-01-01" ) results rib local_path snippet download_url (ttl: 300) umbrelloid archive
"id": "uuid", "rib": "rib_HR", "local_path": "2024/performance/Q4_reviews.pdf", "uri": "s3://hr-bucket/2024/performance/Q4_reviews.pdf", "hash": "sha256:...", "size_bytes": 245760, "mtime": "2025-01-15T10:00:00Z", "access_control": ["role:HR", "user:ceo"], "custom_metadata": "confidentiality": "high", "retention_days": 2555 The umbrella does not move data
Would you like a specific implementation blueprint (e.g., using AWS S3 + DynamoDB + Lambda) or a deeper dive into any of the five layers? "custom_metadata": "confidentiality": "high"
The umbrella does not move data. It returns signed/authenticated URLs or mount instructions for the original file. 8. Implementation Options (Open Source) | Component | Recommended Tool | |-----------|------------------| | Central Index | Elasticsearch / Typesense / Meilisearch | | Orchestration | Custom Python/FastAPI or Apache Atlas | | Connectors | Apache Camel, Airbyte, or custom scripts | | Auth | OAuth2 Proxy + per‑rib IAM roles | | File system abstraction | FUSE (to mount umbrella as a virtual FS) | | Full example | See umbrelloid-archive on GitHub (hypothetical) – or build using Rclone + RcloneBrowser + Elasticsearch |


