sandbox/libs/analytics-framework/README.md
Shared library containing the SPI interfaces and core types for the analytics engine. All plugins depend on this library — it defines the contracts but contains no implementation logic.
QueryPlanExecutorPlugin — Factory for creating a QueryPlanExecutor from discovered back-end plugins.AnalyticsBackEndPlugin — Extension point for native execution engines (DataFusion, Lucene, etc.). Exposes engine name, bridge, and capabilities.AnalyticsFrontEndPlugin — Marker interface for query language front-ends (PPL, SQL). Discovered by the hub for lifecycle tracking.SchemaProvider — Functional interface that builds a Calcite SchemaPlus from cluster state.QueryPlanExecutor — Executes a Calcite RelNode plan fragment and returns result rows.EngineBridge<T> — JNI/native boundary for engine-specific plan conversion and execution (e.g., Substrait → Arrow batches).AnalyticsEngineContext — Provides schema and aggregated operator table to front-ends for parsing and validation.Calcite and Arrow — no dependency on the OpenSearch server module.