Comments (7)
@shahar1 sounds like you've got a decent idea/design in mind, which could be supported.
Are you interested in contributing? Feel free to start and include me on PRs, if that's the case.
from beam.
.take-issue
from beam.
@shahar1 this level of customization might make sense.
Let's explore your specific concern for a moment, I might have others, but imagine worth understanding your needs/usecase:
What Quotas are getting hit that are problematic? Or, what are the specific billing charges you are looking to attribute elsewhere?
Your are running on Dataflow? Or other? [ not critical, but curious ]
What read method? [ BQ Storage Read API? ]
You want to run the compute in one GCP project, but use BQ from another? If this unloads, writes to GCS and then into Dataflow [ that is another way that can occur ], do you intend to specify which project [ bucket within ] that the data is written?
from beam.
Also, I wonder whether implimentation of this issue would help with #30747
from beam.
@shahar1 this level of customization might make sense.
Let's explore your specific concern for a moment, I might have others, but imagine worth understanding your needs/usecase:
What Quotas are getting hit that are problematic? Or, what are the specific billing charges you are looking to attribute elsewhere? Your are running on Dataflow? Or other? [ not critical, but curious ] What read method? [ BQ Storage Read API? ] You want to run the compute in one GCP project, but use BQ from another? If this unloads, writes to GCS and then into Dataflow [ that is another way that can occur ], do you intend to specify which project [ bucket within ] that the data is written?
Thank for your response! Here are the answers for your questions:
- I'd like to attribute the queries execution to another project. In my case, the BigQuery is on project A, and
beam.io.ReadFromBigQuery
runs on project B - I'd like to bill project B for the queries (for that matter it could also be project C). - We use Dataflow and direct runner (when implementing, it should better a be a general solution and not Dataflow specific).
- I use both methods - if I'm not wrong, in both cases you could set the
quota_project_id
viaClientOptions
. - Yup, you got the idea correctly :)
As for #30747 - it is related, but there might be some changes in implementation as GCS is project's resource rather than a service.
from beam.
@shahar1 sounds like you've got a decent idea/design in mind, which could be supported.
Are you interested in contributing? Feel free to start and include me on PRs, if that's the case.
I'd be happy to try!
I need first to learn how development works here (I'm coming from the Airflow community)
from beam.
This should be pretty good --> https://github.com/apache/beam/blob/master/CONTRIBUTING.md
If you find a problem [ or that is outdated ], let's overcome and fix the docs along the way.
from beam.
Related Issues (20)
- [Bug]: KafkaIO Should not throw errors for empty topics.
- [Bug]: SolaceIO.Read: clients are not properly closed. HOT 1
- [Task][Prism]: Create a PrismRunnerRegistrar
- The StressTests Java BigQueryIO job is flaky
- [Bug]: Beam YAML provider parsing breakage
- [prism] Metrics from runner expanded composites aren't mapped back to user terms.
- [Bug]: CoGroupByKey throws with large (10K+) output groups on Flink runner HOT 2
- [Failing Test]: Python BigQuery Test - PipelineBasedStreamingInsertTest::tes_batch_size_with_auto_sharding_0 is flaky
- [Feature Request]: add support for Datastore Database ID in Python SDK
- [prism] Java PipelineTest: Unknown Urn "ProjectTag", "IdentityTransform" - Support "Empty" Composites without subtransforms.
- [prism] Preprocess failure - Expected Runner Flatten Node - but wasn't
- [Bug]: Java SDK BigQueryIO's RowMutationInformation class is not backward compatible with previous releases
- [CsvIO]: Update class for representing date-times in CsvIOParseHelpers::parseCell(String, Schema.Field)
- [Failing Test]: testRedistributeAfterSlidingWindows incorrect HOT 2
- [Bug]: Failed to restore state on Flink runner HOT 1
- [Bug]: Portable runner queryMetrics returns duplicate result
- [prism] Support Empty Flattens as Side Input - no way to make progress with pending elements
- [prism] Java and Python SplittableDoFnTests - invalid stream header (likely coders)
- [CsvIO]: Add CsvIORecordToObjects Class
- Performance Regression or Improvement: pytorch_image_classification_benchmarks-resnet101-mean_load_model_latency_milli_secs:mean_load_model_latency_milli_secs
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from beam.