Is your feature request related to a problem? Please describe.
Feast's built-in offline stores cover BigQuery, Snowflake, Redshift, Spark, Postgres, and file/parquet, but not Alibaba Cloud MaxCompute (ODPS). Users on Alibaba Cloud must export data to parquet or run a separate Spark connector before Feast can read it — adding extra ETL steps, storage cost, and operational overhead.
Describe the solution you'd like
A first-class MaxComputeOfflineStore plugin, analogous to the existing BigQueryOfflineStore / RedshiftOfflineStore, so Feast can read directly from a MaxCompute project:
- Implement the standard Feast offline store interface (
OfflineStore, RetrievalJob) using the PyODPS SDK.
- Configure via
feature_store.yaml: endpoint, project, schema (odps), access_key_id, access_key_secret (AK/SK auth), optional tunnel_endpoint.
- Support core operations: point-in-time join for
get_historical_features, materialize / materialize_incremental, and offline dataframe push.
- Docs + a minimal end-to-end example.
Describe alternatives you've considered
- Export MaxCompute tables to parquet on OSS, then use Feast's file offline store — adds a redundant export pipeline, duplicates storage, and data is no longer fresh.
- Spark offline store reading MaxCompute via the Spark connector (what our project currently uses) — works, but requires standing up a dedicated Spark cluster just for Feast, which is operationally heavy for teams already standardized on MaxCompute SQL.
- Implement as an external contrib plugin outside the Feast repo — reduces discoverability and long-term maintenance.
Additional context
- MaxCompute is the dominant data warehouse on Alibaba Cloud, with a large and growing enterprise user base — native Feast support would unlock a significant potential market.
Is your feature request related to a problem? Please describe.
Feast's built-in offline stores cover BigQuery, Snowflake, Redshift, Spark, Postgres, and file/parquet, but not Alibaba Cloud MaxCompute (ODPS). Users on Alibaba Cloud must export data to parquet or run a separate Spark connector before Feast can read it — adding extra ETL steps, storage cost, and operational overhead.
Describe the solution you'd like
A first-class
MaxComputeOfflineStoreplugin, analogous to the existingBigQueryOfflineStore/RedshiftOfflineStore, so Feast can read directly from a MaxCompute project:OfflineStore,RetrievalJob) using the PyODPS SDK.feature_store.yaml: endpoint, project, schema (odps),access_key_id,access_key_secret(AK/SK auth), optionaltunnel_endpoint.get_historical_features,materialize/materialize_incremental, and offline dataframe push.Describe alternatives you've considered
Additional context