chromeperf: Noise calculation dataflow pipeline.

Generates noise_by_* tables BigQuery with kurtosis, skewness, etc values
for measurements in chromeperf over the specified number of days.

Briefly, the pipeline:

1. Scrapes the last N days of sample_values from the 'rows'
   table in BigQuery.
2. Groups all the samples for a measurement together.
3. Summarizes those sample sets with scipy.stats.describe.
4. Writes the result back to BigQuery in noise_by_* tables.

This is a pretty simple process, so a lot of the code here is
boilerplate for massaging data structures into the right shape for each
step.

Change-Id: Ic2588ad663468cb02b976c9cba46e67cff5bd9be
Reviewed-on: https://chromium-review.googlesource.com/c/catapult/+/2838565
Commit-Queue: Andrew Bennetts <abennetts@google.com>
Reviewed-by: Dean Berris <dberris@chromium.org>
3 files changed
tree: 7efed7c758c36d9d786bb5881941b14ad7989b72
  1. bin/
  2. catapult_build/
  3. common/
  4. dashboard/
  5. dependency_manager/
  6. devil/
  7. docs/
  8. experimental/
  9. firefighter/
  10. hooks/
  11. infra/
  12. netlog_viewer/
  13. systrace/
  14. telemetry/
  15. third_party/
  16. trace_processor/
  17. tracing/
  18. web_page_replay_go/
  19. .eslintignore
  20. .eslintrc
  21. .gcloudignore
  22. .gitignore
  23. .vpython
  24. AUTHORS
  25. BUILD.gn
  26. codereview.settings
  27. CONTRIBUTING.md
  28. DIR_METADATA
  29. generate_telemetry_build.py
  30. LICENSE
  31. navbar.md
  32. OWNERS
  33. PRESUBMIT.py
  34. pylintrc
  35. README.md
  36. WATCHLISTS
README.md

Catapult

Catapult is the home for several performance tools that span from gathering, displaying and analyzing performance data. This includes:

These tools were created by Chromium developers for performance analysis, testing, and monitoring of Chrome, but they can also be used for analyzing and monitoring websites, and eventually Android apps.

Contributing

Please see our contributor's guide