blob: d471bab220f69926feea926e4bdb955907632bf4 [file] [log] [blame]
<!DOCTYPE html>
<!--[if IE 8]><html class="no-js lt-ie9" lang="en" > <![endif]-->
<!--[if gt IE 8]><!--> <html class="no-js" lang="en" > <!--<![endif]-->
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>apache_beam.runners.interactive.sql.sql_chain module &mdash; Apache Beam 2.36.0 documentation</title>
<script type="text/javascript" src="_static/js/modernizr.min.js"></script>
<script type="text/javascript" id="documentation_options" data-url_root="./" src="_static/documentation_options.js"></script>
<script type="text/javascript" src="_static/jquery.js"></script>
<script type="text/javascript" src="_static/underscore.js"></script>
<script type="text/javascript" src="_static/doctools.js"></script>
<script type="text/javascript" src="_static/language_data.js"></script>
<script async="async" type="text/javascript" src="https://cdnjs.cloudflare.com/ajax/libs/mathjax/2.7.5/latest.js?config=TeX-AMS-MML_HTMLorMML"></script>
<script type="text/javascript" src="_static/js/theme.js"></script>
<link rel="stylesheet" href="_static/css/theme.css" type="text/css" />
<link rel="stylesheet" href="_static/pygments.css" type="text/css" />
<link rel="index" title="Index" href="genindex.html" />
<link rel="search" title="Search" href="search.html" />
<link rel="next" title="apache_beam.runners.interactive.sql.utils module" href="apache_beam.runners.interactive.sql.utils.html" />
<link rel="prev" title="apache_beam.runners.interactive.sql.beam_sql_magics module" href="apache_beam.runners.interactive.sql.beam_sql_magics.html" />
</head>
<body class="wy-body-for-nav">
<div class="wy-grid-for-nav">
<nav data-toggle="wy-nav-shift" class="wy-nav-side">
<div class="wy-side-scroll">
<div class="wy-side-nav-search" >
<a href="index.html" class="icon icon-home"> Apache Beam
</a>
<div class="version">
2.36.0
</div>
<div role="search">
<form id="rtd-search-form" class="wy-form" action="search.html" method="get">
<input type="text" name="q" placeholder="Search docs" />
<input type="hidden" name="check_keywords" value="yes" />
<input type="hidden" name="area" value="default" />
</form>
</div>
</div>
<div class="wy-menu wy-menu-vertical" data-spy="affix" role="navigation" aria-label="main navigation">
<ul class="current">
<li class="toctree-l1"><a class="reference internal" href="apache_beam.coders.html">apache_beam.coders package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.dataframe.html">apache_beam.dataframe package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.io.html">apache_beam.io package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.metrics.html">apache_beam.metrics package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.ml.html">apache_beam.ml package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.options.html">apache_beam.options package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.portability.html">apache_beam.portability package</a></li>
<li class="toctree-l1 current"><a class="reference internal" href="apache_beam.runners.html">apache_beam.runners package</a><ul class="current">
<li class="toctree-l2 current"><a class="reference internal" href="apache_beam.runners.html#subpackages">Subpackages</a><ul class="current">
<li class="toctree-l3"><a class="reference internal" href="apache_beam.runners.dataflow.html">apache_beam.runners.dataflow package</a></li>
<li class="toctree-l3"><a class="reference internal" href="apache_beam.runners.direct.html">apache_beam.runners.direct package</a></li>
<li class="toctree-l3 current"><a class="reference internal" href="apache_beam.runners.interactive.html">apache_beam.runners.interactive package</a><ul class="current">
<li class="toctree-l4 current"><a class="reference internal" href="apache_beam.runners.interactive.html#subpackages">Subpackages</a></li>
<li class="toctree-l4"><a class="reference internal" href="apache_beam.runners.interactive.html#submodules">Submodules</a></li>
</ul>
</li>
<li class="toctree-l3"><a class="reference internal" href="apache_beam.runners.job.html">apache_beam.runners.job package</a></li>
</ul>
</li>
<li class="toctree-l2"><a class="reference internal" href="apache_beam.runners.html#submodules">Submodules</a></li>
</ul>
</li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.transforms.html">apache_beam.transforms package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.typehints.html">apache_beam.typehints package</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.utils.html">apache_beam.utils package</a></li>
</ul>
<ul>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.error.html">apache_beam.error module</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.pipeline.html">apache_beam.pipeline module</a></li>
<li class="toctree-l1"><a class="reference internal" href="apache_beam.pvalue.html">apache_beam.pvalue module</a></li>
</ul>
</div>
</div>
</nav>
<section data-toggle="wy-nav-shift" class="wy-nav-content-wrap">
<nav class="wy-nav-top" aria-label="top navigation">
<i data-toggle="wy-nav-top" class="fa fa-bars"></i>
<a href="index.html">Apache Beam</a>
</nav>
<div class="wy-nav-content">
<div class="rst-content">
<div role="navigation" aria-label="breadcrumbs navigation">
<ul class="wy-breadcrumbs">
<li><a href="index.html">Docs</a> &raquo;</li>
<li><a href="apache_beam.runners.html">apache_beam.runners package</a> &raquo;</li>
<li><a href="apache_beam.runners.interactive.html">apache_beam.runners.interactive package</a> &raquo;</li>
<li><a href="apache_beam.runners.interactive.sql.html">apache_beam.runners.interactive.sql package</a> &raquo;</li>
<li>apache_beam.runners.interactive.sql.sql_chain module</li>
<li class="wy-breadcrumbs-aside">
<a href="_sources/apache_beam.runners.interactive.sql.sql_chain.rst.txt" rel="nofollow"> View page source</a>
</li>
</ul>
<hr/>
</div>
<div role="main" class="document" itemscope="itemscope" itemtype="http://schema.org/Article">
<div itemprop="articleBody">
<div class="section" id="module-apache_beam.runners.interactive.sql.sql_chain">
<span id="apache-beam-runners-interactive-sql-sql-chain-module"></span><h1>apache_beam.runners.interactive.sql.sql_chain module<a class="headerlink" href="#module-apache_beam.runners.interactive.sql.sql_chain" title="Permalink to this headline"></a></h1>
<p>Module for tracking a chain of beam_sql magics applied.</p>
<p>For internal use only; no backwards-compatibility guarantees.</p>
<dl class="class">
<dt id="apache_beam.runners.interactive.sql.sql_chain.SqlNode">
<em class="property">class </em><code class="descclassname">apache_beam.runners.interactive.sql.sql_chain.</code><code class="descname">SqlNode</code><span class="sig-paren">(</span><em>output_name: str, source: Union[apache_beam.pipeline.Pipeline, Set[str]], query: str, schemas: Set[Any] = None, evaluated: Set[apache_beam.pipeline.Pipeline] = None, next: Optional[SqlNode] = None, execution_count: int = 0</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/runners/interactive/sql/sql_chain.html#SqlNode"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.runners.interactive.sql.sql_chain.SqlNode" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.10)"><code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></a></p>
<p>Each SqlNode represents a beam_sql magic applied.</p>
<dl class="attribute">
<dt id="apache_beam.runners.interactive.sql.sql_chain.SqlNode.output_name">
<code class="descname">output_name</code><a class="headerlink" href="#apache_beam.runners.interactive.sql.sql_chain.SqlNode.output_name" title="Permalink to this definition"></a></dt>
<dd><p>the watched unique name of the beam_sql output. Can be used as
an identifier.</p>
</dd></dl>
<dl class="attribute">
<dt id="apache_beam.runners.interactive.sql.sql_chain.SqlNode.source">
<code class="descname">source</code><a class="headerlink" href="#apache_beam.runners.interactive.sql.sql_chain.SqlNode.source" title="Permalink to this definition"></a></dt>
<dd><p>the inputs consumed by this node. Can be a pipeline or a set of
PCollections represented by their variable names watched. When it’s a
pipeline, the node computes from raw values in the query, so the output
can be consumed by any SqlNode in any SqlChain.</p>
</dd></dl>
<dl class="attribute">
<dt id="apache_beam.runners.interactive.sql.sql_chain.SqlNode.query">
<code class="descname">query</code><a class="headerlink" href="#apache_beam.runners.interactive.sql.sql_chain.SqlNode.query" title="Permalink to this definition"></a></dt>
<dd><p>the SQL query applied by this node.</p>
</dd></dl>
<dl class="attribute">
<dt id="apache_beam.runners.interactive.sql.sql_chain.SqlNode.schemas">
<code class="descname">schemas</code><a class="headerlink" href="#apache_beam.runners.interactive.sql.sql_chain.SqlNode.schemas" title="Permalink to this definition"></a></dt>
<dd><p>the schemas (NamedTuple classes) used by this node.</p>
</dd></dl>
<dl class="attribute">
<dt id="apache_beam.runners.interactive.sql.sql_chain.SqlNode.evaluated">
<code class="descname">evaluated</code><a class="headerlink" href="#apache_beam.runners.interactive.sql.sql_chain.SqlNode.evaluated" title="Permalink to this definition"></a></dt>
<dd><p>the pipelines this node has been evaluated for.</p>
</dd></dl>
<dl class="attribute">
<dt id="apache_beam.runners.interactive.sql.sql_chain.SqlNode.next">
<code class="descname">next</code><a class="headerlink" href="#apache_beam.runners.interactive.sql.sql_chain.SqlNode.next" title="Permalink to this definition"></a></dt>
<dd><p>the next SqlNode applied chronologically.</p>
</dd></dl>
<dl class="attribute">
<dt id="apache_beam.runners.interactive.sql.sql_chain.SqlNode.execution_count">
<code class="descname">execution_count</code><a class="headerlink" href="#apache_beam.runners.interactive.sql.sql_chain.SqlNode.execution_count" title="Permalink to this definition"></a></dt>
<dd><p>the execution count if in an IPython env.</p>
</dd></dl>
<dl class="attribute">
<dt>
<code class="descname">schemas</code><em class="property"> = None</em></dt>
<dd></dd></dl>
<dl class="attribute">
<dt>
<code class="descname">evaluated</code><em class="property"> = None</em></dt>
<dd></dd></dl>
<dl class="attribute">
<dt>
<code class="descname">next</code><em class="property"> = None</em></dt>
<dd></dd></dl>
<dl class="attribute">
<dt>
<code class="descname">execution_count</code><em class="property"> = 0</em></dt>
<dd></dd></dl>
<dl class="method">
<dt id="apache_beam.runners.interactive.sql.sql_chain.SqlNode.to_pipeline">
<code class="descname">to_pipeline</code><span class="sig-paren">(</span><em>pipeline: Optional[apache_beam.pipeline.Pipeline]</em><span class="sig-paren">)</span> &#x2192; apache_beam.pipeline.Pipeline<a class="reference internal" href="_modules/apache_beam/runners/interactive/sql/sql_chain.html#SqlNode.to_pipeline"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.runners.interactive.sql.sql_chain.SqlNode.to_pipeline" title="Permalink to this definition"></a></dt>
<dd><p>Converts the chain into an executable pipeline.</p>
</dd></dl>
</dd></dl>
<dl class="class">
<dt id="apache_beam.runners.interactive.sql.sql_chain.SchemaLoadedSqlTransform">
<em class="property">class </em><code class="descclassname">apache_beam.runners.interactive.sql.sql_chain.</code><code class="descname">SchemaLoadedSqlTransform</code><span class="sig-paren">(</span><em>output_name</em>, <em>query</em>, <em>schemas</em>, <em>execution_count</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/runners/interactive/sql/sql_chain.html#SchemaLoadedSqlTransform"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.runners.interactive.sql.sql_chain.SchemaLoadedSqlTransform" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <a class="reference internal" href="apache_beam.transforms.ptransform.html#apache_beam.transforms.ptransform.PTransform" title="apache_beam.transforms.ptransform.PTransform"><code class="xref py py-class docutils literal notranslate"><span class="pre">apache_beam.transforms.ptransform.PTransform</span></code></a></p>
<p>PTransform that loads schema before executing SQL.</p>
<p>When submitting a pipeline to remote runner for execution, schemas defined in
the main module are not available without save_main_session. However,
save_main_session might fail when there is anything unpicklable. This DoFn
makes sure only the schemas needed are pickled locally and restored later on
workers.</p>
<dl class="method">
<dt id="apache_beam.runners.interactive.sql.sql_chain.SchemaLoadedSqlTransform.expand">
<code class="descname">expand</code><span class="sig-paren">(</span><em>source</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/runners/interactive/sql/sql_chain.html#SchemaLoadedSqlTransform.expand"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.runners.interactive.sql.sql_chain.SchemaLoadedSqlTransform.expand" title="Permalink to this definition"></a></dt>
<dd><p>Applies the SQL transform. If a PCollection uses a schema defined in
the main session, use the additional DoFn to restore it on the worker.</p>
</dd></dl>
</dd></dl>
<dl class="class">
<dt id="apache_beam.runners.interactive.sql.sql_chain.SqlChain">
<em class="property">class </em><code class="descclassname">apache_beam.runners.interactive.sql.sql_chain.</code><code class="descname">SqlChain</code><span class="sig-paren">(</span><em>nodes: Dict[str</em>, <em>apache_beam.runners.interactive.sql.sql_chain.SqlNode] = None</em>, <em>root: Optional[apache_beam.runners.interactive.sql.sql_chain.SqlNode] = None</em>, <em>current: Optional[apache_beam.runners.interactive.sql.sql_chain.SqlNode] = None</em>, <em>user_pipeline: Optional[apache_beam.pipeline.Pipeline] = None</em><span class="sig-paren">)</span><a class="reference internal" href="_modules/apache_beam/runners/interactive/sql/sql_chain.html#SqlChain"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.runners.interactive.sql.sql_chain.SqlChain" title="Permalink to this definition"></a></dt>
<dd><p>Bases: <a class="reference external" href="https://docs.python.org/3/library/functions.html#object" title="(in Python v3.10)"><code class="xref py py-class docutils literal notranslate"><span class="pre">object</span></code></a></p>
<p>A chain of SqlNodes.</p>
<dl class="attribute">
<dt id="apache_beam.runners.interactive.sql.sql_chain.SqlChain.nodes">
<code class="descname">nodes</code><a class="headerlink" href="#apache_beam.runners.interactive.sql.sql_chain.SqlChain.nodes" title="Permalink to this definition"></a></dt>
<dd><p>all nodes by their output_names.</p>
</dd></dl>
<dl class="attribute">
<dt id="apache_beam.runners.interactive.sql.sql_chain.SqlChain.root">
<code class="descname">root</code><a class="headerlink" href="#apache_beam.runners.interactive.sql.sql_chain.SqlChain.root" title="Permalink to this definition"></a></dt>
<dd><p>the first SqlNode applied chronologically.</p>
</dd></dl>
<dl class="attribute">
<dt id="apache_beam.runners.interactive.sql.sql_chain.SqlChain.current">
<code class="descname">current</code><a class="headerlink" href="#apache_beam.runners.interactive.sql.sql_chain.SqlChain.current" title="Permalink to this definition"></a></dt>
<dd><p>the last node applied.</p>
</dd></dl>
<dl class="attribute">
<dt id="apache_beam.runners.interactive.sql.sql_chain.SqlChain.user_pipeline">
<code class="descname">user_pipeline</code><a class="headerlink" href="#apache_beam.runners.interactive.sql.sql_chain.SqlChain.user_pipeline" title="Permalink to this definition"></a></dt>
<dd><p>the user defined pipeline this chain originates from. If
None, the whole chain just computes from raw values in queries.
Otherwise, at least some of the nodes in chain has queried against
PCollections.</p>
</dd></dl>
<dl class="attribute">
<dt>
<code class="descname">nodes</code><em class="property"> = None</em></dt>
<dd></dd></dl>
<dl class="attribute">
<dt>
<code class="descname">root</code><em class="property"> = None</em></dt>
<dd></dd></dl>
<dl class="attribute">
<dt>
<code class="descname">current</code><em class="property"> = None</em></dt>
<dd></dd></dl>
<dl class="attribute">
<dt>
<code class="descname">user_pipeline</code><em class="property"> = None</em></dt>
<dd></dd></dl>
<dl class="method">
<dt id="apache_beam.runners.interactive.sql.sql_chain.SqlChain.to_pipeline">
<code class="descname">to_pipeline</code><span class="sig-paren">(</span><span class="sig-paren">)</span> &#x2192; apache_beam.pipeline.Pipeline<a class="reference internal" href="_modules/apache_beam/runners/interactive/sql/sql_chain.html#SqlChain.to_pipeline"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.runners.interactive.sql.sql_chain.SqlChain.to_pipeline" title="Permalink to this definition"></a></dt>
<dd><p>Converts the chain into a beam pipeline.</p>
</dd></dl>
<dl class="method">
<dt id="apache_beam.runners.interactive.sql.sql_chain.SqlChain.append">
<code class="descname">append</code><span class="sig-paren">(</span><em>node: apache_beam.runners.interactive.sql.sql_chain.SqlNode</em><span class="sig-paren">)</span> &#x2192; apache_beam.runners.interactive.sql.sql_chain.SqlChain<a class="reference internal" href="_modules/apache_beam/runners/interactive/sql/sql_chain.html#SqlChain.append"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.runners.interactive.sql.sql_chain.SqlChain.append" title="Permalink to this definition"></a></dt>
<dd><p>Appends a node to the chain.</p>
</dd></dl>
<dl class="method">
<dt id="apache_beam.runners.interactive.sql.sql_chain.SqlChain.get">
<code class="descname">get</code><span class="sig-paren">(</span><em>output_name: str</em><span class="sig-paren">)</span> &#x2192; Optional[apache_beam.runners.interactive.sql.sql_chain.SqlNode]<a class="reference internal" href="_modules/apache_beam/runners/interactive/sql/sql_chain.html#SqlChain.get"><span class="viewcode-link">[source]</span></a><a class="headerlink" href="#apache_beam.runners.interactive.sql.sql_chain.SqlChain.get" title="Permalink to this definition"></a></dt>
<dd><p>Gets a node from the chain based on the given output_name.</p>
</dd></dl>
</dd></dl>
</div>
</div>
</div>
<footer>
<div class="rst-footer-buttons" role="navigation" aria-label="footer navigation">
<a href="apache_beam.runners.interactive.sql.utils.html" class="btn btn-neutral float-right" title="apache_beam.runners.interactive.sql.utils module" accesskey="n" rel="next">Next <span class="fa fa-arrow-circle-right"></span></a>
<a href="apache_beam.runners.interactive.sql.beam_sql_magics.html" class="btn btn-neutral float-left" title="apache_beam.runners.interactive.sql.beam_sql_magics module" accesskey="p" rel="prev"><span class="fa fa-arrow-circle-left"></span> Previous</a>
</div>
<hr/>
<div role="contentinfo">
<p>
&copy; Copyright
</p>
</div>
Built with <a href="http://sphinx-doc.org/">Sphinx</a> using a <a href="https://github.com/rtfd/sphinx_rtd_theme">theme</a> provided by <a href="https://readthedocs.org">Read the Docs</a>.
</footer>
</div>
</div>
</section>
</div>
<script type="text/javascript">
jQuery(function () {
SphinxRtdTheme.Navigation.enable(true);
});
</script>
</body>
</html>