Feast v0.11.0
Overview
Feast 0.11 is here! This is the first release after the major changes introduced in Feast 0.10. We’ve focused on two areas in particular:
- Introducing a new online store, Redis, which supports feature serving at high throughput and low latency.
- Improving the Feast user experience through reduced boilerplate, smoother workflows, and improved error messages. A key addition here is the introduction of feature inferencing, which allows Feast to dynamically discover data schemas in data sources.
👥 Contributors
Thanks to @MattDelac , @vtao2, @tsotnet, @woop, @achals, @tedhtchang, @qooba, @codyjlin, @jklegar, @rightx2, @kevinhu, @shihabuddinbuet, @jongillham and @szalai1 for the contributions!
✨ New Features:
- Allow BigQuery project to be configured #1656 (MattDelac)
- Add to_bigquery function to BigQueryRetrievalJob #1634 (vtao2)
- Add AWS authentication using github actions #1629 (tsotnet)
- Introduce an OnlineStore interface #1628 (achals)
- Add to_df to convert get_online_feature response to pandas dataframe #1623 (tedhtchang)
- Add datastore namespace option in configs #1581 (tsotnet)
- Add offline_store config #1552 (tsotnet)
- Entity value_type inference for Feature Repo registration #1538 (mavysavydav)
- Inferencing of Features in FeatureView and timestamp column of DataSource #1523 (mavysavydav)
- Add Unix Timestamp value type #1520 (MattDelac)
- Add support for Redis and Redis Cluster #1511 (qooba)
- Add path option to cli #1509 (tedhtchang)
🔴 Fixed bugs:
- Schema Inferencing should happen at apply time #1646 (mavysavydav)
- Don't use .result() in BigQueryOfflineStore, since it still leads to OOM #1642 (tsotnet)
- Don't load entire bigquery query results in memory #1638 (tsotnet)
- Remove file loader & its test #1632 (tsotnet)
- Provide descriptive error on invalid table reference #1627 (codyjlin)
- Fix ttl duration when ttl is None #1624 (MattDelac)
- Fix race condition in historical e2e tests #1620 (woop)
- Add validations when materializing from file sources #1615 (achals)
- Add entity column validations when getting historical features from bigquery #1614 (achals)
- Allow telemetry configuration to fail gracefully #1612 (achals)
- Update type conversion from pandas to timestamp to support various the timestamp types #1603 (achals)
- Add current directory in sys path for CLI commands that might depend on custom providers #1594 (MattDelac)
- Fix contention issue #1582 (woop)
- Ensure that only None types fail predicate #1580 (woop)
- Don't create bigquery dataset if it already exists #1569 (tsotnet)
- Don't lose materialization interval tracking when re-applying feature views #1559 (jklegar)
- Validate project and repo names for apply and init commands #1558 (tedhtchang)
- Bump supported Python version to 3.7 #1504 (tsotnet)
🔨 Merged pull requests:
- Rename telemetry to usage #1660 (tsotnet)
- Refactor OfflineStoreConfig classes into their owning modules #1657 (achals)
- Run python unit tests in parallel #1652 (achals)
- Refactor OnlineStoreConfig classes into owning modules #1649 (achals)
- Fix table_refs in BigQuerySource definitions #1644 (tsotnet)
- Make test historical retrieval longer #1630 (MattDelac)
- Fix failing historical retrieval assertion #1622 (woop)
- Add a specific error for missing columns during materialization #1619 (achals)
- Use drop_duplicates() instead of groupby (about 1.5~2x faster) #1617 (rightx2)
- Optimize historical retrieval with BigQuery offline store #1602 (MattDelac)
- Use CONCAT() instead of ROW_NUMBER() #1601 (MattDelac)
- Minor doc fix in the code snippet: Fix to reference the right instance for the retrieved job instance object #1599 (dmatrix)
- Repo and project names should not start with an underscore #1597 (tedhtchang)
- Append nanoseconds to dataset name in test_historical_retrival to prevent tests stomping over each other #1593 (achals)
- Make start and end timestamps tz aware in the CLI #1590 (achals)
- Bump fastavro version #1585 (kevinhu)
- Change OfflineStore class description #1571 (tedhtchang)
- Fix Sphinx documentation building #1563 (woop)
- Add test coverage and remove MacOS integration tests #1562 (woop)
- Improve GCP exception handling #1561 (woop)
- Update default cli no option help message #1550 (tedhtchang)
- Add opt-out exception logging telemetry #1535 (jklegar)
- Add instruction for install Feast on IKS and OpenShift using Kustomize #1534 (tedhtchang)
- BigQuery type to Feast type conversion chart update #1530 (mavysavydav)
- remove unnecessay path join in setup.py #1529 (shihabuddinbuet)
- Add roadmap to documentation #1528 (woop)
- Add test matrix for different Python versions #1526 (woop)
- Update broken urls in the github pr template file #1521 (tedhtchang)
- Add a fixed timestamp to quickstart data #1513 (jklegar)
- Make gcp imports optional #1512 (jklegar)
- Fix documentation inconsistency #1510 (jongillham)
- Upgrade grpcio version in python SDK #1508 (szalai1)
- pre-commit command typo fix in CONTRIBUTING.md #1506 (mavysavydav)
- Add optional telemetry to other CLI commands #1505 (jklegar)