Skip to content

Latest commit

 

History

History
30 lines (26 loc) · 750 Bytes

ARCHITECTURE.md

File metadata and controls

30 lines (26 loc) · 750 Bytes

Querybase Architecture

Browser (querybase-ui: Scala.js -> JavaScript)
 + Rendering DOM (airframe-rx-html)
 + ServiceJSClient (querybase-frontend-client, genearted by sbt-airframe)  
  |
Frontend server (Airframe Finagle)
 + ServiceGrpc (querybase-api-client, generated by sbt-airframe)  
  |
Coordinator (Airframe gRPC) 
 + Query Manager (query queue, status update) 
  |
Worker (Airframe gRPC) 
 + Query Executor
  |
Remote Services
 + Trino (Presto) service (e.g., TD)
 + TODO:
   - Standalone Spark kernel (local[*])
   - Python kernel

RPC definitions

RPC definitions and model classes can be found in querybase-api.

  • querybase.api.backend API for accessing coordinator and workers
  • querybase.api.frontend API for browsers