Skip to content

Commit

Permalink
feat: Add Rockset as an OnlineStore
Browse files Browse the repository at this point in the history
This commit adds Rockset as a contributed online store. It implements the
Update, Teardown, Read and Write apis using the Rockset pythonn client.

Signed-off-by: Daniel Lin <[email protected]>
  • Loading branch information
danielin917 committed Dec 19, 2022
1 parent 1d3c111 commit 2b6c591
Show file tree
Hide file tree
Showing 17 changed files with 1,065 additions and 399 deletions.
2 changes: 2 additions & 0 deletions docs/SUMMARY.md
Original file line number Diff line number Diff line change
Expand Up @@ -89,13 +89,15 @@
* [Overview](reference/online-stores/overview.md)
* [SQLite](reference/online-stores/sqlite.md)
* [Snowflake](reference/online-stores/snowflake.md)
* [Rockset](reference/online-stores/rockset.md)
* [Redis](reference/online-stores/redis.md)
* [Datastore](reference/online-stores/datastore.md)
* [DynamoDB](reference/online-stores/dynamodb.md)
* [Bigtable](reference/online-stores/bigtable.md)
* [PostgreSQL (contrib)](reference/online-stores/postgres.md)
* [Cassandra + Astra DB (contrib)](reference/online-stores/cassandra.md)
* [MySQL (contrib)](reference/online-stores/mysql.md)
* [Rockset (contrib)](reference/online-stores/rockset.md)
* [Providers](reference/providers/README.md)
* [Local](reference/providers/local.md)
* [Google Cloud Platform](reference/providers/google-cloud-platform.md)
Expand Down
8 changes: 8 additions & 0 deletions docs/reference/online-stores/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,10 @@ Please see [Online Store](../../getting-started/architecture-and-components/onli
[snowflake.md](snowflake.md)
{% endcontent-ref %}

{% content-ref url="rockset.md" %}
[rockset.md](rockset.md)
{% endcontent-ref %}

{% content-ref url="redis.md" %}
[redis.md](redis.md)
{% endcontent-ref %}
Expand Down Expand Up @@ -42,3 +46,7 @@ Please see [Online Store](../../getting-started/architecture-and-components/onli
[mysql.md](mysql.md)
{% endcontent-ref %}

{% content-ref url="mysql.md" %}
[rockset.md](rockset.md)
{% endcontent-ref %}

36 changes: 36 additions & 0 deletions docs/reference/online-stores/rockset.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Rockset

## Description

*Alpha Development

The [Rockset](https://rockset.com/demo-signup/) online store provides supports for materializing feature values within a Rockset collection for serving online features in real-time.

* Each document is uniquely identified by it's _id value. Repeated inerts into the same document will result in an upsert.

Rockset indexes all columns allowing for quick per feature look up and also allows for a dynamic typed schema that can change based on any new requirements. ApiKeys can be found in the console
along with host urls which you can find in "View Region Endpoint Urls".
Data Model Used Per Doc
{
"_id": (STRING) -- Unique Identifier for the feature document
<key_name>: (STRING) -- Feature Values Mapped by Feature Name. Feature values stored as serialized hex string.
....
"event_ts": (STRING) -- ISO Stringified Timestamp
"created_ts": (STRING) -- ISO Stringified Timestamp
}


## Example

{% code title="feature_store.yaml" %}
```yaml
project: my_feature_app
registry: data/registry.db
provider: local
online_stores
type: rockset
apikey: MY_APIKEY_HERE
host: api.usw2a1.rockset.com
```
{% encode %}
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
feast.infra.online\_stores.contrib.rockset\_online\_store package
=================================================================

Submodules
----------

feast.infra.online\_stores.contrib.rockset\_online\_store.rockset module
------------------------------------------------------------------------

.. automodule:: feast.infra.online_stores.contrib.rockset_online_store.rockset
:members:
:undoc-members:
:show-inheritance:

Module contents
---------------

.. automodule:: feast.infra.online_stores.contrib.rockset_online_store
:members:
:undoc-members:
:show-inheritance:
9 changes: 9 additions & 0 deletions sdk/python/docs/source/feast.infra.online_stores.contrib.rst
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@ Subpackages
feast.infra.online_stores.contrib.cassandra_online_store
feast.infra.online_stores.contrib.hbase_online_store
feast.infra.online_stores.contrib.mysql_online_store
feast.infra.online_stores.contrib.rockset_online_store

Submodules
----------
Expand Down Expand Up @@ -54,6 +55,14 @@ feast.infra.online\_stores.contrib.postgres\_repo\_configuration module
:undoc-members:
:show-inheritance:

feast.infra.online\_stores.contrib.rockset\_repo\_configuration module
----------------------------------------------------------------------

.. automodule:: feast.infra.online_stores.contrib.rockset_repo_configuration
:members:
:undoc-members:
:show-inheritance:

Module contents
---------------

Expand Down
Empty file.
Loading

0 comments on commit 2b6c591

Please sign in to comment.