| |
| |
| <!DOCTYPE html> |
| <html lang="en"> |
| <head> |
| <meta charset="utf-8"> |
| <title>Apache Zeppelin 0.12.0 Documentation: BigQuery Interpreter for Apache Zeppelin</title> |
| <meta name="description" content="BigQuery is a highly scalable no-ops data warehouse in the Google Cloud Platform."> |
| <meta name="author" content="The Apache Software Foundation"> |
| |
| <!-- Enable responsive viewport --> |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| |
| <!-- Le HTML5 shim, for IE6-8 support of HTML elements --> |
| <!--[if lt IE 9]> |
| <script src="http://html5shim.googlecode.com/svn/trunk/html5.js"></script> |
| <![endif]--> |
| |
| <link href="/docs/0.12.0/assets/themes/zeppelin/font-awesome.min.css" rel="stylesheet"> |
| |
| <!-- Le styles --> |
| <link href="/docs/0.12.0/assets/themes/zeppelin/bootstrap/css/bootstrap.css" rel="stylesheet"> |
| <link href="/docs/0.12.0/assets/themes/zeppelin/css/style.css?body=1" rel="stylesheet" type="text/css"> |
| <link href="/docs/0.12.0/assets/themes/zeppelin/css/syntax.css" rel="stylesheet" type="text/css" media="screen" /> |
| <!-- Le fav and touch icons --> |
| <!-- Update these with your own images |
| <link rel="shortcut icon" href="images/favicon.ico"> |
| <link rel="apple-touch-icon" href="images/apple-touch-icon.png"> |
| <link rel="apple-touch-icon" sizes="72x72" href="images/apple-touch-icon-72x72.png"> |
| <link rel="apple-touch-icon" sizes="114x114" href="images/apple-touch-icon-114x114.png"> |
| --> |
| |
| <!-- Js --> |
| <script src="/docs/0.12.0/assets/themes/zeppelin/jquery-1.10.2.min.js"></script> |
| <script src="/docs/0.12.0/assets/themes/zeppelin/bootstrap/js/bootstrap.min.js"></script> |
| <script src="/docs/0.12.0/assets/themes/zeppelin/js/docs.js"></script> |
| <script src="/docs/0.12.0/assets/themes/zeppelin/js/anchor.min.js"></script> |
| <script src="/docs/0.12.0/assets/themes/zeppelin/js/toc.js"></script> |
| <script src="/docs/0.12.0/assets/themes/zeppelin/js/lunr.min.js"></script> |
| <script src="/docs/0.12.0/assets/themes/zeppelin/js/search.js"></script> |
| |
| <!-- atom & rss feed --> |
| <link href="/docs/0.12.0/atom.xml" type="application/atom+xml" rel="alternate" title="Sitewide ATOM Feed"> |
| <link href="/docs/0.12.0/rss.xml" type="application/rss+xml" rel="alternate" title="Sitewide RSS Feed"> |
| |
| <!-- Matomo --> |
| <script> |
| var _paq = window._paq = window._paq || []; |
| /* tracker methods like "setCustomDimension" should be called before "trackPageView" */ |
| _paq.push(["setDoNotTrack", true]); |
| _paq.push(["disableCookies"]); |
| _paq.push(['trackPageView']); |
| _paq.push(['enableLinkTracking']); |
| (function() { |
| var u="https://analytics.apache.org/"; |
| _paq.push(['setTrackerUrl', u+'matomo.php']); |
| _paq.push(['setSiteId', '69']); |
| var d=document, g=d.createElement('script'), s=d.getElementsByTagName('script')[0]; |
| g.async=true; g.src=u+'matomo.js'; s.parentNode.insertBefore(g,s); |
| })(); |
| </script> |
| <!-- End Matomo Code --> |
| </head> |
| |
| <body> |
| |
| <div id="menu" class="navbar navbar-inverse navbar-fixed-top" role="navigation"> |
| <div class="container navbar-container"> |
| <div class="navbar-header"> |
| <button type="button" class="navbar-toggle" data-toggle="collapse" data-target=".navbar-collapse"> |
| <span class="sr-only">Toggle navigation</span> |
| <span class="icon-bar"></span> |
| <span class="icon-bar"></span> |
| <span class="icon-bar"></span> |
| </button> |
| <div class="navbar-brand"> |
| <a class="navbar-brand-main" href="http://zeppelin.apache.org"> |
| <img src="/docs/0.12.0/assets/themes/zeppelin/img/zeppelin_logo.png" width="50" |
| style="margin-top: -2px;" alt="I'm zeppelin"> |
| <span style="margin-left: 5px; font-size: 27px;">Zeppelin</span> |
| <a class="navbar-brand-version" href="/docs/0.12.0" |
| style="font-size: 15px; color: white;"> 0.12.0 |
| </a> |
| </a> |
| </div> |
| </div> |
| <nav class="navbar-collapse collapse" role="navigation"> |
| <ul class="nav navbar-nav"> |
| <li> |
| <a href="#" data-toggle="dropdown" class="dropdown-toggle">Quick Start <b class="caret"></b></a> |
| <ul class="dropdown-menu"> |
| <li class="title"><span>Getting Started</span></li> |
| <li><a href="/docs/0.12.0/quickstart/install.html">Install</a></li> |
| <li><a href="/docs/0.12.0/quickstart/explore_ui.html">Explore UI</a></li> |
| <li><a href="/docs/0.12.0/quickstart/tutorial.html">Tutorial</a></li> |
| <li role="separator" class="divider"></li> |
| <li class="title"><span>Run Mode</span></li> |
| <li><a href="/docs/0.12.0/quickstart/kubernetes.html">Kubernetes</a></li> |
| <li><a href="/docs/0.12.0/quickstart/docker.html">Docker</a></li> |
| <li><a href="/docs/0.12.0/quickstart/yarn.html">Yarn</a></li> |
| <li role="separator" class="divider"></li> |
| <li><a href="/docs/0.12.0/quickstart/spark_with_zeppelin.html">Spark with Zeppelin</a></li> |
| <li><a href="/docs/0.12.0/quickstart/flink_with_zeppelin.html">Flink with Zeppelin</a></li> |
| <li><a href="/docs/0.12.0/quickstart/sql_with_zeppelin.html">SQL with Zeppelin</a></li> |
| <li><a href="/docs/0.12.0/quickstart/python_with_zeppelin.html">Python with Zeppelin</a></li> |
| <li><a href="/docs/0.12.0/quickstart/r_with_zeppelin.html">R with Zeppelin</a></li> |
| </ul> |
| </li> |
| |
| <li> |
| <a href="#" data-toggle="dropdown" class="dropdown-toggle">Usage<b class="caret"></b></a> |
| <ul class="dropdown-menu scrollable-menu"> |
| <li class="title"><span>Dynamic Form</span></li> |
| <li><a href="/docs/0.12.0/usage/dynamic_form/intro.html">What is Dynamic Form?</a></li> |
| <li role="separator" class="divider"></li> |
| <li class="title"><span>Display System</span></li> |
| <li><a href="/docs/0.12.0/usage/display_system/basic.html#text">Text Display</a></li> |
| <li><a href="/docs/0.12.0/usage/display_system/basic.html#html">HTML Display</a></li> |
| <li><a href="/docs/0.12.0/usage/display_system/basic.html#table">Table Display</a></li> |
| <li><a href="/docs/0.12.0/usage/display_system/basic.html#network">Network Display</a></li> |
| <li><a href="/docs/0.12.0/usage/display_system/angular_backend.html">Angular Display using Backend API</a></li> |
| <li><a href="/docs/0.12.0/usage/display_system/angular_frontend.html">Angular Display using Frontend API</a></li> |
| <li role="separator" class="divider"></li> |
| <li class="title"><span>Interpreter</span></li> |
| <li><a href="/docs/0.12.0/usage/interpreter/overview.html">Overview</a></li> |
| <li><a href="/docs/0.12.0/usage/interpreter/interpreter_binding_mode.html">Interpreter Binding Mode</a></li> |
| <li><a href="/docs/0.12.0/usage/interpreter/user_impersonation.html">User Impersonation</a></li> |
| <li><a href="/docs/0.12.0/usage/interpreter/dependency_management.html">Dependency Management</a></li> |
| <li><a href="/docs/0.12.0/usage/interpreter/installation.html">Installing Interpreters</a></li> |
| <!--<li><a href="/docs/0.12.0/usage/interpreter/dynamic_loading.html">Dynamic Interpreter Loading (Experimental)</a></li>--> |
| <li><a href="/docs/0.12.0/usage/interpreter/execution_hooks.html">Execution Hooks (Experimental)</a></li> |
| <li role="separator" class="divider"></li> |
| <li class="title"><span>Other Features</span></li> |
| <li><a href="/docs/0.12.0/usage/other_features/publishing_paragraphs.html">Publishing Paragraphs</a></li> |
| <li><a href="/docs/0.12.0/usage/other_features/personalized_mode.html">Personalized Mode</a></li> |
| <li><a href="/docs/0.12.0/usage/other_features/customizing_homepage.html">Customizing Zeppelin Homepage</a></li> |
| <li><a href="/docs/0.12.0/usage/other_features/notebook_actions.html">Notebook Actions</a></li> |
| <li><a href="/docs/0.12.0/usage/other_features/cron_scheduler.html">Cron Scheduler</a></li> |
| <li><a href="/docs/0.12.0/usage/other_features/zeppelin_context.html">Zeppelin Context</a></li> |
| <li role="separator" class="divider"></li> |
| <li class="title"><span>REST API</span></li> |
| <li><a href="/docs/0.12.0/usage/rest_api/interpreter.html">Interpreter API</a></li> |
| <li><a href="/docs/0.12.0/usage/rest_api/zeppelin_server.html">Zeppelin Server API</a></li> |
| <li><a href="/docs/0.12.0/usage/rest_api/notebook.html">Notebook API</a></li> |
| <li><a href="/docs/0.12.0/usage/rest_api/notebook_repository.html">Notebook Repository API</a></li> |
| <li><a href="/docs/0.12.0/usage/rest_api/configuration.html">Configuration API</a></li> |
| <li><a href="/docs/0.12.0/usage/rest_api/credential.html">Credential API</a></li> |
| <li><a href="/docs/0.12.0/usage/rest_api/helium.html">Helium API</a></li> |
| <li class="title"><span>Zeppelin SDK</span></li> |
| <li><a href="/docs/0.12.0/usage/zeppelin_sdk/client_api.html">Client API</a></li> |
| <li><a href="/docs/0.12.0/usage/zeppelin_sdk/session_api.html">Session API</a></li> |
| </ul> |
| </li> |
| |
| <li> |
| <a href="#" data-toggle="dropdown" class="dropdown-toggle">Setup<b class="caret"></b></a> |
| <ul class="dropdown-menu scrollable-menu"> |
| <li class="title"><span>Basics</span></li> |
| <li><a href="/docs/0.12.0/setup/basics/how_to_build.html">How to Build Zeppelin</a></li> |
| <li><a href="/docs/0.12.0/setup/basics/hadoop_integration.html">Hadoop Integration</a></li> |
| <li><a href="/docs/0.12.0/setup/basics/multi_user_support.html">Multi-user Support</a></li> |
| <li role="separator" class="divider"></li> |
| <li class="title"><span>Deployment</span></li> |
| <!--<li><a href="/docs/0.12.0/setup/deployment/docker.html">Docker Image for Zeppelin</a></li>--> |
| <li><a href="/docs/0.12.0/setup/deployment/spark_cluster_mode.html#spark-standalone-mode">Spark Cluster Mode: Standalone</a></li> |
| <li><a href="/docs/0.12.0/setup/deployment/spark_cluster_mode.html#spark-on-yarn-mode">Spark Cluster Mode: YARN</a></li> |
| <li><a href="/docs/0.12.0/setup/deployment/spark_cluster_mode.html#spark-on-mesos-mode">Spark Cluster Mode: Mesos</a></li> |
| <li><a href="/docs/0.12.0/setup/deployment/flink_and_spark_cluster.html">Zeppelin with Flink, Spark Cluster</a></li> |
| <li><a href="/docs/0.12.0/setup/deployment/cdh.html">Zeppelin on CDH</a></li> |
| <li><a href="/docs/0.12.0/setup/deployment/virtual_machine.html">Zeppelin on VM: Vagrant</a></li> |
| <li role="separator" class="divider"></li> |
| <li class="title"><span>Security</span></li> |
| <li><a href="/docs/0.12.0/setup/security/authentication_nginx.html">HTTP Basic Auth using NGINX</a></li> |
| <li><a href="/docs/0.12.0/setup/security/shiro_authentication.html">Shiro Authentication</a></li> |
| <li><a href="/docs/0.12.0/setup/security/notebook_authorization.html">Notebook Authorization</a></li> |
| <li><a href="/docs/0.12.0/setup/security/datasource_authorization.html">Data Source Authorization</a></li> |
| <li><a href="/docs/0.12.0/setup/security/http_security_headers.html">HTTP Security Headers</a></li> |
| <li role="separator" class="divider"></li> |
| <li class="title"><span>Notebook Storage</span></li> |
| <li><a href="/docs/0.12.0/setup/storage/storage.html#notebook-storage-in-local-git-repository">Git Storage</a></li> |
| <li><a href="/docs/0.12.0/setup/storage/storage.html#notebook-storage-in-s3">S3 Storage</a></li> |
| <li><a href="/docs/0.12.0/setup/storage/storage.html#notebook-storage-in-azure">Azure Storage</a></li> |
| <li><a href="/docs/0.12.0/setup/storage/storage.html#notebook-storage-in-google-cloud-storage">Google Cloud Storage</a></li> |
| <li><a href="/docs/0.12.0/setup/storage/storage.html#notebook-storage-in-oss">OSS Storage</a></li> |
| <li><a href="/docs/0.12.0/setup/storage/storage.html#notebook-storage-in-mongodb">MongoDB Storage</a></li> |
| <li role="separator" class="divider"></li> |
| <li class="title"><span>Operation</span></li> |
| <li><a href="/docs/0.12.0/setup/operation/configuration.html">Configuration</a></li> |
| <li><a href="/docs/0.12.0/setup/operation/monitoring.html">Monitoring</a></li> |
| <li><a href="/docs/0.12.0/setup/operation/proxy_setting.html">Proxy Setting</a></li> |
| <li><a href="/docs/0.12.0/setup/operation/upgrading.html">Upgrading</a></li> |
| <li><a href="/docs/0.12.0/setup/operation/trouble_shooting.html">Trouble Shooting</a></li> |
| </ul> |
| </li> |
| |
| <li> |
| <a href="#" data-toggle="dropdown" class="dropdown-toggle">Interpreter <b class="caret"></b></a> |
| <ul class="dropdown-menu scrollable-menu"> |
| <li class="title"><span>Interpreters</span></li> |
| <li><a href="/docs/0.12.0/usage/interpreter/overview.html">Overview</a></li> |
| <li role="separator" class="divider"></li> |
| <li><a href="/docs/0.12.0/interpreter/spark.html">Spark</a></li> |
| <li><a href="/docs/0.12.0/interpreter/flink.html">Flink</a></li> |
| <li><a href="/docs/0.12.0/interpreter/jdbc.html">JDBC</a></li> |
| <li><a href="/docs/0.12.0/interpreter/python.html">Python</a></li> |
| <li><a href="/docs/0.12.0/interpreter/r.html">R</a></li> |
| <li role="separator" class="divider"></li> |
| <li><a href="/docs/0.12.0/interpreter/alluxio.html">Alluxio</a></li> |
| <li><a href="/docs/0.12.0/interpreter/bigquery.html">BigQuery</a></li> |
| <li><a href="/docs/0.12.0/interpreter/cassandra.html">Cassandra</a></li> |
| <li><a href="/docs/0.12.0/interpreter/elasticsearch.html">Elasticsearch</a></li> |
| <li><a href="/docs/0.12.0/interpreter/groovy.html">Groovy</a></li> |
| <li><a href="/docs/0.12.0/interpreter/hbase.html">HBase</a></li> |
| <li><a href="/docs/0.12.0/interpreter/hdfs.html">HDFS</a></li> |
| <li><a href="/docs/0.12.0/interpreter/hive.html">Hive</a></li> |
| <li><a href="/docs/0.12.0/interpreter/influxdb.html">influxDB</a></li> |
| <li><a href="/docs/0.12.0/interpreter/java.html">Java</a></li> |
| <li><a href="/docs/0.12.0/interpreter/jupyter.html">Jupyter</a></li> |
| <li><a href="/docs/0.12.0/interpreter/livy.html">Livy</a></li> |
| <li><a href="/docs/0.12.0/interpreter/mahout.html">Mahout</a></li> |
| <li><a href="/docs/0.12.0/interpreter/markdown.html">Markdown</a></li> |
| <li><a href="/docs/0.12.0/interpreter/mongodb.html">MongoDB</a></li> |
| <li><a href="/docs/0.12.0/interpreter/neo4j.html">Neo4j</a></li> |
| <li><a href="/docs/0.12.0/interpreter/postgresql.html">Postgresql, HAWQ</a></li> |
| <li><a href="/docs/0.12.0/interpreter/shell.html">Shell</a></li> |
| <li><a href="/docs/0.12.0/interpreter/sparql.html">Sparql</a></li> |
| </ul> |
| </li> |
| <li> |
| <a href="#" data-toggle="dropdown" class="dropdown-toggle">More<b class="caret"></b></a> |
| <ul class="dropdown-menu scrollable-menu" style="right: 0; left: auto;"> |
| <li class="title"><span>Extending Zeppelin</span></li> |
| <li><a href="/docs/0.12.0/development/writing_zeppelin_interpreter.html">Writing Zeppelin Interpreter</a></li> |
| <li role="separator" class="divider"></li> |
| <li class="title"><span>Helium (Experimental)</span></li> |
| <li><a href="/docs/0.12.0/development/helium/overview.html">Overview</a></li> |
| <li><a href="/docs/0.12.0/development/helium/writing_application.html">Writing Helium Application</a></li> |
| <li><a href="/docs/0.12.0/development/helium/writing_spell.html">Writing Helium Spell</a></li> |
| <li><a href="/docs/0.12.0/development/helium/writing_visualization_basic.html">Writing Helium Visualization: Basics</a></li> |
| <li><a href="/docs/0.12.0/development/helium/writing_visualization_transformation.html">Writing Helium Visualization: Transformation</a></li> |
| <li role="separator" class="divider"></li> |
| <li class="title"><span>Contributing to Zeppelin</span></li> |
| <li><a href="/docs/0.12.0/setup/basics/how_to_build.html">How to Build Zeppelin</a></li> |
| <li><a href="/docs/0.12.0/development/contribution/useful_developer_tools.html">Useful Developer Tools</a></li> |
| <li><a href="/docs/0.12.0/development/contribution/how_to_contribute_code.html">How to Contribute (code)</a></li> |
| <li><a href="/docs/0.12.0/development/contribution/how_to_contribute_website.html">How to Contribute (website)</a></li> |
| <li role="separator" class="divider"></li> |
| <li class="title"><span>External Resources</span></li> |
| <li><a target="_blank" rel="noopener noreferrer" href="https://zeppelin.apache.org/community.html">Mailing List</a></li> |
| <li><a target="_blank" rel="noopener noreferrer" href="https://cwiki.apache.org/confluence/display/ZEPPELIN/Zeppelin+Home">Apache Zeppelin Wiki</a></li> |
| <li><a target="_blank" rel="noopener noreferrer" href="http://stackoverflow.com/questions/tagged/apache-zeppelin">Stackoverflow Questions about Zeppelin</a></li> |
| </ul> |
| </li> |
| <li> |
| <a href="/docs/0.12.0/search.html" class="nav-search-link"> |
| <span class="fa fa-search nav-search-icon"></span> |
| </a> |
| </li> |
| </ul> |
| </nav><!--/.navbar-collapse --> |
| </div> |
| </div> |
| |
| |
| |
| <div class="content"> |
| |
| |
| <!--<div class="hero-unit BigQuery Interpreter for Apache Zeppelin"> |
| <h1></h1> |
| </div> |
| --> |
| |
| <div class="row"> |
| <div class="col-md-12"> |
| <!-- |
| Licensed under the Apache License, Version 2.0 (the "License"); |
| you may not use this file except in compliance with the License. |
| You may obtain a copy of the License at |
| |
| http://www.apache.org/licenses/LICENSE-2.0 |
| |
| Unless required by applicable law or agreed to in writing, software |
| distributed under the License is distributed on an "AS IS" BASIS, |
| WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| See the License for the specific language governing permissions and |
| limitations under the License. |
| --> |
| |
| <h1>BigQuery Interpreter for Apache Zeppelin</h1> |
| |
| <div id="toc"></div> |
| |
| <h2>Overview</h2> |
| |
| <p><a href="https://cloud.google.com/bigquery/what-is-bigquery">BigQuery</a> is a highly scalable no-ops data warehouse in the Google Cloud Platform. Querying massive datasets can be time consuming and expensive without the right hardware and infrastructure. Google BigQuery solves this problem by enabling super-fast SQL queries against append-only tables using the processing power of Google's infrastructure. Simply move your data into BigQuery and let us handle the hard work. You can control access to both the project and your data based on your business needs, such as giving others the ability to view or query your data. </p> |
| |
| <h2>Configuration</h2> |
| |
| <table class="table-configuration"> |
| <tr> |
| <th>Name</th> |
| <th>Default Value</th> |
| <th>Description</th> |
| </tr> |
| <tr> |
| <td>zeppelin.bigquery.project_id</td> |
| <td> </td> |
| <td>Google Project Id</td> |
| </tr> |
| <tr> |
| <td>zeppelin.bigquery.wait_time</td> |
| <td>5000</td> |
| <td>Query Timeout in Milliseconds</td> |
| </tr> |
| <tr> |
| <td>zeppelin.bigquery.max_no_of_rows</td> |
| <td>100000</td> |
| <td>Max result set size</td> |
| </tr> |
| <tr> |
| <td>zeppelin.bigquery.sql_dialect</td> |
| <td></td> |
| <td>BigQuery SQL dialect (standardSQL or legacySQL). If empty, [query prefix](https://cloud.google.com/bigquery/docs/reference/standard-sql/enabling-standard-sql#sql-prefix) like '#standardSQL' can be used.</td> |
| </tr> |
| <tr> |
| <td>zeppelin.bigquery.region</td> |
| <td></td> |
| <td>BigQuery dataset region (Needed for single region dataset)</td> |
| </tr> |
| </table> |
| |
| <h2>BigQuery API</h2> |
| |
| <p>Zeppelin is built against BigQuery API version v2-rev265-1.21.0 - <a href="https://developers.google.com/resources/api-libraries/documentation/bigquery/v2/java/latest/">API Javadocs</a></p> |
| |
| <h2>Enabling the BigQuery Interpreter</h2> |
| |
| <p>In a notebook, to enable the <strong>BigQuery</strong> interpreter, click the <strong>Gear</strong> icon and select <strong>bigquery</strong>.</p> |
| |
| <h3>Provide Application Default Credentials</h3> |
| |
| <p>Within Google Cloud Platform (e.g. Google App Engine, Google Compute Engine), |
| built-in credentials are used by default.</p> |
| |
| <p>Outside of GCP, follow the Google API authentication instructions for <a href="https://zeppelin.apache.org/docs/latest/setup/storage/storage.html#notebook-storage-in-google-cloud-storage">Zeppelin Google Cloud Storage</a></p> |
| |
| <h2>Using the BigQuery Interpreter</h2> |
| |
| <p>In a paragraph, use <code>%bigquery.sql</code> to select the <strong>BigQuery</strong> interpreter and then input SQL statements against your datasets stored in BigQuery. |
| You can use <a href="https://cloud.google.com/bigquery/query-reference">BigQuery SQL Reference</a> to build your own SQL.</p> |
| |
| <p>For Example, SQL to query for top 10 departure delays across airports using the flights public dataset</p> |
| <div class="highlight"><pre><code class="language-bash" data-lang="bash">%bigquery.sql |
| SELECT departure_airport,count<span class="o">(</span><span class="k">case</span> when departure_delay>0 <span class="k">then </span>1 <span class="k">else </span>0 end<span class="p">)</span> as no_of_delays |
| FROM <span class="o">[</span>bigquery-samples:airline_ontime_data.flights] |
| group by departure_airport |
| order by 2 desc |
| limit 10 |
| </code></pre></div> |
| <p>Another Example, SQL to query for most commonly used java packages from the github data hosted in BigQuery </p> |
| <div class="highlight"><pre><code class="language-bash" data-lang="bash">%bigquery.sql |
| SELECT |
| package, |
| COUNT<span class="o">(</span><span class="k">*</span><span class="o">)</span> count |
| FROM <span class="o">(</span> |
| SELECT |
| REGEXP_EXTRACT<span class="o">(</span>line, r<span class="s1">' ([a-z0-9\._]*)\.'</span><span class="o">)</span> package, |
| <span class="nb">id |
| </span>FROM <span class="o">(</span> |
| SELECT |
| SPLIT<span class="o">(</span>content, <span class="s1">'\n'</span><span class="o">)</span> line, |
| <span class="nb">id |
| </span>FROM |
| <span class="o">[</span>bigquery-public-data:github_repos.sample_contents] |
| WHERE |
| content CONTAINS <span class="s1">'import'</span> |
| AND sample_path LIKE <span class="s1">'%.java'</span> |
| HAVING |
| LEFT<span class="o">(</span>line, 6<span class="o">)=</span><span class="s1">'import'</span> <span class="o">)</span> |
| GROUP BY |
| package, |
| <span class="nb">id</span> <span class="o">)</span> |
| GROUP BY |
| 1 |
| ORDER BY |
| count DESC |
| LIMIT |
| 40 |
| </code></pre></div> |
| <h2>Technical description</h2> |
| |
| <p>For in-depth technical details on current implementation please refer to <a href="https://github.com/apache/zeppelin/blob/master/bigquery/README.md">bigquery/README.md</a>.</p> |
| |
| </div> |
| </div> |
| |
| |
| <hr> |
| <footer> |
| <!-- <p>© 2025 The Apache Software Foundation</p>--> |
| </footer> |
| </div> |
| |
| |
| |
| |
| |
| |
| |
| </body> |
| </html> |
| |