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

destination harness #25030

Merged
merged 75 commits into from
May 16, 2023
Merged

destination harness #25030

merged 75 commits into from
May 16, 2023

Conversation

rodireich
Copy link
Contributor

@rodireich rodireich commented Apr 10, 2023

What

Adds functionality for destination performance harness. It includes the ability to run a Github Actions comment that will be updated

How

  • Uses K8s to spin up a cluster that contains a harness pod that acts like the platform
  • Uses the harness pod to kick off another pod that contains a destination connector
  • Data is pulled in from a remote CSV file and buffered within the pod
  • Data is converted to jsonRecords that are send into the destination connector

@rodireich

This comment was marked as outdated.

@rodireich

This comment was marked as outdated.

@rodireich

This comment was marked as outdated.

@rodireich

This comment was marked as outdated.

@rodireich

This comment was marked as duplicate.

@rodireich

This comment was marked as outdated.

@rodireich

This comment was marked as outdated.

@rodireich

This comment was marked as outdated.

rodireich and others added 2 commits May 15, 2023 14:11
…s/README.md

Co-authored-by: Davin Chia <davinchia@gmail.com>
Copy link
Contributor

@davinchia davinchia left a comment

Choose a reason for hiding this comment

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

Thanks @rodireich !

I mainly looked at the GHA set up and the PerformanceTest.java class. Most of my comments are readability and non-blocking. Let me know if you would like another review before you merge!

rodireich and others added 3 commits May 15, 2023 14:33
…java/io/airbyte/integrations/destination/e2e_test/TestingDestinations.java

Co-authored-by: Davin Chia <davinchia@gmail.com>
@rodireich
Copy link
Contributor Author

rodireich commented May 16, 2023

Thanks for reviewing @davinchia and @ryankfu
Trying to wrap this up as quickly as I can to get it merged

@ryankfu
Copy link
Contributor

ryankfu commented May 16, 2023

/connector-performance connector=connectors/destination-snowflake ref=rodi/destination-performance

Note: The following dataset= values are supported: 1m(default), 10m, 20m, bottleneck_stream1

🏃 connectors/destination-snowflake https://github.com/airbytehq/airbyte/actions/runs/4987789896

Performance test Result:

{"type":"LOG","log":{"level":"INFO","message":"INFO i.a.i.d.PerformanceTest(computeThroughput):182 total secs: 63.859. total MB read: 344.5901937484741, rps: 15659.49983557525, throughput: 5.396110082345074

@ryankfu ryankfu enabled auto-merge (squash) May 16, 2023 04:23
@airbytehq airbytehq deleted a comment from jcowanpdx May 16, 2023
@rodireich
Copy link
Contributor Author

rodireich commented May 16, 2023

/connector-performance connector=connectors/destination-snowflake ref=rodi/destination-performance

Note: The following dataset= values are supported: 1m(default), 10m, 20m, bottleneck_stream1

🏃 connectors/destination-snowflake https://github.com/airbytehq/airbyte/actions/runs/4988027434

Performance test Result:

{"type":"LOG","log":{"level":"INFO","message":"INFO i.a.i.d.PerformanceTest(computeThroughput):182 total secs: 66.266. total MB read: 344.5901937484741, rps: 15090.695077415265, throughput: 5.200105540525671

@rodireich
Copy link
Contributor Author

Thank you so much @ryankfu !!

@@ -97,7 +98,7 @@ static String getDatasource(final String dataset, final String connector) throws
log.info("datasourceFilename {}", datasourceFilename);
try (final var reader =
new BufferedReader(new InputStreamReader(Objects.requireNonNull(
Thread.currentThread().getContextClassLoader().getResourceAsStream(datasourceFilename))))) {
Thread.currentThread().getContextClassLoader().getResourceAsStream(datasourceFilename)), StandardCharsets.UTF_8))) {
Copy link
Contributor

Choose a reason for hiding this comment

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

😆 I was just about to push this change up too, thanks for fixing this first

Copy link
Contributor Author

Choose a reason for hiding this comment

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

great minds, eh?

@ryankfu ryankfu merged commit 6374f47 into master May 16, 2023
22 of 23 checks passed
@ryankfu ryankfu deleted the rodi/destination-performance branch May 16, 2023 06:37
marcosmarxm pushed a commit to natalia-miinto/airbyte that referenced this pull request Jun 8, 2023
* destination harness

* Automated Commit - Formatting Changes

* refactor to support multiple connectors

* better byte counting

* Automated Change

* fix main cp

* harness type

* harness type

* harness type

* harness type

* harness type

* harness type

* harness type

* speed up harness build

* harness type

* harness type

* harness type

* harness type

* 1m catalog

* 1m catalog

* Automated Commit - Formatting Changes

* 1m catalog

* Automated Commit - Formatting Changes

* 1m catalog

* Automated Commit - Formatting Changes

* 1m catalog

* 1m catalog

* Automated Commit - Formatting Changes

* 1m catalog

* Automated Commit - Formatting Changes

* Automated Change

* add some additional logging for debugging

* test

* test

* debugging code

* Automated Commit - Formatting Changes

* debugging code

* debugging code

* debugging code

* Automated Commit - Formatting Changes

* Checkpoint: This is working!.

* Automated Commit - Formatting Changes

* Updates plumbing for Snowflake with static records - Working

* Automated Commit - Formatting Changes

* working 10m

* Automated Commit - Formatting Changes

* add destination datasource

* Automated Commit - Formatting Changes

* sanity

* sanity

* Delete 1m_catalog.json

* sanity

* Update airbyte-integrations/connectors-performance/destination-harness/README.md

Co-authored-by: Davin Chia <davinchia@gmail.com>

* sanity

* Update airbyte-integrations/connectors/destination-e2e-test/src/main/java/io/airbyte/integrations/destination/e2e_test/TestingDestinations.java

Co-authored-by: Davin Chia <davinchia@gmail.com>

* Splits performance harness into separated methods

* Automated Commit - Formatting Changes

* Updates test description to force Github builds

---------

Co-authored-by: rodireich <rodireich@users.noreply.github.com>
Co-authored-by: Jeff Cowan (Airbyte) <4992320+jcowanpdx@users.noreply.github.com>
Co-authored-by: Davin Chia <davinchia@gmail.com>
Co-authored-by: davinchia <davinchia@users.noreply.github.com>
Co-authored-by: ryankfu <ryan.fu@airbyte.io>
Co-authored-by: ryankfu <ryankfu@users.noreply.github.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.

None yet

5 participants