◐ Shell
clean mode source ↗

feat: Implementing online_read for MilvusOnlineStore by franciscojavierarceo · Pull Request #4996 · feast-dev/feast

Conversation

@franciscojavierarceo

What this PR does / why we need it:

This pull request includes several updates and improvements to the Feast project, focusing on the integration and enhancement of the Milvus online store. Below is a detailed summary of the changes made:

  1. Examples Update

    • README.md: Modified the materialization steps for features into the online store by switching to Python code snippets.
    • milvus-quickstart.ipynb: Format change.
  2. Milvus Online Store Enhancements

    • milvus.py:
      • Removed unused imports.
      • Added VALUE_TYPE_TO_PROTO_VALUE_MAP for mapping value types.
      • Introduced a new method _get_composite_key_name to generate composite key names.
      • Updated methods to utilize _get_composite_key_name for consistency.
      • Implemented the online_read method to handle reading from the Milvus online store.
      • Improved the _extract_proto_values_to_dict method to handle more numeric types and serialization.
  3. Type Map Enhancements

    • type_map.py:
      • Added VALUE_TYPE_TO_PROTO_VALUE_MAP for better type conversion.
  4. Feast Types Enhancements

    • types.py:
      • Introduced from_feast_type method to convert Feast types to ValueType.
  5. Example Repository Updates

    • example_feature_repo_1.py:
      • Updated the schema for document_embeddings to include vector index and search metric attributes.
  6. Unit Tests Enhancements

    • test_online_retrieval.py:
      • Modified test_get_online_features for better readability.
      • Added comprehensive tests for Milvus online features retrieval.
      • Added skipping marker for test_local_milvus due to CI issues.

Testing

  • Comprehensive unit tests have been added and modified to ensure the functionality of the changes made.
  • Manual testing was performed to validate the integration with the Milvus online store.

Which issue(s) this PR fixes:

Another for #4364

Misc

  • The test_local_milvus has been marked to be skipped due to CI struggles. Further investigation is needed to address this.
Signed-off-by: Francisco Javier Arceo <farceo@redhat.com>
Signed-off-by: Francisco Javier Arceo <farceo@redhat.com>
Signed-off-by: Francisco Javier Arceo <farceo@redhat.com>

shuchu

lokeshrangineni

full_feature_names=False,
)

# TODO: Need to fix these tests to actually run corecctly.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

does this needs to revisit now or later?

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Was going to handle that in a follow up PR too. Trying to get a release out soon was the main reason.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Removed.

Signed-off-by: Francisco Javier Arceo <farceo@redhat.com>
Signed-off-by: Francisco Javier Arceo <farceo@redhat.com>
Signed-off-by: Francisco Javier Arceo <farceo@redhat.com>

shuchu

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

@dmartinol

amazing example notebook, thank you! 💯

Labels