10000 python-docs-samples/dataproc at master · robbertbrouwers/python-docs-samples · GitHub
[go: up one dir, main page]

Skip to content
{"payload":{"allShortcutsEnabled":false,"path":"dataproc","repo":{"id":170870092,"defaultBranch":"master","name":"python-docs-samples","ownerLogin":"robbertbrouwers","currentUserCanPush":false,"isFork":true,"isEmpty":false,"createdAt":"2019-02-15T13:34:27.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/2469570?v=4","public":true,"private":false,"isOrgOwned":false},"currentUser":null,"refInfo":{"name":"master","listCacheKey":"v0:1616043807.44487","canEdit":false,"refType":"branch","currentOid":"1980f31828104d9c39ed4ee11239b1a95ce1f00c"},"tree":{"items":[{"name":"README.md","path":"dataproc/README.md","contentType":"file"},{"name":"dataproc_e2e_test.py","path":"dataproc/dataproc_e2e_test.py","contentType":"file"},{"name":"list_clusters.py","path":"dataproc/list_clusters.py","contentType":"file"},{"name":"pyspark_sort.py","path":"dataproc/pyspark_sort.py","contentType":"file"},{"name":"pyspark_sort_gcs.py","path":"dataproc/pyspark_sort_gcs.py","contentType":"file"},{"name":"python-api-walkthrough.md","path":"dataproc/python-api-walkthrough.md","contentType":"file"},{"name":"requirements.txt","path":"dataproc/requirements.txt","contentType":"file"},{"name":"submit_job_to_cluster.py","path":"dataproc/submit_job_to_cluster.py","contentType":"file"}],"templateDirectorySuggestionUrl":null,"readme":{"displayName":"README.md","richText":"\u003carticle class=\"markdown-body entry-content container-lg\" itemprop=\"text\"\u003e\u003cdiv class=\"markdown-heading\" dir=\"auto\"\u003e\u003ch1 tabindex=\"-1\" class=\"heading-element\" dir=\"auto\"\u003eCloud Dataproc API Example\u003c/h1\u003e\u003ca id=\"user-content-cloud-dataproc-api-example\" class=\"anchor\" aria-label=\"Permalink: Cloud Dataproc API Example\" href=\"#cloud-dataproc-api-example\"\u003e\u003csvg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"\u003e\u003cpath d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"\u003e\u003c/path\u003e\u003c/svg\u003e\u003c/a\u003e\u003c/div\u003e\n\u003cp dir=\"auto\"\u003e\u003ca href=\"https://console.cloud.google.com/cloudshell/open?git_repo=https://github.com/GoogleCloudPlatform/python-docs-samples\u0026amp;page=editor\u0026amp;open_in_editor=dataproc/README.md\" rel=\"nofollow\"\u003e\u003cimg src=\"https://camo.githubusercontent.com/cf29981159f3fb8f7d5c5ce0a4a4ab3d2a8e500b782d2016717c3e4aa6124bc5/687474703a2f2f677374617469632e636f6d2f636c6f75647373682f696d616765732f6f70656e2d62746e2e706e67\" alt=\"Open in Cloud Shell\" data-canonical-src=\"http://gstatic.com/cloudssh/images/open-btn.png\" style=\"max-width: 100%;\"\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp dir=\"auto\"\u003eSample command-line programs for interacting with the Cloud Dataproc API.\u003c/p\u003e\n\u003cp dir=\"auto\"\u003ePlease see \u003ca href=\"https://cloud.google.com/dataproc/docs/tutorials/python-library-example\" rel=\"nofollow\"\u003ethe tutorial on the using the Dataproc API with the Python client\nlibrary\u003c/a\u003e\nfor more information.\u003c/p\u003e\n\u003cp dir=\"auto\"\u003eNote that while this sample demonstrates interacting with Dataproc via the API, the functionality\ndemonstrated here could also be accomplished using the Cloud Console or the gcloud CLI.\u003c/p\u003e\n\u003cp dir=\"auto\"\u003e\u003ccode\u003elist_clusters.py\u003c/code\u003e is a simple command-line program to demonstrate connecting to the\nDataproc API and listing the clusters in a region\u003c/p\u003e\n\u003cp dir=\"auto\"\u003e\u003ccode\u003ecreate_cluster_and_submit_job.py\u003c/code\u003e demonstrates how to create a cluster, submit the\n\u003ccode\u003epyspark_sort.py\u003c/code\u003e job, download the output from Google Cloud Storage, and output the result.\u003c/p\u003e\n\u003cp dir=\"auto\"\u003e\u003ccode\u003epyspark_sort.py_gcs\u003c/code\u003e is the asme as \u003ccode\u003epyspark_sort.py\u003c/code\u003e but demonstrates\nreading from a GCS bucket.\u003c/p\u003e\n\u003cdiv class=\"markdown-heading\" dir=\"auto\"\u003e\u003ch2 tabindex=\"-1\" class=\"heading-element\" dir=\"auto\"\u003ePrerequisites to run locally:\u003c/h2\u003e\u003ca id=\"user-content-prerequisites-to-run-locally\" class=\"anchor\" aria-label=\"Permalink: Prerequisites to run locally:\" href=\"#prerequisites-to-run-locally\"\u003e\u003csvg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"\u003e\u003cpath d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"\u003e\u003c/path\u003e\u003c/svg\u003e\u003c/a\u003e\u003c/div\u003e\n\u003cul dir=\"auto\"\u003e\n\u003cli\u003e\u003ca href=\"https://pypi.python.org/pypi/pip\" rel=\"nofollow\"\u003epip\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp dir=\"auto\"\u003eGo to the \u003ca href=\"https://console.cloud.google.com\" rel=\"nofollow\"\u003eGoogle Cloud Console\u003c/a\u003e.\u003c/p\u003e\n\u003cp dir=\"auto\"\u003eUnder API Manager, search for the Google Cloud Dataproc API and enable it.\u003c/p\u003e\n\u003cdiv class=\"markdown-heading\" dir=\"auto\"\u003e\u003ch2 tabindex=\"-1\" class=\"heading-element\" dir=\"auto\"\u003eSet Up Your Local Dev Environment\u003c/h2\u003e\u003ca id=\"user-content-set-up-your-local-dev-environment\" class=\"anchor\" aria-label=\"Permalink: Set Up Your Local Dev Environment\" href=\"#set-up-your-local-dev-environment\"\u003e\u003csvg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"\u003e\u003cpath d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"\u003e\u003c/path\u003e\u003c/svg\u003e\u003c/a\u003e\u003c/div\u003e\n\u003cp dir=\"auto\"\u003eTo install, run the following commands. If you want to use \u003ca href=\"https://virtualenv.readthedocs.org/en/latest/\" rel=\"nofollow\"\u003evirtualenv\u003c/a\u003e\n(recommended), run the commands within a virtualenv.\u003c/p\u003e\n\u003cdiv class=\"snippet-clipboard-content notranslate position-relative overflow-auto\" data-snippet-clipboard-copy-content=\"* pip install -r requirements.txt\"\u003e\u003cpre class=\"notranslate\"\u003e\u003ccode\u003e* pip install -r requirements.txt\n\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\n\u003cdiv class=\"markdown-heading\" dir=\"auto\"\u003e\u003ch2 tabindex=\"-1\" class=\"heading-element\" dir=\"auto\"\u003eAuthentication\u003c/h2\u003e\u003ca id=\"user-content-authentication\" class=\"anchor\" aria-label=\"Permalink: Authentication\" href=\"#authentication\"\u003e\u003csvg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"\u003e\u003cpath d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"\u003e\u003c/path\u003e\u003c/svg\u003e\u003c/a\u003e\u003c/div\u003e\n\u003cp dir=\"auto\"\u003ePlease see the \u003ca href=\"https://cloud.google.com/docs/authentication/\" rel=\"nofollow\"\u003eGoogle cloud authentication guide\u003c/a\u003e.\nThe recommended approach to running these samples is a Service Account with a JSON key.\u003c/p\u003e\n\u003cdiv class=\"markdown-heading\" dir=\"auto\"\u003e\u003ch2 tabindex=\"-1\" class=\"heading-element\" dir=\"auto\"\u003eEnvironment Variables\u003c/h2\u003e\u003ca id=\"user-content-environment-variables\" class=\"anchor\" aria-label=\"Permalink: Environment Variables\" href=\"#environment-variables\"\u003e\u003csvg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"\u003e\u003cpath d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"\u003e\u003c/path\u003e\u003c/svg\u003e\u003c/a\u003e\u003c/div\u003e\n\u003cp dir=\"auto\"\u003eSet the following environment variables:\u003c/p\u003e\n\u003cdiv class=\"snippet-clipboard-content notranslate position-relative overflow-auto\" data-snippet-clipboard-copy-content=\"GOOGLE_CLOUD_PROJECT=your-project-id\nREGION=us-central1 # or your region\nCLUSTER_NAME=waprin-spark7\nZONE=us-central1-b\"\u003e\u003cpre class=\"notranslate\"\u003e\u003ccode\u003eGOOGLE_CLOUD_PROJECT=your-project-id\nREGION=us-central1 # or your region\nCLUSTER_NAME=waprin-spark7\nZONE=us-central1-b\n\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\n\u003cdiv class=\"markdown-heading\" dir=\"auto\"\u003e\u003ch2 tabindex=\"-1\" class=\"heading-element\" dir=\"auto\"\u003eRunning the samples\u003c/h2\u003e\u003ca id=\"user-content-running-the-samples\" class=\"anchor\" aria-label=\"Permalink: Running the samples\" href=\"#running-the-samples\"\u003e\u003csvg class=\"octicon octicon-link\" viewBox=\"0 0 16 16\" version=\"1.1\" width=\"16\" height=\"16\" aria-hidden=\"true\"\u003e\u003cpath d=\"m7.775 3.275 1.25-1.25a3.5 3.5 0 1 1 4.95 4.95l-2.5 2.5a3.5 3.5 0 0 1-4.95 0 .751.751 0 0 1 .018-1.042.751.751 0 0 1 1.042-.018 1.998 1.998 0 0 0 2.83 0l2.5-2.5a2.002 2.002 0 0 0-2.83-2.83l-1.25 1.25a.751.751 0 0 1-1.042-.018.751.751 0 0 1-.018-1.042Zm-4.69 9.64a1.998 1.998 0 0 0 2.83 0l1.25-1.25a.751.751 0 0 1 1.042.018.751.751 0 0 1 .018 1.042l-1.25 1.25a3.5 3.5 0 1 1-4.95-4.95l2.5-2.5a3.5 3.5 0 0 1 4.95 0 .751.751 0 0 1-.018 1.042.751.751 0 0 1-1.042.018 1.998 1.998 0 0 0-2.83 0l-2.5 2.5a1.998 1.998 0 0 0 0 2.83Z\"\u003e\u003c/path\u003e\u003c/svg\u003e\u003c/a\u003e\u003c/div\u003e\n\u003cp dir=\"auto\"\u003eTo run list_clusters.py:\u003c/p\u003e\n\u003cdiv class=\"snippet-clipboard-content notranslate position-relative overflow-auto\" data-snippet-clipboard-copy-content=\"python list_clusters.py $GOOGLE_CLOUD_PROJECT --region=$REGION\"\u003e\u003cpre class=\"notranslate\"\u003e\u003ccode\u003epython list_clusters.py $GOOGLE_CLOUD_PROJECT --region=$REGION\n\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\n\u003cp dir=\"auto\"\u003e\u003ccode\u003esubmit_job_to_cluster.py\u003c/code\u003e can create the Dataproc cluster, or use an existing one.\nIf you'd like to create a cluster ahead of time, either use the\n\u003ca href=\"/robbertbrouwers/python-docs-samples/blob/master/dataproc/console.cloud.google.com\"\u003eCloud Console\u003c/a\u003e or run:\u003c/p\u003e\n\u003cdiv class=\"snippet-clipboard-content notranslate position-relative overflow-auto\" data-snippet-clipboard-copy-content=\"gcloud dataproc clusters create your-cluster-name\"\u003e\u003cpre class=\"notranslate\"\u003e\u003ccode\u003egcloud dataproc clusters create your-cluster-name\n\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\n\u003cp dir=\"auto\"\u003eTo run submit_job_to_cluster.py, first create a GCS bucket for Dataproc to stage files, from the Cloud Console or with\ngsutil:\u003c/p\u003e\n\u003cdiv class=\"snippet-clipboard-content notranslate position-relative overflow-auto\" data-snippet-clipboard-copy-content=\"gsutil mb gs://\u0026lt;your-staging-bucket-name\u0026gt;\"\u003e\u003cpre class=\"notranslate\"\u003e\u003ccode\u003egsutil mb gs://\u0026lt;your-staging-bucket-name\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\n\u003cp dir=\"auto\"\u003eSet the environment variable's name:\u003c/p\u003e\n\u003cdiv class=\"snippet-clipboard-content notranslate position-relative overflow-auto\" data-snippet-clipboard-copy-content=\"BUCKET=your-staging-bucket\nCLUSTER=your-cluster-name\"\u003e\u003cpre class=\"notranslate\"\u003e\u003ccode\u003eBUCKET=your-staging-bucket\nCLUSTER=your-cluster-name\n\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\n\u003cp dir=\"auto\"\u003eThen, if you want to rely on an existing cluster, run:\u003c/p\u003e\n\u003cdiv class=\"snippet-clipboard-content notranslate position-relative overflow-auto\" data-snippet-clipboard-copy-content=\"python submit_job_to_cluster.py --project_id=$GOOGLE_CLOUD_PROJECT --zone=us-central1-b --cluster_name=$CLUSTER --gcs_bucket=$BUCKET\"\u003e\u003cpre class=\"notranslate\"\u003e\u003ccode\u003epython submit_job_to_cluster.py --project_id=$GOOGLE_CLOUD_PROJECT --zone=us-central1-b --cluster_name=$CLUSTER --gcs_bucket=$BUCKET\n\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\n\u003cp dir=\"auto\"\u003eOtherwise, if you want the script to create a new cluster for you:\u003c/p\u003e\n\u003cdiv class=\"snippet-clipboard-content notranslate position-relative overflow-auto\" data-snippet-clipboard-copy-content=\"python submit_job_to_cluster.py --project_id=$GOOGLE_CLOUD_PROJECT --zone=us-central1-b --cluster_name=$CLUSTER --gcs_bucket=$BUCKET --create_new_cluster\"\u003e\u003cpre class=\"notranslate\"\u003e\u003ccode\u003epython submit_job_to_cluster.py --project_id=$GOOGLE_CLOUD_PROJECT --zone=us-central1-b --cluster_name=$CLUSTER --gcs_bucket=$BUCKET --create_new_cluster\n\u003c/code\u003e\u003c/pre\u003e\u003c/div\u003e\n\u003cp dir=\"auto\"\u003eThis will setup a cluster, upload the PySpark file, submit the job, print the result, then\ndelete the cluster.\u003c/p\u003e\n\u003cp dir=\"auto\"\u003eYou can optionally specify a \u003ccode\u003e--pyspark_file\u003c/code\u003e argument to change from the default\n\u003ccode\u003epyspark_sort.py\u003c/code\u003e included in this script to a new script.\u003c/p\u003e\n\u003c/article\u003e","errorMessage":null,"headerInfo":{"toc":[{"level":1,"text":"Cloud Dataproc API Example","anchor":"cloud-dataproc-api-example","htmlText":"Cloud Dataproc API Example"},{"level":2,"text":"Prerequisites to run locally:","anchor":"prerequisites-to-run-locally","htmlText":"Prerequisites to run locally:"},{"level":2,"text":"Set Up Your Local Dev Environment","anchor":"set-up-your-local-dev-environment","htmlText":"Set Up Your Local Dev Environment"},{"level":2,"text":"Authentication","anchor":"authentication","htmlText":"Authentication"},{"level":2,"text":"Environment Variables","anchor":"environment-variables","htmlText":"Environment Variables"},{"level":2,"text":"Running the samples","anchor":"running-the-samples","htmlText":"Running the samples"}],"siteNavLoginPath":"/login?return_to=https%3A%2F%2Fgithub.com%2Frobbertbrouwers%2Fpython-docs-samples%2Ftree%2Fmaster%2Fdataproc"}},"totalCount":8,"showBranchInfobar":true},"fileTree":{"":{"items":[{"name":".github","path":".github","contentType":"directory"},{"name":".kokoro","path":".kokoro","contentType":"directory"},{"name":"appengine","path":"appengine","contentType":"directory"},{"name":"asset","path":"asset","contentType":"directory"},{"name":"auth","path":"auth","contentType":"directory"},{"name":"bigquery","path":"bigquery","contentType":"directory"},{"name":"bigquery_storage","path":"bigquery_storage","contentType":"directory"},{"name":"bigtable","path":"bigtable","contentType":"directory"},{"name":"blog","path":"blog","contentType":"directory"},{"name":"cdn","path":"cdn","contentType":"directory"},{"name":"cloud-sql","path":"cloud-sql","contentType":"directory"},{"name":"codelabs","path":"codelabs","contentType":"directory"},{"name":"composer","path":"composer","contentType":"directory"},{"name":"compute","path":"compute","contentType":"directory"},{"name":"container_engine","path":"container_engine","contentType":"directory"},{"name":"dataproc","path":"dataproc","contentType":"directory"},{"name":"datastore","path":"datastore","contentType":"directory"},{"name":"dialogflow","path":"dialogflow","contentType":"directory"},{"name":"dlp","path":"dlp","contentType":"directory"},{"name":"dns","path":"dns","contentType":"directory"},{"name":"endpoints","path":"endpoints","contentType":"directory"},{"name":"error_reporting","path":"error_reporting","contentType":"directory"},{"name":"firestore","path":"firestore","contentType":"directory"},{"name":"functions","path":"functions","contentType":"directory"},{"name":"healthcare","path":"healthcare","contentType":"directory"},{"name":"iam","path":"iam","contentType":"directory"},{"name":"iap","path":"iap","contentType":"directory"},{"name":"iot","path":"iot","contentType":"directory"},{"name":"jobs","path":"jobs","contentType":"directory"},{"name":"kms","path":"kms","contentType":"directory"},{"name":"language","path":"language","contentType":"directory"},{"name":"logging","path":"logging","contentType":"directory"},{"name":"memorystore","path":"memorystore","contentType":"directory"},{"name":"ml_engine","path":"ml_engine","contentType":"directory"},{"name":"monitoring","path":"monitoring","contentType":"directory"},{"name":"notebooks","path":"notebooks","contentType":"directory"},{"name":"pubsub","path":"pubsub","contentType":"directory"},{"name":"scripts","path":"scripts","contentType":"directory"},{"name":"spanner","path":"spanner","contentType":"directory"},{"name":"speech","path":"speech","contentType":"directory"},{"name":"storage","path":"storage","contentType":"directory"},{"name":"testing","path":"testing","contentType":"directory"},{"name":"texttospeech","path":"texttospeech","contentType":"directory"},{"name":"third_party","path":"third_party","contentType":"directory"},{"name":"trace","path":"trace","contentType":"directory"},{"name":"translate","path":"translate","contentType":"directory"},{"name":"video","path":"video","contentType":"directory"},{"name":"vision","path":"vision","contentType":"directory"},{"name":".gitignore","path":".gitignore","contentType":"file"},{"name":".travis.yml","path":".travis.yml","contentType":"file"},{"name":"AUTHORING_GUIDE.md","path":"AUTHORING_GUIDE.md","contentType":"file"},{"name":"CONTRIBUTING.md","path":"CONTRIBUTING.md","contentType":"file"},{"name":"ISSUE_TEMPLATE.md","path":"ISSUE_TEMPLATE.md","contentType":"file"},{"name":"LICENSE","path":"LICENSE","contentType":"file"},{"name":"MAC_SETUP.md","path":"MAC_SETUP.md","contentType":"file"},{"name":"README.md","path":"README.md","contentType":"file"},{"name":"conftest.py","path":"conftest.py","contentType":"file"},{"name":"favicon.ico","path":"favicon.ico","contentType":"file"},{"name":"noxfile.py","path":"noxfile.py","contentType":"file"},{"name":"pytest.ini","path":"pytest.ini","contentType":"file"}],"totalCount":60}},"fileTreeProcessingTime":3.495851,"foldersToFetch":[],"treeExpanded":true,"symbolsExpanded":false,"csrf_tokens":{"/robbertbrouwers/python-docs-samples/branches":{"post":"9U4r0Rsr5M4FzgoF0Z-ODdFes2pxlWxDzFSIWtkvuhTmO2hHGlfuA37uk59CGzgGFehiQAfXQUWnc0THmSAA0Q"},"/robbertbrouwers/python-docs-samples/branches/fetch_and_merge/master":{"post":"UyR1W5Ij8x92J0tEb1KarrN2vr1QHXhM6F3rdZBzOcbcQwvpSXvEchbeUM4fXEXVwxBfDCyFYBt9Wkh9XJcMWA"},"/robbertbrouwers/python-docs-samples/branches/fetch_and_merge/master?discard_changes=true":{"post":"PXqA7CsBlF2_1DpNwFt-rtXS1F9glNBSnsIBMTB9b0iyHf5e8FmjMN8tIcewVaHVpbQ17hwMyAULxaI5_Jla1g"}}},"title":"python-docs-samples/dataproc at master · robbertbrouwers/python-docs-samples","appPayload":{"helpUrl":"https://docs.github.com","findFileWorkerPath":"/assets-cdn/worker/find-file-worker-7d7eb7c71814.js","findInFileWorkerPath":"/assets-cdn/worker/find-in-file-worker-1ae9fa256942.js","githubDevUrl":null,"enabled_features":{"code_nav_ui_events":false,"react_blob_overlay":false,"accessible_code_button":true,"github_models_repo_integration":false}}}
0