-
Notifications
You must be signed in to change notification settings - Fork 3.3k
feat(ingest): Feast integration #2605
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
shirshanka
merged 110 commits into
datahub-project:master
from
kevinhu:feast-integration
Jun 9, 2021
Merged
Changes from 1 commit
Commits
Show all changes
110 commits
Select commit
Hold shift + click to select a range
e915ee0
Add feast testing setup
kevinhu c193107
Init Feast test script
kevinhu 8ad6c30
Add feast to dependencies
kevinhu 0f6a674
Update feast descriptors
kevinhu a94ccef
Sort integrations
kevinhu 471fe1b
Working feast pytest
kevinhu afd2aa1
Clean up feast docker-compose file
kevinhu 65d3d52
Expand Feast tests
kevinhu 4212acb
Setup feast classes
kevinhu f4f431f
Add continuous and bytes data to feature types
kevinhu 4790882
Update field type mapping
kevinhu afe1fe1
Add PDLs
kevinhu 60f8b99
Add MLFeatureSetUrn.java
kevinhu 65744b7
Comment out feast setup
kevinhu 4293385
Add snapshot file and update inits
kevinhu 140c026
Merge
kevinhu 9217feb
Init Feast golden files generation
kevinhu e56a3c3
Clean up Feast ingest
kevinhu 7e8c57c
Feast testing comments
kevinhu 0bc5531
Merge branch 'master' of github.com:kevinhu/datahub into feast-integr…
kevinhu 98f3e6d
Yield Feature snapshots
kevinhu 97847e5
Fix Feature URN naming
kevinhu d3f2698
Update feast MCE
kevinhu e852809
Update Feature URN prefix
kevinhu 239b6fa
Merge branch 'master' of github.com:kevinhu/datahub into feast-integr…
kevinhu b35feac
Add MLEntity
kevinhu 86c9e7a
Update golden files with entities
kevinhu 73139ec
Specify feast sources
kevinhu 8db06b4
Add feast source configs
kevinhu 7a52f4a
Working feast docker ingestion
kevinhu d49cf03
Merge branch 'linkedin:master' into feast-integration
kevinhu 4192fde
Merge branch 'master' of github.com:kevinhu/datahub into feast-integr…
kevinhu 4c5da86
List entities and features before adding tables
kevinhu adc3186
Add featureset names
kevinhu 62f0bc2
Remove unused
kevinhu dd35065
Rename feast image
kevinhu 95b944d
Update README
kevinhu 9138d33
Merge branch 'master' of https://github.com/linkedin/datahub into fea…
kevinhu 1c64525
Add env to feast URNs
kevinhu 857b620
Fix URN naming
kevinhu c317dd2
Remove redundant URN names
kevinhu d664006
Fix enum backcompatibility
kevinhu 908ba6a
Move feast testing to docker
kevinhu ca9fe80
Move URN generators to mce_builder
kevinhu 8d2270a
Add source for features
kevinhu 3205d36
Switch TypeClass -> enum_type
kevinhu 903eb59
Rename source -> sourceDataset
kevinhu 1a68b53
Add local Feast ingest image builds
kevinhu 80b147a
Rename Entity -> MLPrimaryKey
kevinhu 1716cec
Restore features and keys for each featureset
kevinhu b57a5f5
Do not json encode source configs
kevinhu 6b1ceb2
Remove old source properties from feature sets
kevinhu b210599
Regenerate golden file
kevinhu d0372d9
Fix race condition with Feast tests
kevinhu 4c99f83
Exclude unknown source
kevinhu 39733d9
Merge branch 'master' of https://github.com/linkedin/datahub into fea…
kevinhu 4fac64b
Update feature datatype enum
kevinhu 13d1aa9
Update README and fix typos
kevinhu b8e57c9
Fix Entity typo
kevinhu 7bcb799
Fix path to local docker image
kevinhu 1d0d7a7
Specify feast config and version
kevinhu b0e056f
Fix feast env variables
kevinhu e51f9a4
PR fixes
kevinhu 716a8e6
Refactor feast ingest constants
kevinhu ed76075
Make feature sources optional for back-compatibility
kevinhu 0e78ed9
Remove unused GCP files
kevinhu f3a4bdb
Merge branch 'master' of https://github.com/linkedin/datahub into fea…
kevinhu 47fced1
adding docker publish workflow
shirshanka 6559e5e
Simplify name+namespace in PrimaryKeys
kevinhu 5efc917
Merge branch 'feast-integration' of github.com:acryldata/datahub-fork…
kevinhu 9c8f45b
adding docker publish workflow
shirshanka 6ac9718
debug
shirshanka a51b467
final attempt
shirshanka e310f19
final final attempt
shirshanka 7aefc3f
final final final commit
shirshanka 7de3330
Switch to published ingestion image
kevinhu fbc8648
Update name and namespace in java files
kevinhu d5f56fb
Rename FeatureSet -> FeatureTable
kevinhu 27f1702
Merge branch 'master' of https://github.com/linkedin/datahub into fea…
kevinhu fb0247a
Merge branch 'linkedin:master' into feast-integration
kevinhu e263085
Merge
kevinhu b42083b
Regenerate codegen
kevinhu e36a1d5
Fix initial generation errors
kevinhu 0a021e7
Update snapshot jsons
kevinhu 6d9e7d6
Regenerated schemas
kevinhu d8e69f4
Merge branch 'linkedin:master' into feast-integration
kevinhu c971322
Merge branch 'linkedin:master' into feast-integration
kevinhu 54e49bc
Fix URN formats
kevinhu fefb7db
Merge branch 'feast-integration' of github.com:kevinhu/datahub into f…
kevinhu 360edda
Revise builds
kevinhu 3f11e45
Clean up feast URN builders
kevinhu 597863d
Merge branch 'linkedin:master' into feast-integration
kevinhu 609054d
Fix naming typos
kevinhu 810a640
Merge branch 'feast-integration' of github.com:kevinhu/datahub into f…
kevinhu b629aad
Fix Feature Set -> Feature Table
kevinhu 3f5e083
Fix comments
kevinhu 3f19c47
PR fixes
kevinhu e314de3
Merge branch 'linkedin:master' into feast-integration
kevinhu ca85381
All you need is Urn
kevinhu 4e8cb2e
Regenerate snapshots and update validation
kevinhu 1494205
Add UNKNOWN data type
kevinhu bd64aac
URNs for source types
kevinhu 4ae725b
Add note on docker requirement
kevinhu a646766
Fix typo
kevinhu 249a69d
Reorder aspect unions
kevinhu 7d4ed43
Refactor feast ingest functions
kevinhu fb3c726
Update snapshot jsons
kevinhu f155294
Merge branch 'linkedin:master' into feast-integration
kevinhu 5e4d778
Merge branch 'linkedin:master' into feast-integration
kevinhu 4726ac1
Rebuild
kevinhu File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Next
Next commit
Add feast testing setup
- Loading branch information
commit e915ee0ed5a0b45af6fa654bbbcd25aa4d8a2aba
There are no files selected for viewing
Empty file.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,5 @@ | ||
| spring: | ||
| datasource: | ||
| url: jdbc:postgresql://${DB_HOST:127.0.0.1}:${DB_PORT:5432}/${DB_DATABASE:postgres} | ||
| username: ${DB_USERNAME:postgres} | ||
| password: ${DB_PASSWORD:password} |
118 changes: 118 additions & 0 deletions
118
metadata-ingestion/tests/integration/feast/docker-compose.yml
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,118 @@ | ||
| version: "3.7" | ||
|
|
||
| services: | ||
| core: | ||
| image: gcr.io/kf-feast/feast-core:${FEAST_VERSION} | ||
| volumes: | ||
| - ${FEAST_CORE_CONFIG}:/etc/feast/application.yml | ||
| environment: | ||
| DB_HOST: db | ||
| restart: on-failure | ||
| depends_on: | ||
| - db | ||
| ports: | ||
| - 6565:6565 | ||
| command: | ||
| - java | ||
| - -jar | ||
| - /opt/feast/feast-core.jar | ||
| - --spring.config.location=classpath:/application.yml,file:/etc/feast/application.yml | ||
|
|
||
| jobservice: | ||
| image: gcr.io/kf-feast/feast-jobservice:${FEAST_VERSION} | ||
| depends_on: | ||
| - core | ||
| ports: | ||
| - 6568:6568 | ||
| volumes: | ||
| - $PWD:/shared | ||
| environment: | ||
| FEAST_CORE_URL: core:6565 | ||
| FEAST_SERVING_URL: online_serving:6566 | ||
| FEAST_SPARK_LAUNCHER: standalone | ||
| FEAST_SPARK_STANDALONE_MASTER: local | ||
| FEAST_SPARK_HOME: /usr/local/spark | ||
| FEAST_SPARK_STAGING_LOCATION: file:///shared/staging | ||
| FEAST_HISTORICAL_FEATURE_OUTPUT_LOCATION: file:///shared/historical_feature_output | ||
| FEAST_HISTORICAL_FEATURE_OUTPUT_FORMAT: parquet | ||
| FEAST_REDIS_HOST: redis | ||
| FEAST_SPARK_INGESTION_JAR: ${INGESTION_JAR_PATH} | ||
| FEAST_STATSD_ENABLED: "true" | ||
| FEAST_STATSD_HOST: prometheus_statsd | ||
| FEAST_STATSD_PORT: 9125 | ||
|
|
||
| jupyter: | ||
| image: gcr.io/kf-feast/feast-jupyter:${FEAST_VERSION} | ||
| volumes: | ||
| - ${GCP_SERVICE_ACCOUNT}:/etc/gcloud/service-accounts/key.json | ||
| - $PWD:/shared | ||
| depends_on: | ||
| - core | ||
| environment: | ||
| FEAST_CORE_URL: core:6565 | ||
| FEAST_SERVING_URL: online_serving:6566 | ||
| FEAST_SPARK_LAUNCHER: standalone | ||
| FEAST_SPARK_STANDALONE_MASTER: local | ||
| FEAST_SPARK_HOME: /usr/local/spark | ||
| FEAST_SPARK_STAGING_LOCATION: file:///shared/staging | ||
| FEAST_HISTORICAL_FEATURE_OUTPUT_LOCATION: file:///shared/historical_feature_output | ||
| FEAST_HISTORICAL_FEATURE_OUTPUT_FORMAT: parquet | ||
| FEAST_REDIS_HOST: redis | ||
| GOOGLE_APPLICATION_CREDENTIALS: /etc/gcloud/service-accounts/key.json | ||
| ports: | ||
| - 8888:8888 | ||
|
|
||
| kafka: | ||
| image: confluentinc/cp-kafka:5.2.1 | ||
| environment: | ||
| KAFKA_ZOOKEEPER_CONNECT: zookeeper:2181 | ||
| KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR: 1 | ||
| KAFKA_ADVERTISED_LISTENERS: INSIDE://kafka:9092,OUTSIDE://localhost:9094 | ||
| KAFKA_LISTENERS: INSIDE://:9092,OUTSIDE://:9094 | ||
| KAFKA_LISTENER_SECURITY_PROTOCOL_MAP: INSIDE:PLAINTEXT,OUTSIDE:PLAINTEXT | ||
| KAFKA_INTER_BROKER_LISTENER_NAME: INSIDE | ||
| ports: | ||
| - "9092:9092" | ||
| - "9094:9094" | ||
|
|
||
| depends_on: | ||
| - zookeeper | ||
|
|
||
| zookeeper: | ||
| image: confluentinc/cp-zookeeper:5.2.1 | ||
| environment: | ||
| ZOOKEEPER_CLIENT_PORT: 2181 | ||
|
|
||
| db: | ||
| image: postgres:12-alpine | ||
| environment: | ||
| POSTGRES_PASSWORD: password | ||
| ports: | ||
| - "5432:5432" | ||
|
|
||
| online_serving: | ||
| image: gcr.io/kf-feast/feast-serving:${FEAST_VERSION} | ||
| volumes: | ||
| - ${FEAST_ONLINE_SERVING_CONFIG}:/etc/feast/application.yml | ||
| depends_on: | ||
| - core | ||
| - redis | ||
| ports: | ||
| - 6566:6566 | ||
| restart: on-failure | ||
| command: | ||
| - java | ||
| - -jar | ||
| - /opt/feast/feast-serving.jar | ||
| - --spring.config.location=classpath:/application.yml,file:/etc/feast/application.yml | ||
|
|
||
| redis: | ||
| image: redis:5-alpine | ||
| ports: | ||
| - "6379:6379" | ||
|
|
||
| prometheus_statsd: | ||
| image: prom/statsd-exporter:v0.12.1 | ||
| ports: | ||
| - "9125:9125" | ||
| - "9102:9102" |
4 changes: 4 additions & 0 deletions
4
metadata-ingestion/tests/integration/feast/gcp-service-accounts/placeholder.json
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,4 @@ | ||
| { | ||
| "type": "service_account", | ||
| "project_id": "just-some-project" | ||
| } |
6 changes: 6 additions & 0 deletions
6
metadata-ingestion/tests/integration/feast/serving/online-serving.yml
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,6 @@ | ||
| COMPOSE_PROJECT_NAME=feast | ||
| FEAST_VERSION=develop | ||
| FEAST_CORE_CONFIG=./core/core.yml | ||
| FEAST_ONLINE_SERVING_CONFIG=./serving/online-serving.yml | ||
| GCP_SERVICE_ACCOUNT=./gcp-service-accounts/placeholder.json | ||
| INGESTION_JAR_PATH=https://storage.googleapis.com/feast-jobs/spark/ingestion/feast-ingestion-spark-develop.jar | ||
Empty file.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.