Skip to content
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

Configurable materialization destination for view in BigQuerySource #1201

Merged

Conversation

pyalex
Copy link
Collaborator

@pyalex pyalex commented Nov 30, 2020

Signed-off-by: Oleksii Moskalenko moskalenko.alexey@gmail.com

What this PR does / why we need it:

When using BQ view as source for historical retrieval and batch ingestion there could be an issue with permissions. Since spark-bq connector first needs to materialize view before read it - it requires "create table" access, which could be problematic when view is located in different / uncontrolled project.

This PR introduces two configuration options

SPARK_BQ_MATERIALIZATION_PROJECT
SPARK_BQ_MATERIALIZATION_DATASET

that will be passed to both ingestion & historical retrieval jobs. This will make possible to use project / dataset where feast project has permissions to create table.

Which issue(s) this PR fixes:

Fixes #

Does this PR introduce a user-facing change?:

New configuration options

    #: The project id where the materialized view of BigQuerySource is going to be created
    #: by default, use the same project where view is located
    SPARK_BQ_MATERIALIZATION_PROJECT: Optional[str] = None

    #: The dataset id where the materialized view of BigQuerySource is going to be created
    #: by default, use the same dataset where view is located
    SPARK_BQ_MATERIALIZATION_DATASET: Optional[str] = None

Signed-off-by: Oleksii Moskalenko <moskalenko.alexey@gmail.com>
Signed-off-by: Oleksii Moskalenko <moskalenko.alexey@gmail.com>
Signed-off-by: Oleksii Moskalenko <moskalenko.alexey@gmail.com>
@feast-ci-bot
Copy link
Collaborator

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: khorshuheng, pyalex

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@khorshuheng
Copy link
Collaborator

/lgtm

@pyalex pyalex added the kind/feature New feature or request label Nov 30, 2020
@feast-ci-bot feast-ci-bot merged commit 66e6952 into feast-dev:master Nov 30, 2020
pyalex added a commit that referenced this pull request Dec 4, 2020
…1201)

* configurable materialization destination

Signed-off-by: Oleksii Moskalenko <moskalenko.alexey@gmail.com>

* use materialization options in batch ingestion

Signed-off-by: Oleksii Moskalenko <moskalenko.alexey@gmail.com>

* fix no default value

Signed-off-by: Oleksii Moskalenko <moskalenko.alexey@gmail.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants